From 6a1187b44fbc6765d35873f66bfa9f59fdf3bb57 Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 14:37:43 +0200 Subject: [PATCH 1/7] wip: add bp512 crate --- bp512/CHANGELOG.md | 106 + bp512/Cargo.toml | 38 + bp512/LICENSE-APACHE | 201 + bp512/LICENSE-MIT | 25 + bp512/README.md | 46 + bp512/src/arithmetic.rs | 4 + bp512/src/arithmetic/field.rs | 127 + bp512/src/arithmetic/field/bp384_32.rs | 11502 ++++++++++ bp512/src/arithmetic/field/bp384_64.rs | 3724 +++ bp512/src/arithmetic/field/bp512_32.rs | 19162 ++++++++++++++++ bp512/src/arithmetic/field/bp512_64.rs | 5730 +++++ bp512/src/arithmetic/scalar.rs | 178 + .../src/arithmetic/scalar/bp384_scalar_32.rs | 11511 ++++++++++ .../src/arithmetic/scalar/bp384_scalar_64.rs | 3733 +++ bp512/src/lib.rs | 52 + bp512/src/r1.rs | 70 + bp512/src/r1/arithmetic.rs | 69 + bp512/src/r1/ecdsa.rs | 18 + bp512/src/t1.rs | 70 + bp512/src/t1/arithmetic.rs | 69 + bp512/src/t1/ecdsa.rs | 18 + 21 files changed, 56453 insertions(+) create mode 100644 bp512/CHANGELOG.md create mode 100644 bp512/Cargo.toml create mode 100644 bp512/LICENSE-APACHE create mode 100644 bp512/LICENSE-MIT create mode 100644 bp512/README.md create mode 100644 bp512/src/arithmetic.rs create mode 100644 bp512/src/arithmetic/field.rs create mode 100644 bp512/src/arithmetic/field/bp384_32.rs create mode 100644 bp512/src/arithmetic/field/bp384_64.rs create mode 100644 bp512/src/arithmetic/field/bp512_32.rs create mode 100644 bp512/src/arithmetic/field/bp512_64.rs create mode 100644 bp512/src/arithmetic/scalar.rs create mode 100644 bp512/src/arithmetic/scalar/bp384_scalar_32.rs create mode 100644 bp512/src/arithmetic/scalar/bp384_scalar_64.rs create mode 100644 bp512/src/lib.rs create mode 100644 bp512/src/r1.rs create mode 100644 bp512/src/r1/arithmetic.rs create mode 100644 bp512/src/r1/ecdsa.rs create mode 100644 bp512/src/t1.rs create mode 100644 bp512/src/t1/arithmetic.rs create mode 100644 bp512/src/t1/ecdsa.rs diff --git a/bp512/CHANGELOG.md b/bp512/CHANGELOG.md new file mode 100644 index 000000000..36d1b809e --- /dev/null +++ b/bp512/CHANGELOG.md @@ -0,0 +1,106 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## 0.7.0 (UNRELEASED) +### Changed +- `sqrt` implementation to Atkin algorithm ([#918]) + +### Added +- `elliptic_curve::ops::Invert` implementation ([#971]) + +## Changed +- Update to `ecdsa` v0.17 ([#1011]) +- Update to `rand_core` v0.9 ([#1125]) +- Update to `hybrid-array` v0.3 ([#1125]) +- Edition changed to 2024 and MSRV bumped to 1.85 ([#1125]) +- Relax MSRV policy and allow MSRV bumps in patch releases + +[#918]: https://github.com/RustCrypto/elliptic-curves/pull/918 +[#971]: https://github.com/RustCrypto/elliptic-curves/pull/971 +[#1011]: https://github.com/RustCrypto/elliptic-curves/pull/1011 +[#1125]: https://github.com/RustCrypto/elliptic-curves/pull/1125 + +## 0.6.1 (2023-04-16) +### Added +- WIP `arithmetic` implementation ([#869], [#872], [#873], [#875], [#877]) + +[#869]: https://github.com/RustCrypto/elliptic-curves/pull/869 +[#872]: https://github.com/RustCrypto/elliptic-curves/pull/872 +[#873]: https://github.com/RustCrypto/elliptic-curves/pull/873 +[#875]: https://github.com/RustCrypto/elliptic-curves/pull/875 +[#877]: https://github.com/RustCrypto/elliptic-curves/pull/877 + +## 0.6.0 (2023-03-02) +### Added +- `FieldBytesEncoding` trait impls ([#732]) + +### Changed +- Bump `elliptic-curve` dependency to v0.13 ([#770]) +- Bump `ecdsa` to v0.16 ([#770]) + +[#732]: https://github.com/RustCrypto/elliptic-curves/pull/732 +[#770]: https://github.com/RustCrypto/elliptic-curves/pull/770 + +## 0.5.0 (2023-01-15) +### Added +- `alloc` feature ([#670]) + +### Changed +- Use weak feature activation; MSRV 1.60 ([#701]) +- Bump `ecdsa` dependency to v0.15 ([#713]) + +[#670]: https://github.com/RustCrypto/elliptic-curves/pull/670 +[#701]: https://github.com/RustCrypto/elliptic-curves/pull/701 +[#713]: https://github.com/RustCrypto/elliptic-curves/pull/713 + +## 0.4.0 (2022-05-09) +### Changed +- Have `pkcs8` feature activate `ecdsa/pkcs8` ([#538]) +- Bump `elliptic-curve` to v0.12 ([#544]) +- Bump `ecdsa` to v0.14 ([#544]) + +[#538]: https://github.com/RustCrypto/elliptic-curves/pull/538 +[#544]: https://github.com/RustCrypto/elliptic-curves/pull/544 + +## 0.3.0 (2021-12-14) +### Added +- `serde` feature ([#463]) + +### Changed +- Rust 2021 edition upgrade; MSRV 1.56+ ([#453]) +- Bump `elliptic-curve` crate dependency to v0.11 ([#466]) +- Bump `ecdsa` crate dependency to v0.13 ([#467]) + +[#453]: https://github.com/RustCrypto/elliptic-curves/pull/453 +[#463]: https://github.com/RustCrypto/elliptic-curves/pull/463 +[#466]: https://github.com/RustCrypto/elliptic-curves/pull/466 +[#467]: https://github.com/RustCrypto/elliptic-curves/pull/467 + +## 0.2.0 (2021-06-08) +### Changed +- Bump `elliptic-curve` to v0.10; MSRV 1.51+ ([#349]) +- Bump `ecdsa` to v0.12 ([#349]) + +[#349]: https://github.com/RustCrypto/elliptic-curves/pull/349 + +## 0.1.0 (2021-04-29) +### Added +- `Order` constant ([#328]) + +### Changed +- Bump `ecdsa` crate dependency to v0.11 ([#330]) + +[#328]: https://github.com/RustCrypto/elliptic-curves/pull/328 +[#330]: https://github.com/RustCrypto/elliptic-curves/pull/330 + +## 0.0.2 (2021-03-22) +### Changed +- Bump `base64ct`, `ecdsa`, `elliptic-curve`, and `pkcs8`; MSRV 1.47+ ([#318]) + +[#318]: https://github.com/RustCrypto/elliptic-curves/pull/318 + +## 0.0.1 (2021-02-11) [YANKED] +- Initial release diff --git a/bp512/Cargo.toml b/bp512/Cargo.toml new file mode 100644 index 000000000..52dffaf69 --- /dev/null +++ b/bp512/Cargo.toml @@ -0,0 +1,38 @@ +[package] +name = "bp512" +version = "0.7.0-pre" +description = "Brainpool P-512 (brainpoolP512r1 and brainpoolP512t1) elliptic curves" +authors = ["RustCrypto Developers"] +license = "Apache-2.0 OR MIT" +documentation = "https://docs.rs/bp512" +homepage = "https://github.com/RustCrypto/elliptic-curves/tree/master/bp512" +repository = "https://github.com/RustCrypto/elliptic-curves" +readme = "README.md" +categories = ["cryptography", "no-std"] +keywords = ["brainpool", "crypto", "ecc"] +edition = "2024" +rust-version = "1.85" + +[dependencies] +elliptic-curve = { version = "0.14.0-rc.0", default-features = false, features = ["sec1"] } + +# optional dependencies +ecdsa = { version = "=0.17.0-pre.9", optional = true, default-features = false, features = ["der"] } +primefield = { version = "=0.14.0-pre.0", optional = true, path = "../primefield" } +primeorder = { version = "=0.14.0-pre.2", optional = true, path = "../primeorder" } +sha2 = { version = "=0.11.0-pre.5", optional = true, default-features = false } + +[features] +default = ["pkcs8", "std", "arithmetic"] +alloc = ["ecdsa?/alloc", "elliptic-curve/alloc", "primeorder?/alloc"] +std = ["alloc", "ecdsa?/std", "elliptic-curve/std"] + +pem = ["elliptic-curve/pem", "pkcs8"] +pkcs8 = ["ecdsa/pkcs8", "elliptic-curve/pkcs8"] +serde = ["ecdsa/serde", "elliptic-curve/serde"] +sha512 = ["ecdsa/digest", "ecdsa/hazmat", "sha2"] +arithmetic = ["dep:primefield", "dep:primeorder"] + +[package.metadata.docs.rs] +all-features = true +rustdoc-args = ["--cfg", "docsrs"] diff --git a/bp512/LICENSE-APACHE b/bp512/LICENSE-APACHE new file mode 100644 index 000000000..78173fa2e --- /dev/null +++ b/bp512/LICENSE-APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/bp512/LICENSE-MIT b/bp512/LICENSE-MIT new file mode 100644 index 000000000..e6259681b --- /dev/null +++ b/bp512/LICENSE-MIT @@ -0,0 +1,25 @@ +Copyright (c) 2021-2023 RustCrypto Developers + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/bp512/README.md b/bp512/README.md new file mode 100644 index 000000000..f820fe810 --- /dev/null +++ b/bp512/README.md @@ -0,0 +1,46 @@ +# [RustCrypto]: Brainpool P-384 elliptic curves + +[![crate][crate-image]][crate-link] +[![Docs][docs-image]][docs-link] +![Apache2/MIT licensed][license-image] +![Rust Version][rustc-image] +[![Project Chat][chat-image]][chat-link] +[![Build Status][build-image]][build-link] + +Brainpool P-384 (brainpoolP384r1 and brainpoolP384t1) elliptic curve types +implemented in terms of traits from the [`elliptic-curve`] crate. + +[Documentation][docs-link] + +## License + +All crates licensed under either of + + * [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0) + * [MIT license](http://opensource.org/licenses/MIT) + +at your option. + +### Contribution + +Unless you explicitly state otherwise, any contribution intentionally submitted +for inclusion in the work by you, as defined in the Apache-2.0 license, shall be +dual licensed as above, without any additional terms or conditions. + +[//]: # (badges) + +[crate-image]: https://img.shields.io/crates/v/bp384 +[crate-link]: https://crates.io/crates/bp384 +[docs-image]: https://docs.rs/bp384/badge.svg +[docs-link]: https://docs.rs/bp384/ +[license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg +[rustc-image]: https://img.shields.io/badge/rustc-1.85+-blue.svg +[chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg +[chat-link]: https://rustcrypto.zulipchat.com/#narrow/stream/260040-elliptic-curves +[build-image]: https://github.com/RustCrypto/elliptic-curves/workflows/bp384/badge.svg?branch=master&event=push +[build-link]: https://github.com/RustCrypto/elliptic-curves/actions?query=workflow:bp384 + +[//]: # (general links) + +[RustCrypto]: https://github.com/rustcrypto/ +[`elliptic-curve`]: https://github.com/RustCrypto/traits/tree/master/elliptic-curve diff --git a/bp512/src/arithmetic.rs b/bp512/src/arithmetic.rs new file mode 100644 index 000000000..779926656 --- /dev/null +++ b/bp512/src/arithmetic.rs @@ -0,0 +1,4 @@ +//! Field arithmetic for the brainpoolP256 elliptic curve. + +pub(crate) mod field; +pub(crate) mod scalar; diff --git a/bp512/src/arithmetic/field.rs b/bp512/src/arithmetic/field.rs new file mode 100644 index 000000000..2a47ccfb3 --- /dev/null +++ b/bp512/src/arithmetic/field.rs @@ -0,0 +1,127 @@ +//! Field arithmetic modulo p = 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53 +//! +//! Arithmetic implementations have been synthesized using fiat-crypto. +//! +//! # License +//! +//! Copyright (c) 2015-2020 the fiat-crypto authors +//! +//! fiat-crypto is distributed under the terms of the MIT License, the +//! Apache License (Version 2.0), and the BSD 1-Clause License; +//! users may pick which license to apply. + +#[cfg_attr(target_pointer_width = "32", path = "field/bp384_32.rs")] +#[cfg_attr(target_pointer_width = "64", path = "field/bp384_64.rs")] +mod field_impl; + +use self::field_impl::*; +use crate::{FieldBytes, U512}; +use elliptic_curve::{ + ff::PrimeField, + subtle::{Choice, ConstantTimeEq, CtOption}, +}; + +/// Constant representing the modulus serialized as hex. +const MODULUS_HEX: &str = "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3"; + +const MODULUS: U512 = U512::from_be_hex(MODULUS_HEX); + +/// Element of the brainpoolP384's base field used for curve point coordinates. +#[derive(Clone, Copy)] +pub struct FieldElement(pub(super) U512); + +primefield::field_element_type!( + FieldElement, + FieldBytes, + U512, + MODULUS, + crate::decode_field_bytes, + crate::encode_field_bytes +); + +primefield::fiat_field_arithmetic!( + FieldElement, + FieldBytes, + U512, + fiat_bp384_non_montgomery_domain_field_element, + fiat_bp384_montgomery_domain_field_element, + fiat_bp384_from_montgomery, + fiat_bp384_to_montgomery, + fiat_bp384_add, + fiat_bp384_sub, + fiat_bp384_mul, + fiat_bp384_opp, + fiat_bp384_square, + fiat_bp384_divstep_precomp, + fiat_bp384_divstep, + fiat_bp384_msat, + fiat_bp384_selectznz +); + +impl FieldElement { + /// Returns the square root of self mod p, or `None` if no square root + /// exists. + pub fn sqrt(&self) -> CtOption { + // Because p ≡ 3 mod 4 for brainpoolP384's base field modulus, sqrt can + // be implemented with only one exponentiation via the computation of + // self^((p + 1) // 4) (mod p). + let sqrt = self.pow_vartime(&[ + 0x61d1c004cc41fb15, + 0xeb34e9ca6407469c, + 0x04ac76865fedc448, + 0xc54bdc427b5515ad, + 0x03d75bdf94399077, + 0x232e47a0a8ce1b4a, + ]); + CtOption::new(sqrt, sqrt.square().ct_eq(self)) + } +} + +impl PrimeField for FieldElement { + type Repr = FieldBytes; + + const MODULUS: &'static str = MODULUS_HEX; + const NUM_BITS: u32 = 384; + const CAPACITY: u32 = 383; + const TWO_INV: Self = Self::from_u64(2).invert_unchecked(); + const MULTIPLICATIVE_GENERATOR: Self = Self::from_u64(3); + const S: u32 = 1; + const ROOT_OF_UNITY: Self = Self::from_hex( + "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3", + ); + const ROOT_OF_UNITY_INV: Self = Self::ROOT_OF_UNITY.invert_unchecked(); + const DELTA: Self = Self::from_u64(9); + + #[inline] + fn from_repr(bytes: FieldBytes) -> CtOption { + Self::from_bytes(&bytes) + } + + #[inline] + fn to_repr(&self) -> FieldBytes { + self.to_bytes() + } + + #[inline] + fn is_odd(&self) -> Choice { + self.is_odd() + } +} + +#[cfg(test)] +mod tests { + use super::FieldElement; + + /// t = (modulus - 1) >> S + /// 0x465c8f41519c369407aeb7bf287320ef8a97b884f6aa2b5a0958ed0cbfdb8891d669d394c80e8d38c3a380099883f629 + const T: [u64; 6] = [ + 0xc3a380099883f629, + 0xd669d394c80e8d38, + 0x958ed0cbfdb8891, + 0x8a97b884f6aa2b5a, + 0x7aeb7bf287320ef, + 0x465c8f41519c3694, + ]; + + primefield::test_primefield!(FieldElement, T); +} diff --git a/bp512/src/arithmetic/field/bp384_32.rs b/bp512/src/arithmetic/field/bp384_32.rs new file mode 100644 index 000000000..195a58d7e --- /dev/null +++ b/bp512/src/arithmetic/field/bp384_32.rs @@ -0,0 +1,11502 @@ +//! fiat-crypto output postprocessed by fiat-constify: +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp384 32 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp384 +//! machine_wordsize = 32 (from "32") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53 (from "0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) in +//! if x1 & (2^384-1) < 2^383 then x1 & (2^384-1) else (x1 & (2^384-1)) - 2^384 +#![allow(unused_parens)] +#![allow(non_camel_case_types)] +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp384_u1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_u1 = u8; +/// fiat_bp384_i1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_i1 = i8; +/// fiat_bp384_u2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_u2 = u8; +/// fiat_bp384_i2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_i2 = i8; +/// The type fiat_bp384_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_montgomery_domain_field_element(pub [u32; 12]); +impl core::ops::Index for fiat_bp384_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The type fiat_bp384_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_non_montgomery_domain_field_element(pub [u32; 12]); +impl core::ops::Index for fiat_bp384_non_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The function fiat_bp384_addcarryx_u32 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^32 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_addcarryx_u32( + out1: &mut u32, + out2: &mut fiat_bp384_u1, + arg1: fiat_bp384_u1, + arg2: u32, + arg3: u32, +) { + let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: fiat_bp384_u1 = ((x1 >> 32) as fiat_bp384_u1); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_subborrowx_u32 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^32 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_subborrowx_u32( + out1: &mut u32, + out2: &mut fiat_bp384_u1, + arg1: fiat_bp384_u1, + arg2: u32, + arg3: u32, +) { + let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); + let x2: fiat_bp384_i1 = ((x1 >> 32) as fiat_bp384_i1); + let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); + *out1 = x3; + *out2 = (((0x0 as fiat_bp384_i2) - (x2 as fiat_bp384_i2)) as fiat_bp384_u1); +} +/// The function fiat_bp384_mulx_u32 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^32 +/// out2 = ⌊arg1 * arg2 / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { + let x1: u64 = ((arg1 as u64) * (arg2 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: u32 = ((x1 >> 32) as u32); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_cmovznz_u32 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_cmovznz_u32(out1: &mut u32, arg1: fiat_bp384_u1, arg2: u32, arg3: u32) { + let x1: fiat_bp384_u1 = (!(!arg1)); + let x2: u32 = ((((((0x0 as fiat_bp384_i2) - (x1 as fiat_bp384_i2)) as fiat_bp384_i1) as i64) + & (0xffffffff as i64)) as u32); + let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} +/// The function fiat_bp384_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_mul( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_mulx_u32(&mut x13, &mut x14, x12, (arg2[11])); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_mulx_u32(&mut x15, &mut x16, x12, (arg2[10])); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_mulx_u32(&mut x17, &mut x18, x12, (arg2[9])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_mulx_u32(&mut x19, &mut x20, x12, (arg2[8])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_mulx_u32(&mut x21, &mut x22, x12, (arg2[7])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_mulx_u32(&mut x23, &mut x24, x12, (arg2[6])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_mulx_u32(&mut x25, &mut x26, x12, (arg2[5])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_mulx_u32(&mut x27, &mut x28, x12, (arg2[4])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_mulx_u32(&mut x29, &mut x30, x12, (arg2[3])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_mulx_u32(&mut x31, &mut x32, x12, (arg2[2])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_mulx_u32(&mut x33, &mut x34, x12, (arg2[1])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_mulx_u32(&mut x35, &mut x36, x12, (arg2[0])); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let x59: u32 = ((x58 as u32) + x14); + let mut x60: u32 = 0; + let mut x61: u32 = 0; + fiat_bp384_mulx_u32(&mut x60, &mut x61, x35, 0xea9ec825); + let mut x62: u32 = 0; + let mut x63: u32 = 0; + fiat_bp384_mulx_u32(&mut x62, &mut x63, x60, 0x8cb91e82); + let mut x64: u32 = 0; + let mut x65: u32 = 0; + fiat_bp384_mulx_u32(&mut x64, &mut x65, x60, 0xa3386d28); + let mut x66: u32 = 0; + let mut x67: u32 = 0; + fiat_bp384_mulx_u32(&mut x66, &mut x67, x60, 0xf5d6f7e); + let mut x68: u32 = 0; + let mut x69: u32 = 0; + fiat_bp384_mulx_u32(&mut x68, &mut x69, x60, 0x50e641df); + let mut x70: u32 = 0; + let mut x71: u32 = 0; + fiat_bp384_mulx_u32(&mut x70, &mut x71, x60, 0x152f7109); + let mut x72: u32 = 0; + let mut x73: u32 = 0; + fiat_bp384_mulx_u32(&mut x72, &mut x73, x60, 0xed5456b4); + let mut x74: u32 = 0; + let mut x75: u32 = 0; + fiat_bp384_mulx_u32(&mut x74, &mut x75, x60, 0x12b1da19); + let mut x76: u32 = 0; + let mut x77: u32 = 0; + fiat_bp384_mulx_u32(&mut x76, &mut x77, x60, 0x7fb71123); + let mut x78: u32 = 0; + let mut x79: u32 = 0; + fiat_bp384_mulx_u32(&mut x78, &mut x79, x60, 0xacd3a729); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp384_mulx_u32(&mut x80, &mut x81, x60, 0x901d1a71); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp384_mulx_u32(&mut x82, &mut x83, x60, 0x87470013); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp384_mulx_u32(&mut x84, &mut x85, x60, 0x3107ec53); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x86, &mut x87, 0x0, x85, x82); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x88, &mut x89, x87, x83, x80); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x90, &mut x91, x89, x81, x78); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x92, &mut x93, x91, x79, x76); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x94, &mut x95, x93, x77, x74); + let mut x96: u32 = 0; + let mut x97: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x96, &mut x97, x95, x75, x72); + let mut x98: u32 = 0; + let mut x99: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x98, &mut x99, x97, x73, x70); + let mut x100: u32 = 0; + let mut x101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x100, &mut x101, x99, x71, x68); + let mut x102: u32 = 0; + let mut x103: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x102, &mut x103, x101, x69, x66); + let mut x104: u32 = 0; + let mut x105: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x104, &mut x105, x103, x67, x64); + let mut x106: u32 = 0; + let mut x107: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x106, &mut x107, x105, x65, x62); + let x108: u32 = ((x107 as u32) + x63); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x109, &mut x110, 0x0, x35, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x111, &mut x112, x110, x37, x86); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x113, &mut x114, x112, x39, x88); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x115, &mut x116, x114, x41, x90); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x117, &mut x118, x116, x43, x92); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x119, &mut x120, x118, x45, x94); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x121, &mut x122, x120, x47, x96); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x123, &mut x124, x122, x49, x98); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x125, &mut x126, x124, x51, x100); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x127, &mut x128, x126, x53, x102); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x129, &mut x130, x128, x55, x104); + let mut x131: u32 = 0; + let mut x132: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x131, &mut x132, x130, x57, x106); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x133, &mut x134, x132, x59, x108); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_mulx_u32(&mut x135, &mut x136, x1, (arg2[11])); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_mulx_u32(&mut x137, &mut x138, x1, (arg2[10])); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_mulx_u32(&mut x139, &mut x140, x1, (arg2[9])); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_mulx_u32(&mut x141, &mut x142, x1, (arg2[8])); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_mulx_u32(&mut x143, &mut x144, x1, (arg2[7])); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_mulx_u32(&mut x145, &mut x146, x1, (arg2[6])); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_mulx_u32(&mut x147, &mut x148, x1, (arg2[5])); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_mulx_u32(&mut x149, &mut x150, x1, (arg2[4])); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_mulx_u32(&mut x151, &mut x152, x1, (arg2[3])); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_mulx_u32(&mut x153, &mut x154, x1, (arg2[2])); + let mut x155: u32 = 0; + let mut x156: u32 = 0; + fiat_bp384_mulx_u32(&mut x155, &mut x156, x1, (arg2[1])); + let mut x157: u32 = 0; + let mut x158: u32 = 0; + fiat_bp384_mulx_u32(&mut x157, &mut x158, x1, (arg2[0])); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x159, &mut x160, 0x0, x158, x155); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x161, &mut x162, x160, x156, x153); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x163, &mut x164, x162, x154, x151); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x165, &mut x166, x164, x152, x149); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x167, &mut x168, x166, x150, x147); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x169, &mut x170, x168, x148, x145); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x171, &mut x172, x170, x146, x143); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x173, &mut x174, x172, x144, x141); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x175, &mut x176, x174, x142, x139); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x177, &mut x178, x176, x140, x137); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x179, &mut x180, x178, x138, x135); + let x181: u32 = ((x180 as u32) + x136); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x182, &mut x183, 0x0, x111, x157); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x184, &mut x185, x183, x113, x159); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x186, &mut x187, x185, x115, x161); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x188, &mut x189, x187, x117, x163); + let mut x190: u32 = 0; + let mut x191: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x190, &mut x191, x189, x119, x165); + let mut x192: u32 = 0; + let mut x193: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x192, &mut x193, x191, x121, x167); + let mut x194: u32 = 0; + let mut x195: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x194, &mut x195, x193, x123, x169); + let mut x196: u32 = 0; + let mut x197: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x196, &mut x197, x195, x125, x171); + let mut x198: u32 = 0; + let mut x199: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x198, &mut x199, x197, x127, x173); + let mut x200: u32 = 0; + let mut x201: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x200, &mut x201, x199, x129, x175); + let mut x202: u32 = 0; + let mut x203: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x202, &mut x203, x201, x131, x177); + let mut x204: u32 = 0; + let mut x205: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x204, &mut x205, x203, x133, x179); + let mut x206: u32 = 0; + let mut x207: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x206, &mut x207, x205, (x134 as u32), x181); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_mulx_u32(&mut x208, &mut x209, x182, 0xea9ec825); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_mulx_u32(&mut x210, &mut x211, x208, 0x8cb91e82); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_mulx_u32(&mut x212, &mut x213, x208, 0xa3386d28); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_mulx_u32(&mut x214, &mut x215, x208, 0xf5d6f7e); + let mut x216: u32 = 0; + let mut x217: u32 = 0; + fiat_bp384_mulx_u32(&mut x216, &mut x217, x208, 0x50e641df); + let mut x218: u32 = 0; + let mut x219: u32 = 0; + fiat_bp384_mulx_u32(&mut x218, &mut x219, x208, 0x152f7109); + let mut x220: u32 = 0; + let mut x221: u32 = 0; + fiat_bp384_mulx_u32(&mut x220, &mut x221, x208, 0xed5456b4); + let mut x222: u32 = 0; + let mut x223: u32 = 0; + fiat_bp384_mulx_u32(&mut x222, &mut x223, x208, 0x12b1da19); + let mut x224: u32 = 0; + let mut x225: u32 = 0; + fiat_bp384_mulx_u32(&mut x224, &mut x225, x208, 0x7fb71123); + let mut x226: u32 = 0; + let mut x227: u32 = 0; + fiat_bp384_mulx_u32(&mut x226, &mut x227, x208, 0xacd3a729); + let mut x228: u32 = 0; + let mut x229: u32 = 0; + fiat_bp384_mulx_u32(&mut x228, &mut x229, x208, 0x901d1a71); + let mut x230: u32 = 0; + let mut x231: u32 = 0; + fiat_bp384_mulx_u32(&mut x230, &mut x231, x208, 0x87470013); + let mut x232: u32 = 0; + let mut x233: u32 = 0; + fiat_bp384_mulx_u32(&mut x232, &mut x233, x208, 0x3107ec53); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x234, &mut x235, 0x0, x233, x230); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x236, &mut x237, x235, x231, x228); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x238, &mut x239, x237, x229, x226); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x240, &mut x241, x239, x227, x224); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x242, &mut x243, x241, x225, x222); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x244, &mut x245, x243, x223, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x246, &mut x247, x245, x221, x218); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x248, &mut x249, x247, x219, x216); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x250, &mut x251, x249, x217, x214); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x252, &mut x253, x251, x215, x212); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x254, &mut x255, x253, x213, x210); + let x256: u32 = ((x255 as u32) + x211); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x257, &mut x258, 0x0, x182, x232); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x259, &mut x260, x258, x184, x234); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x261, &mut x262, x260, x186, x236); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x263, &mut x264, x262, x188, x238); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x265, &mut x266, x264, x190, x240); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x267, &mut x268, x266, x192, x242); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x269, &mut x270, x268, x194, x244); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x271, &mut x272, x270, x196, x246); + let mut x273: u32 = 0; + let mut x274: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x273, &mut x274, x272, x198, x248); + let mut x275: u32 = 0; + let mut x276: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x275, &mut x276, x274, x200, x250); + let mut x277: u32 = 0; + let mut x278: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x277, &mut x278, x276, x202, x252); + let mut x279: u32 = 0; + let mut x280: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x279, &mut x280, x278, x204, x254); + let mut x281: u32 = 0; + let mut x282: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x281, &mut x282, x280, x206, x256); + let x283: u32 = ((x282 as u32) + (x207 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_mulx_u32(&mut x284, &mut x285, x2, (arg2[11])); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_mulx_u32(&mut x286, &mut x287, x2, (arg2[10])); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_mulx_u32(&mut x288, &mut x289, x2, (arg2[9])); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_mulx_u32(&mut x290, &mut x291, x2, (arg2[8])); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_mulx_u32(&mut x292, &mut x293, x2, (arg2[7])); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_mulx_u32(&mut x294, &mut x295, x2, (arg2[6])); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_mulx_u32(&mut x296, &mut x297, x2, (arg2[5])); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_mulx_u32(&mut x298, &mut x299, x2, (arg2[4])); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_mulx_u32(&mut x300, &mut x301, x2, (arg2[3])); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_mulx_u32(&mut x302, &mut x303, x2, (arg2[2])); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_mulx_u32(&mut x304, &mut x305, x2, (arg2[1])); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_mulx_u32(&mut x306, &mut x307, x2, (arg2[0])); + let mut x308: u32 = 0; + let mut x309: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x308, &mut x309, 0x0, x307, x304); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x310, &mut x311, x309, x305, x302); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x312, &mut x313, x311, x303, x300); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x314, &mut x315, x313, x301, x298); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x316, &mut x317, x315, x299, x296); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x318, &mut x319, x317, x297, x294); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x320, &mut x321, x319, x295, x292); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x322, &mut x323, x321, x293, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x324, &mut x325, x323, x291, x288); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x326, &mut x327, x325, x289, x286); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x328, &mut x329, x327, x287, x284); + let x330: u32 = ((x329 as u32) + x285); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x331, &mut x332, 0x0, x259, x306); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x333, &mut x334, x332, x261, x308); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x335, &mut x336, x334, x263, x310); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x337, &mut x338, x336, x265, x312); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x339, &mut x340, x338, x267, x314); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x341, &mut x342, x340, x269, x316); + let mut x343: u32 = 0; + let mut x344: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x343, &mut x344, x342, x271, x318); + let mut x345: u32 = 0; + let mut x346: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x345, &mut x346, x344, x273, x320); + let mut x347: u32 = 0; + let mut x348: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x347, &mut x348, x346, x275, x322); + let mut x349: u32 = 0; + let mut x350: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x349, &mut x350, x348, x277, x324); + let mut x351: u32 = 0; + let mut x352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x351, &mut x352, x350, x279, x326); + let mut x353: u32 = 0; + let mut x354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x353, &mut x354, x352, x281, x328); + let mut x355: u32 = 0; + let mut x356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x355, &mut x356, x354, x283, x330); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_mulx_u32(&mut x357, &mut x358, x331, 0xea9ec825); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_mulx_u32(&mut x359, &mut x360, x357, 0x8cb91e82); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_mulx_u32(&mut x361, &mut x362, x357, 0xa3386d28); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_mulx_u32(&mut x363, &mut x364, x357, 0xf5d6f7e); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_mulx_u32(&mut x365, &mut x366, x357, 0x50e641df); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_mulx_u32(&mut x367, &mut x368, x357, 0x152f7109); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp384_mulx_u32(&mut x369, &mut x370, x357, 0xed5456b4); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp384_mulx_u32(&mut x371, &mut x372, x357, 0x12b1da19); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp384_mulx_u32(&mut x373, &mut x374, x357, 0x7fb71123); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp384_mulx_u32(&mut x375, &mut x376, x357, 0xacd3a729); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp384_mulx_u32(&mut x377, &mut x378, x357, 0x901d1a71); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp384_mulx_u32(&mut x379, &mut x380, x357, 0x87470013); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp384_mulx_u32(&mut x381, &mut x382, x357, 0x3107ec53); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x383, &mut x384, 0x0, x382, x379); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x385, &mut x386, x384, x380, x377); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x387, &mut x388, x386, x378, x375); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x389, &mut x390, x388, x376, x373); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x391, &mut x392, x390, x374, x371); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x393, &mut x394, x392, x372, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x395, &mut x396, x394, x370, x367); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x397, &mut x398, x396, x368, x365); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x399, &mut x400, x398, x366, x363); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x401, &mut x402, x400, x364, x361); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x403, &mut x404, x402, x362, x359); + let x405: u32 = ((x404 as u32) + x360); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x406, &mut x407, 0x0, x331, x381); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x408, &mut x409, x407, x333, x383); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x410, &mut x411, x409, x335, x385); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x412, &mut x413, x411, x337, x387); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x414, &mut x415, x413, x339, x389); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x416, &mut x417, x415, x341, x391); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x418, &mut x419, x417, x343, x393); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x420, &mut x421, x419, x345, x395); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x422, &mut x423, x421, x347, x397); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x424, &mut x425, x423, x349, x399); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x426, &mut x427, x425, x351, x401); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x428, &mut x429, x427, x353, x403); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x430, &mut x431, x429, x355, x405); + let x432: u32 = ((x431 as u32) + (x356 as u32)); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_mulx_u32(&mut x433, &mut x434, x3, (arg2[11])); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_mulx_u32(&mut x435, &mut x436, x3, (arg2[10])); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_mulx_u32(&mut x437, &mut x438, x3, (arg2[9])); + let mut x439: u32 = 0; + let mut x440: u32 = 0; + fiat_bp384_mulx_u32(&mut x439, &mut x440, x3, (arg2[8])); + let mut x441: u32 = 0; + let mut x442: u32 = 0; + fiat_bp384_mulx_u32(&mut x441, &mut x442, x3, (arg2[7])); + let mut x443: u32 = 0; + let mut x444: u32 = 0; + fiat_bp384_mulx_u32(&mut x443, &mut x444, x3, (arg2[6])); + let mut x445: u32 = 0; + let mut x446: u32 = 0; + fiat_bp384_mulx_u32(&mut x445, &mut x446, x3, (arg2[5])); + let mut x447: u32 = 0; + let mut x448: u32 = 0; + fiat_bp384_mulx_u32(&mut x447, &mut x448, x3, (arg2[4])); + let mut x449: u32 = 0; + let mut x450: u32 = 0; + fiat_bp384_mulx_u32(&mut x449, &mut x450, x3, (arg2[3])); + let mut x451: u32 = 0; + let mut x452: u32 = 0; + fiat_bp384_mulx_u32(&mut x451, &mut x452, x3, (arg2[2])); + let mut x453: u32 = 0; + let mut x454: u32 = 0; + fiat_bp384_mulx_u32(&mut x453, &mut x454, x3, (arg2[1])); + let mut x455: u32 = 0; + let mut x456: u32 = 0; + fiat_bp384_mulx_u32(&mut x455, &mut x456, x3, (arg2[0])); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x457, &mut x458, 0x0, x456, x453); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x459, &mut x460, x458, x454, x451); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x461, &mut x462, x460, x452, x449); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x463, &mut x464, x462, x450, x447); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x465, &mut x466, x464, x448, x445); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x467, &mut x468, x466, x446, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x469, &mut x470, x468, x444, x441); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x471, &mut x472, x470, x442, x439); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x473, &mut x474, x472, x440, x437); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x475, &mut x476, x474, x438, x435); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x477, &mut x478, x476, x436, x433); + let x479: u32 = ((x478 as u32) + x434); + let mut x480: u32 = 0; + let mut x481: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x480, &mut x481, 0x0, x408, x455); + let mut x482: u32 = 0; + let mut x483: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x482, &mut x483, x481, x410, x457); + let mut x484: u32 = 0; + let mut x485: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x484, &mut x485, x483, x412, x459); + let mut x486: u32 = 0; + let mut x487: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x486, &mut x487, x485, x414, x461); + let mut x488: u32 = 0; + let mut x489: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x488, &mut x489, x487, x416, x463); + let mut x490: u32 = 0; + let mut x491: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x490, &mut x491, x489, x418, x465); + let mut x492: u32 = 0; + let mut x493: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x492, &mut x493, x491, x420, x467); + let mut x494: u32 = 0; + let mut x495: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x494, &mut x495, x493, x422, x469); + let mut x496: u32 = 0; + let mut x497: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x496, &mut x497, x495, x424, x471); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x498, &mut x499, x497, x426, x473); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x500, &mut x501, x499, x428, x475); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x502, &mut x503, x501, x430, x477); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x504, &mut x505, x503, x432, x479); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp384_mulx_u32(&mut x506, &mut x507, x480, 0xea9ec825); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp384_mulx_u32(&mut x508, &mut x509, x506, 0x8cb91e82); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp384_mulx_u32(&mut x510, &mut x511, x506, 0xa3386d28); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp384_mulx_u32(&mut x512, &mut x513, x506, 0xf5d6f7e); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp384_mulx_u32(&mut x514, &mut x515, x506, 0x50e641df); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp384_mulx_u32(&mut x516, &mut x517, x506, 0x152f7109); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp384_mulx_u32(&mut x518, &mut x519, x506, 0xed5456b4); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp384_mulx_u32(&mut x520, &mut x521, x506, 0x12b1da19); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp384_mulx_u32(&mut x522, &mut x523, x506, 0x7fb71123); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp384_mulx_u32(&mut x524, &mut x525, x506, 0xacd3a729); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp384_mulx_u32(&mut x526, &mut x527, x506, 0x901d1a71); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp384_mulx_u32(&mut x528, &mut x529, x506, 0x87470013); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp384_mulx_u32(&mut x530, &mut x531, x506, 0x3107ec53); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x532, &mut x533, 0x0, x531, x528); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x534, &mut x535, x533, x529, x526); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x536, &mut x537, x535, x527, x524); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x538, &mut x539, x537, x525, x522); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x540, &mut x541, x539, x523, x520); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x542, &mut x543, x541, x521, x518); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x544, &mut x545, x543, x519, x516); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x546, &mut x547, x545, x517, x514); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x548, &mut x549, x547, x515, x512); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x550, &mut x551, x549, x513, x510); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x552, &mut x553, x551, x511, x508); + let x554: u32 = ((x553 as u32) + x509); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x555, &mut x556, 0x0, x480, x530); + let mut x557: u32 = 0; + let mut x558: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x557, &mut x558, x556, x482, x532); + let mut x559: u32 = 0; + let mut x560: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x559, &mut x560, x558, x484, x534); + let mut x561: u32 = 0; + let mut x562: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x561, &mut x562, x560, x486, x536); + let mut x563: u32 = 0; + let mut x564: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x563, &mut x564, x562, x488, x538); + let mut x565: u32 = 0; + let mut x566: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x565, &mut x566, x564, x490, x540); + let mut x567: u32 = 0; + let mut x568: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x567, &mut x568, x566, x492, x542); + let mut x569: u32 = 0; + let mut x570: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x569, &mut x570, x568, x494, x544); + let mut x571: u32 = 0; + let mut x572: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x571, &mut x572, x570, x496, x546); + let mut x573: u32 = 0; + let mut x574: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x573, &mut x574, x572, x498, x548); + let mut x575: u32 = 0; + let mut x576: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x575, &mut x576, x574, x500, x550); + let mut x577: u32 = 0; + let mut x578: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x577, &mut x578, x576, x502, x552); + let mut x579: u32 = 0; + let mut x580: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x579, &mut x580, x578, x504, x554); + let x581: u32 = ((x580 as u32) + (x505 as u32)); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_mulx_u32(&mut x582, &mut x583, x4, (arg2[11])); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_mulx_u32(&mut x584, &mut x585, x4, (arg2[10])); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_mulx_u32(&mut x586, &mut x587, x4, (arg2[9])); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_mulx_u32(&mut x588, &mut x589, x4, (arg2[8])); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_mulx_u32(&mut x590, &mut x591, x4, (arg2[7])); + let mut x592: u32 = 0; + let mut x593: u32 = 0; + fiat_bp384_mulx_u32(&mut x592, &mut x593, x4, (arg2[6])); + let mut x594: u32 = 0; + let mut x595: u32 = 0; + fiat_bp384_mulx_u32(&mut x594, &mut x595, x4, (arg2[5])); + let mut x596: u32 = 0; + let mut x597: u32 = 0; + fiat_bp384_mulx_u32(&mut x596, &mut x597, x4, (arg2[4])); + let mut x598: u32 = 0; + let mut x599: u32 = 0; + fiat_bp384_mulx_u32(&mut x598, &mut x599, x4, (arg2[3])); + let mut x600: u32 = 0; + let mut x601: u32 = 0; + fiat_bp384_mulx_u32(&mut x600, &mut x601, x4, (arg2[2])); + let mut x602: u32 = 0; + let mut x603: u32 = 0; + fiat_bp384_mulx_u32(&mut x602, &mut x603, x4, (arg2[1])); + let mut x604: u32 = 0; + let mut x605: u32 = 0; + fiat_bp384_mulx_u32(&mut x604, &mut x605, x4, (arg2[0])); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x606, &mut x607, 0x0, x605, x602); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x608, &mut x609, x607, x603, x600); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x610, &mut x611, x609, x601, x598); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x612, &mut x613, x611, x599, x596); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x614, &mut x615, x613, x597, x594); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x616, &mut x617, x615, x595, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x618, &mut x619, x617, x593, x590); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x620, &mut x621, x619, x591, x588); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x622, &mut x623, x621, x589, x586); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x624, &mut x625, x623, x587, x584); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x626, &mut x627, x625, x585, x582); + let x628: u32 = ((x627 as u32) + x583); + let mut x629: u32 = 0; + let mut x630: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x629, &mut x630, 0x0, x557, x604); + let mut x631: u32 = 0; + let mut x632: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x631, &mut x632, x630, x559, x606); + let mut x633: u32 = 0; + let mut x634: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x633, &mut x634, x632, x561, x608); + let mut x635: u32 = 0; + let mut x636: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x635, &mut x636, x634, x563, x610); + let mut x637: u32 = 0; + let mut x638: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x637, &mut x638, x636, x565, x612); + let mut x639: u32 = 0; + let mut x640: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x639, &mut x640, x638, x567, x614); + let mut x641: u32 = 0; + let mut x642: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x641, &mut x642, x640, x569, x616); + let mut x643: u32 = 0; + let mut x644: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x643, &mut x644, x642, x571, x618); + let mut x645: u32 = 0; + let mut x646: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x645, &mut x646, x644, x573, x620); + let mut x647: u32 = 0; + let mut x648: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x647, &mut x648, x646, x575, x622); + let mut x649: u32 = 0; + let mut x650: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x649, &mut x650, x648, x577, x624); + let mut x651: u32 = 0; + let mut x652: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x651, &mut x652, x650, x579, x626); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x653, &mut x654, x652, x581, x628); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp384_mulx_u32(&mut x655, &mut x656, x629, 0xea9ec825); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp384_mulx_u32(&mut x657, &mut x658, x655, 0x8cb91e82); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp384_mulx_u32(&mut x659, &mut x660, x655, 0xa3386d28); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp384_mulx_u32(&mut x661, &mut x662, x655, 0xf5d6f7e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp384_mulx_u32(&mut x663, &mut x664, x655, 0x50e641df); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp384_mulx_u32(&mut x665, &mut x666, x655, 0x152f7109); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp384_mulx_u32(&mut x667, &mut x668, x655, 0xed5456b4); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp384_mulx_u32(&mut x669, &mut x670, x655, 0x12b1da19); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp384_mulx_u32(&mut x671, &mut x672, x655, 0x7fb71123); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp384_mulx_u32(&mut x673, &mut x674, x655, 0xacd3a729); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp384_mulx_u32(&mut x675, &mut x676, x655, 0x901d1a71); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp384_mulx_u32(&mut x677, &mut x678, x655, 0x87470013); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp384_mulx_u32(&mut x679, &mut x680, x655, 0x3107ec53); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x681, &mut x682, 0x0, x680, x677); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x683, &mut x684, x682, x678, x675); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x685, &mut x686, x684, x676, x673); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x687, &mut x688, x686, x674, x671); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x689, &mut x690, x688, x672, x669); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x691, &mut x692, x690, x670, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x693, &mut x694, x692, x668, x665); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x695, &mut x696, x694, x666, x663); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x697, &mut x698, x696, x664, x661); + let mut x699: u32 = 0; + let mut x700: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x699, &mut x700, x698, x662, x659); + let mut x701: u32 = 0; + let mut x702: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x701, &mut x702, x700, x660, x657); + let x703: u32 = ((x702 as u32) + x658); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x704, &mut x705, 0x0, x629, x679); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x706, &mut x707, x705, x631, x681); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x708, &mut x709, x707, x633, x683); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x710, &mut x711, x709, x635, x685); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x712, &mut x713, x711, x637, x687); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x714, &mut x715, x713, x639, x689); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x716, &mut x717, x715, x641, x691); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x718, &mut x719, x717, x643, x693); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x720, &mut x721, x719, x645, x695); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x722, &mut x723, x721, x647, x697); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x724, &mut x725, x723, x649, x699); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x726, &mut x727, x725, x651, x701); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x728, &mut x729, x727, x653, x703); + let x730: u32 = ((x729 as u32) + (x654 as u32)); + let mut x731: u32 = 0; + let mut x732: u32 = 0; + fiat_bp384_mulx_u32(&mut x731, &mut x732, x5, (arg2[11])); + let mut x733: u32 = 0; + let mut x734: u32 = 0; + fiat_bp384_mulx_u32(&mut x733, &mut x734, x5, (arg2[10])); + let mut x735: u32 = 0; + let mut x736: u32 = 0; + fiat_bp384_mulx_u32(&mut x735, &mut x736, x5, (arg2[9])); + let mut x737: u32 = 0; + let mut x738: u32 = 0; + fiat_bp384_mulx_u32(&mut x737, &mut x738, x5, (arg2[8])); + let mut x739: u32 = 0; + let mut x740: u32 = 0; + fiat_bp384_mulx_u32(&mut x739, &mut x740, x5, (arg2[7])); + let mut x741: u32 = 0; + let mut x742: u32 = 0; + fiat_bp384_mulx_u32(&mut x741, &mut x742, x5, (arg2[6])); + let mut x743: u32 = 0; + let mut x744: u32 = 0; + fiat_bp384_mulx_u32(&mut x743, &mut x744, x5, (arg2[5])); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp384_mulx_u32(&mut x745, &mut x746, x5, (arg2[4])); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp384_mulx_u32(&mut x747, &mut x748, x5, (arg2[3])); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp384_mulx_u32(&mut x749, &mut x750, x5, (arg2[2])); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp384_mulx_u32(&mut x751, &mut x752, x5, (arg2[1])); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp384_mulx_u32(&mut x753, &mut x754, x5, (arg2[0])); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x755, &mut x756, 0x0, x754, x751); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x757, &mut x758, x756, x752, x749); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x759, &mut x760, x758, x750, x747); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x761, &mut x762, x760, x748, x745); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x763, &mut x764, x762, x746, x743); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x765, &mut x766, x764, x744, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x767, &mut x768, x766, x742, x739); + let mut x769: u32 = 0; + let mut x770: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x769, &mut x770, x768, x740, x737); + let mut x771: u32 = 0; + let mut x772: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x771, &mut x772, x770, x738, x735); + let mut x773: u32 = 0; + let mut x774: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x773, &mut x774, x772, x736, x733); + let mut x775: u32 = 0; + let mut x776: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x775, &mut x776, x774, x734, x731); + let x777: u32 = ((x776 as u32) + x732); + let mut x778: u32 = 0; + let mut x779: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x778, &mut x779, 0x0, x706, x753); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x780, &mut x781, x779, x708, x755); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x782, &mut x783, x781, x710, x757); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x784, &mut x785, x783, x712, x759); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x786, &mut x787, x785, x714, x761); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x788, &mut x789, x787, x716, x763); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x790, &mut x791, x789, x718, x765); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x792, &mut x793, x791, x720, x767); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x794, &mut x795, x793, x722, x769); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x796, &mut x797, x795, x724, x771); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x798, &mut x799, x797, x726, x773); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x800, &mut x801, x799, x728, x775); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x802, &mut x803, x801, x730, x777); + let mut x804: u32 = 0; + let mut x805: u32 = 0; + fiat_bp384_mulx_u32(&mut x804, &mut x805, x778, 0xea9ec825); + let mut x806: u32 = 0; + let mut x807: u32 = 0; + fiat_bp384_mulx_u32(&mut x806, &mut x807, x804, 0x8cb91e82); + let mut x808: u32 = 0; + let mut x809: u32 = 0; + fiat_bp384_mulx_u32(&mut x808, &mut x809, x804, 0xa3386d28); + let mut x810: u32 = 0; + let mut x811: u32 = 0; + fiat_bp384_mulx_u32(&mut x810, &mut x811, x804, 0xf5d6f7e); + let mut x812: u32 = 0; + let mut x813: u32 = 0; + fiat_bp384_mulx_u32(&mut x812, &mut x813, x804, 0x50e641df); + let mut x814: u32 = 0; + let mut x815: u32 = 0; + fiat_bp384_mulx_u32(&mut x814, &mut x815, x804, 0x152f7109); + let mut x816: u32 = 0; + let mut x817: u32 = 0; + fiat_bp384_mulx_u32(&mut x816, &mut x817, x804, 0xed5456b4); + let mut x818: u32 = 0; + let mut x819: u32 = 0; + fiat_bp384_mulx_u32(&mut x818, &mut x819, x804, 0x12b1da19); + let mut x820: u32 = 0; + let mut x821: u32 = 0; + fiat_bp384_mulx_u32(&mut x820, &mut x821, x804, 0x7fb71123); + let mut x822: u32 = 0; + let mut x823: u32 = 0; + fiat_bp384_mulx_u32(&mut x822, &mut x823, x804, 0xacd3a729); + let mut x824: u32 = 0; + let mut x825: u32 = 0; + fiat_bp384_mulx_u32(&mut x824, &mut x825, x804, 0x901d1a71); + let mut x826: u32 = 0; + let mut x827: u32 = 0; + fiat_bp384_mulx_u32(&mut x826, &mut x827, x804, 0x87470013); + let mut x828: u32 = 0; + let mut x829: u32 = 0; + fiat_bp384_mulx_u32(&mut x828, &mut x829, x804, 0x3107ec53); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x830, &mut x831, 0x0, x829, x826); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x832, &mut x833, x831, x827, x824); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x834, &mut x835, x833, x825, x822); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x836, &mut x837, x835, x823, x820); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x838, &mut x839, x837, x821, x818); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x840, &mut x841, x839, x819, x816); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x842, &mut x843, x841, x817, x814); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x844, &mut x845, x843, x815, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x846, &mut x847, x845, x813, x810); + let mut x848: u32 = 0; + let mut x849: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x848, &mut x849, x847, x811, x808); + let mut x850: u32 = 0; + let mut x851: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x850, &mut x851, x849, x809, x806); + let x852: u32 = ((x851 as u32) + x807); + let mut x853: u32 = 0; + let mut x854: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x853, &mut x854, 0x0, x778, x828); + let mut x855: u32 = 0; + let mut x856: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x855, &mut x856, x854, x780, x830); + let mut x857: u32 = 0; + let mut x858: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x857, &mut x858, x856, x782, x832); + let mut x859: u32 = 0; + let mut x860: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x859, &mut x860, x858, x784, x834); + let mut x861: u32 = 0; + let mut x862: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x861, &mut x862, x860, x786, x836); + let mut x863: u32 = 0; + let mut x864: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x863, &mut x864, x862, x788, x838); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x865, &mut x866, x864, x790, x840); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x867, &mut x868, x866, x792, x842); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x869, &mut x870, x868, x794, x844); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x871, &mut x872, x870, x796, x846); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x873, &mut x874, x872, x798, x848); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x875, &mut x876, x874, x800, x850); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x877, &mut x878, x876, x802, x852); + let x879: u32 = ((x878 as u32) + (x803 as u32)); + let mut x880: u32 = 0; + let mut x881: u32 = 0; + fiat_bp384_mulx_u32(&mut x880, &mut x881, x6, (arg2[11])); + let mut x882: u32 = 0; + let mut x883: u32 = 0; + fiat_bp384_mulx_u32(&mut x882, &mut x883, x6, (arg2[10])); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp384_mulx_u32(&mut x884, &mut x885, x6, (arg2[9])); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp384_mulx_u32(&mut x886, &mut x887, x6, (arg2[8])); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp384_mulx_u32(&mut x888, &mut x889, x6, (arg2[7])); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp384_mulx_u32(&mut x890, &mut x891, x6, (arg2[6])); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp384_mulx_u32(&mut x892, &mut x893, x6, (arg2[5])); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp384_mulx_u32(&mut x894, &mut x895, x6, (arg2[4])); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp384_mulx_u32(&mut x896, &mut x897, x6, (arg2[3])); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp384_mulx_u32(&mut x898, &mut x899, x6, (arg2[2])); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp384_mulx_u32(&mut x900, &mut x901, x6, (arg2[1])); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp384_mulx_u32(&mut x902, &mut x903, x6, (arg2[0])); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x904, &mut x905, 0x0, x903, x900); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x906, &mut x907, x905, x901, x898); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x908, &mut x909, x907, x899, x896); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x910, &mut x911, x909, x897, x894); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x912, &mut x913, x911, x895, x892); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x914, &mut x915, x913, x893, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x916, &mut x917, x915, x891, x888); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x918, &mut x919, x917, x889, x886); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x920, &mut x921, x919, x887, x884); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x922, &mut x923, x921, x885, x882); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x924, &mut x925, x923, x883, x880); + let x926: u32 = ((x925 as u32) + x881); + let mut x927: u32 = 0; + let mut x928: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x927, &mut x928, 0x0, x855, x902); + let mut x929: u32 = 0; + let mut x930: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x929, &mut x930, x928, x857, x904); + let mut x931: u32 = 0; + let mut x932: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x931, &mut x932, x930, x859, x906); + let mut x933: u32 = 0; + let mut x934: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x933, &mut x934, x932, x861, x908); + let mut x935: u32 = 0; + let mut x936: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x935, &mut x936, x934, x863, x910); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x937, &mut x938, x936, x865, x912); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x939, &mut x940, x938, x867, x914); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x941, &mut x942, x940, x869, x916); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x943, &mut x944, x942, x871, x918); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x945, &mut x946, x944, x873, x920); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x947, &mut x948, x946, x875, x922); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x949, &mut x950, x948, x877, x924); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x951, &mut x952, x950, x879, x926); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp384_mulx_u32(&mut x953, &mut x954, x927, 0xea9ec825); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp384_mulx_u32(&mut x955, &mut x956, x953, 0x8cb91e82); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp384_mulx_u32(&mut x957, &mut x958, x953, 0xa3386d28); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp384_mulx_u32(&mut x959, &mut x960, x953, 0xf5d6f7e); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp384_mulx_u32(&mut x961, &mut x962, x953, 0x50e641df); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp384_mulx_u32(&mut x963, &mut x964, x953, 0x152f7109); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp384_mulx_u32(&mut x965, &mut x966, x953, 0xed5456b4); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp384_mulx_u32(&mut x967, &mut x968, x953, 0x12b1da19); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp384_mulx_u32(&mut x969, &mut x970, x953, 0x7fb71123); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp384_mulx_u32(&mut x971, &mut x972, x953, 0xacd3a729); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp384_mulx_u32(&mut x973, &mut x974, x953, 0x901d1a71); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp384_mulx_u32(&mut x975, &mut x976, x953, 0x87470013); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp384_mulx_u32(&mut x977, &mut x978, x953, 0x3107ec53); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x979, &mut x980, 0x0, x978, x975); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x981, &mut x982, x980, x976, x973); + let mut x983: u32 = 0; + let mut x984: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x983, &mut x984, x982, x974, x971); + let mut x985: u32 = 0; + let mut x986: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x985, &mut x986, x984, x972, x969); + let mut x987: u32 = 0; + let mut x988: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x987, &mut x988, x986, x970, x967); + let mut x989: u32 = 0; + let mut x990: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x989, &mut x990, x988, x968, x965); + let mut x991: u32 = 0; + let mut x992: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x991, &mut x992, x990, x966, x963); + let mut x993: u32 = 0; + let mut x994: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x993, &mut x994, x992, x964, x961); + let mut x995: u32 = 0; + let mut x996: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x995, &mut x996, x994, x962, x959); + let mut x997: u32 = 0; + let mut x998: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x997, &mut x998, x996, x960, x957); + let mut x999: u32 = 0; + let mut x1000: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x999, &mut x1000, x998, x958, x955); + let x1001: u32 = ((x1000 as u32) + x956); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1002, &mut x1003, 0x0, x927, x977); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1004, &mut x1005, x1003, x929, x979); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1006, &mut x1007, x1005, x931, x981); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1008, &mut x1009, x1007, x933, x983); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1010, &mut x1011, x1009, x935, x985); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1012, &mut x1013, x1011, x937, x987); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1014, &mut x1015, x1013, x939, x989); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1016, &mut x1017, x1015, x941, x991); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1018, &mut x1019, x1017, x943, x993); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1020, &mut x1021, x1019, x945, x995); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1022, &mut x1023, x1021, x947, x997); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1024, &mut x1025, x1023, x949, x999); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1026, &mut x1027, x1025, x951, x1001); + let x1028: u32 = ((x1027 as u32) + (x952 as u32)); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp384_mulx_u32(&mut x1029, &mut x1030, x7, (arg2[11])); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp384_mulx_u32(&mut x1031, &mut x1032, x7, (arg2[10])); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp384_mulx_u32(&mut x1033, &mut x1034, x7, (arg2[9])); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp384_mulx_u32(&mut x1035, &mut x1036, x7, (arg2[8])); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp384_mulx_u32(&mut x1037, &mut x1038, x7, (arg2[7])); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp384_mulx_u32(&mut x1039, &mut x1040, x7, (arg2[6])); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp384_mulx_u32(&mut x1041, &mut x1042, x7, (arg2[5])); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp384_mulx_u32(&mut x1043, &mut x1044, x7, (arg2[4])); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp384_mulx_u32(&mut x1045, &mut x1046, x7, (arg2[3])); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp384_mulx_u32(&mut x1047, &mut x1048, x7, (arg2[2])); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp384_mulx_u32(&mut x1049, &mut x1050, x7, (arg2[1])); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp384_mulx_u32(&mut x1051, &mut x1052, x7, (arg2[0])); + let mut x1053: u32 = 0; + let mut x1054: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1053, &mut x1054, 0x0, x1052, x1049); + let mut x1055: u32 = 0; + let mut x1056: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1055, &mut x1056, x1054, x1050, x1047); + let mut x1057: u32 = 0; + let mut x1058: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1057, &mut x1058, x1056, x1048, x1045); + let mut x1059: u32 = 0; + let mut x1060: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1059, &mut x1060, x1058, x1046, x1043); + let mut x1061: u32 = 0; + let mut x1062: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1061, &mut x1062, x1060, x1044, x1041); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1063, &mut x1064, x1062, x1042, x1039); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1040, x1037); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1038, x1035); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1036, x1033); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1034, x1031); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1032, x1029); + let x1075: u32 = ((x1074 as u32) + x1030); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1076, &mut x1077, 0x0, x1004, x1051); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1006, x1053); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1008, x1055); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1010, x1057); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1084, &mut x1085, x1083, x1012, x1059); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1014, x1061); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1016, x1063); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1018, x1065); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1020, x1067); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1022, x1069); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1024, x1071); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1026, x1073); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1028, x1075); + let mut x1102: u32 = 0; + let mut x1103: u32 = 0; + fiat_bp384_mulx_u32(&mut x1102, &mut x1103, x1076, 0xea9ec825); + let mut x1104: u32 = 0; + let mut x1105: u32 = 0; + fiat_bp384_mulx_u32(&mut x1104, &mut x1105, x1102, 0x8cb91e82); + let mut x1106: u32 = 0; + let mut x1107: u32 = 0; + fiat_bp384_mulx_u32(&mut x1106, &mut x1107, x1102, 0xa3386d28); + let mut x1108: u32 = 0; + let mut x1109: u32 = 0; + fiat_bp384_mulx_u32(&mut x1108, &mut x1109, x1102, 0xf5d6f7e); + let mut x1110: u32 = 0; + let mut x1111: u32 = 0; + fiat_bp384_mulx_u32(&mut x1110, &mut x1111, x1102, 0x50e641df); + let mut x1112: u32 = 0; + let mut x1113: u32 = 0; + fiat_bp384_mulx_u32(&mut x1112, &mut x1113, x1102, 0x152f7109); + let mut x1114: u32 = 0; + let mut x1115: u32 = 0; + fiat_bp384_mulx_u32(&mut x1114, &mut x1115, x1102, 0xed5456b4); + let mut x1116: u32 = 0; + let mut x1117: u32 = 0; + fiat_bp384_mulx_u32(&mut x1116, &mut x1117, x1102, 0x12b1da19); + let mut x1118: u32 = 0; + let mut x1119: u32 = 0; + fiat_bp384_mulx_u32(&mut x1118, &mut x1119, x1102, 0x7fb71123); + let mut x1120: u32 = 0; + let mut x1121: u32 = 0; + fiat_bp384_mulx_u32(&mut x1120, &mut x1121, x1102, 0xacd3a729); + let mut x1122: u32 = 0; + let mut x1123: u32 = 0; + fiat_bp384_mulx_u32(&mut x1122, &mut x1123, x1102, 0x901d1a71); + let mut x1124: u32 = 0; + let mut x1125: u32 = 0; + fiat_bp384_mulx_u32(&mut x1124, &mut x1125, x1102, 0x87470013); + let mut x1126: u32 = 0; + let mut x1127: u32 = 0; + fiat_bp384_mulx_u32(&mut x1126, &mut x1127, x1102, 0x3107ec53); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1128, &mut x1129, 0x0, x1127, x1124); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1125, x1122); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1123, x1120); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1121, x1118); + let mut x1136: u32 = 0; + let mut x1137: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1136, &mut x1137, x1135, x1119, x1116); + let mut x1138: u32 = 0; + let mut x1139: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1138, &mut x1139, x1137, x1117, x1114); + let mut x1140: u32 = 0; + let mut x1141: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1140, &mut x1141, x1139, x1115, x1112); + let mut x1142: u32 = 0; + let mut x1143: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1142, &mut x1143, x1141, x1113, x1110); + let mut x1144: u32 = 0; + let mut x1145: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1144, &mut x1145, x1143, x1111, x1108); + let mut x1146: u32 = 0; + let mut x1147: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1146, &mut x1147, x1145, x1109, x1106); + let mut x1148: u32 = 0; + let mut x1149: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1148, &mut x1149, x1147, x1107, x1104); + let x1150: u32 = ((x1149 as u32) + x1105); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1151, &mut x1152, 0x0, x1076, x1126); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1078, x1128); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1080, x1130); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1082, x1132); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1084, x1134); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1086, x1136); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1088, x1138); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1090, x1140); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1092, x1142); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1094, x1144); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1096, x1146); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1098, x1148); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1100, x1150); + let x1177: u32 = ((x1176 as u32) + (x1101 as u32)); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp384_mulx_u32(&mut x1178, &mut x1179, x8, (arg2[11])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp384_mulx_u32(&mut x1180, &mut x1181, x8, (arg2[10])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp384_mulx_u32(&mut x1182, &mut x1183, x8, (arg2[9])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp384_mulx_u32(&mut x1184, &mut x1185, x8, (arg2[8])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp384_mulx_u32(&mut x1186, &mut x1187, x8, (arg2[7])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp384_mulx_u32(&mut x1188, &mut x1189, x8, (arg2[6])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp384_mulx_u32(&mut x1190, &mut x1191, x8, (arg2[5])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp384_mulx_u32(&mut x1192, &mut x1193, x8, (arg2[4])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp384_mulx_u32(&mut x1194, &mut x1195, x8, (arg2[3])); + let mut x1196: u32 = 0; + let mut x1197: u32 = 0; + fiat_bp384_mulx_u32(&mut x1196, &mut x1197, x8, (arg2[2])); + let mut x1198: u32 = 0; + let mut x1199: u32 = 0; + fiat_bp384_mulx_u32(&mut x1198, &mut x1199, x8, (arg2[1])); + let mut x1200: u32 = 0; + let mut x1201: u32 = 0; + fiat_bp384_mulx_u32(&mut x1200, &mut x1201, x8, (arg2[0])); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1202, &mut x1203, 0x0, x1201, x1198); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1199, x1196); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1197, x1194); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1195, x1192); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1193, x1190); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1191, x1188); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1189, x1186); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1187, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1185, x1182); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1183, x1180); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1181, x1178); + let x1224: u32 = ((x1223 as u32) + x1179); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1225, &mut x1226, 0x0, x1153, x1200); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1155, x1202); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1157, x1204); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1159, x1206); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1161, x1208); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1163, x1210); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1165, x1212); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1167, x1214); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1169, x1216); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1171, x1218); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1220); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1222); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1224); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp384_mulx_u32(&mut x1251, &mut x1252, x1225, 0xea9ec825); + let mut x1253: u32 = 0; + let mut x1254: u32 = 0; + fiat_bp384_mulx_u32(&mut x1253, &mut x1254, x1251, 0x8cb91e82); + let mut x1255: u32 = 0; + let mut x1256: u32 = 0; + fiat_bp384_mulx_u32(&mut x1255, &mut x1256, x1251, 0xa3386d28); + let mut x1257: u32 = 0; + let mut x1258: u32 = 0; + fiat_bp384_mulx_u32(&mut x1257, &mut x1258, x1251, 0xf5d6f7e); + let mut x1259: u32 = 0; + let mut x1260: u32 = 0; + fiat_bp384_mulx_u32(&mut x1259, &mut x1260, x1251, 0x50e641df); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp384_mulx_u32(&mut x1261, &mut x1262, x1251, 0x152f7109); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp384_mulx_u32(&mut x1263, &mut x1264, x1251, 0xed5456b4); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp384_mulx_u32(&mut x1265, &mut x1266, x1251, 0x12b1da19); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_mulx_u32(&mut x1267, &mut x1268, x1251, 0x7fb71123); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_mulx_u32(&mut x1269, &mut x1270, x1251, 0xacd3a729); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_mulx_u32(&mut x1271, &mut x1272, x1251, 0x901d1a71); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_mulx_u32(&mut x1273, &mut x1274, x1251, 0x87470013); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_mulx_u32(&mut x1275, &mut x1276, x1251, 0x3107ec53); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1277, &mut x1278, 0x0, x1276, x1273); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1274, x1271); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1272, x1269); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1283, &mut x1284, x1282, x1270, x1267); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1268, x1265); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1266, x1263); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1264, x1261); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1262, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1260, x1257); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1258, x1255); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1256, x1253); + let x1299: u32 = ((x1298 as u32) + x1254); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1300, &mut x1301, 0x0, x1225, x1275); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1227, x1277); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1229, x1279); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1231, x1281); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1233, x1283); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1235, x1285); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1237, x1287); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1239, x1289); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1241, x1291); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1243, x1293); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1245, x1295); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1247, x1297); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1249, x1299); + let x1326: u32 = ((x1325 as u32) + (x1250 as u32)); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp384_mulx_u32(&mut x1327, &mut x1328, x9, (arg2[11])); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp384_mulx_u32(&mut x1329, &mut x1330, x9, (arg2[10])); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp384_mulx_u32(&mut x1331, &mut x1332, x9, (arg2[9])); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp384_mulx_u32(&mut x1333, &mut x1334, x9, (arg2[8])); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp384_mulx_u32(&mut x1335, &mut x1336, x9, (arg2[7])); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_mulx_u32(&mut x1337, &mut x1338, x9, (arg2[6])); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_mulx_u32(&mut x1339, &mut x1340, x9, (arg2[5])); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_mulx_u32(&mut x1341, &mut x1342, x9, (arg2[4])); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_mulx_u32(&mut x1343, &mut x1344, x9, (arg2[3])); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_mulx_u32(&mut x1345, &mut x1346, x9, (arg2[2])); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_mulx_u32(&mut x1347, &mut x1348, x9, (arg2[1])); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_mulx_u32(&mut x1349, &mut x1350, x9, (arg2[0])); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1351, &mut x1352, 0x0, x1350, x1347); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1348, x1345); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1346, x1343); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1344, x1341); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1342, x1339); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1340, x1337); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1338, x1335); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1336, x1333); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1334, x1331); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1332, x1329); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1330, x1327); + let x1373: u32 = ((x1372 as u32) + x1328); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1374, &mut x1375, 0x0, x1302, x1349); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1304, x1351); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1306, x1353); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1308, x1355); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1310, x1357); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1312, x1359); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1314, x1361); + let mut x1388: u32 = 0; + let mut x1389: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1388, &mut x1389, x1387, x1316, x1363); + let mut x1390: u32 = 0; + let mut x1391: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1390, &mut x1391, x1389, x1318, x1365); + let mut x1392: u32 = 0; + let mut x1393: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1392, &mut x1393, x1391, x1320, x1367); + let mut x1394: u32 = 0; + let mut x1395: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1394, &mut x1395, x1393, x1322, x1369); + let mut x1396: u32 = 0; + let mut x1397: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1396, &mut x1397, x1395, x1324, x1371); + let mut x1398: u32 = 0; + let mut x1399: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1398, &mut x1399, x1397, x1326, x1373); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp384_mulx_u32(&mut x1400, &mut x1401, x1374, 0xea9ec825); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp384_mulx_u32(&mut x1402, &mut x1403, x1400, 0x8cb91e82); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp384_mulx_u32(&mut x1404, &mut x1405, x1400, 0xa3386d28); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp384_mulx_u32(&mut x1406, &mut x1407, x1400, 0xf5d6f7e); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp384_mulx_u32(&mut x1408, &mut x1409, x1400, 0x50e641df); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp384_mulx_u32(&mut x1410, &mut x1411, x1400, 0x152f7109); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp384_mulx_u32(&mut x1412, &mut x1413, x1400, 0xed5456b4); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp384_mulx_u32(&mut x1414, &mut x1415, x1400, 0x12b1da19); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp384_mulx_u32(&mut x1416, &mut x1417, x1400, 0x7fb71123); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp384_mulx_u32(&mut x1418, &mut x1419, x1400, 0xacd3a729); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp384_mulx_u32(&mut x1420, &mut x1421, x1400, 0x901d1a71); + let mut x1422: u32 = 0; + let mut x1423: u32 = 0; + fiat_bp384_mulx_u32(&mut x1422, &mut x1423, x1400, 0x87470013); + let mut x1424: u32 = 0; + let mut x1425: u32 = 0; + fiat_bp384_mulx_u32(&mut x1424, &mut x1425, x1400, 0x3107ec53); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1426, &mut x1427, 0x0, x1425, x1422); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1423, x1420); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1421, x1418); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1419, x1416); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1417, x1414); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1415, x1412); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1413, x1410); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1411, x1408); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1409, x1406); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1407, x1404); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1405, x1402); + let x1448: u32 = ((x1447 as u32) + x1403); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1449, &mut x1450, 0x0, x1374, x1424); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1376, x1426); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1378, x1428); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1380, x1430); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1382, x1432); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1384, x1434); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1386, x1436); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1388, x1438); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1390, x1440); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1392, x1442); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1394, x1444); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1396, x1446); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1398, x1448); + let x1475: u32 = ((x1474 as u32) + (x1399 as u32)); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp384_mulx_u32(&mut x1476, &mut x1477, x10, (arg2[11])); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp384_mulx_u32(&mut x1478, &mut x1479, x10, (arg2[10])); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp384_mulx_u32(&mut x1480, &mut x1481, x10, (arg2[9])); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp384_mulx_u32(&mut x1482, &mut x1483, x10, (arg2[8])); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp384_mulx_u32(&mut x1484, &mut x1485, x10, (arg2[7])); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp384_mulx_u32(&mut x1486, &mut x1487, x10, (arg2[6])); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp384_mulx_u32(&mut x1488, &mut x1489, x10, (arg2[5])); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp384_mulx_u32(&mut x1490, &mut x1491, x10, (arg2[4])); + let mut x1492: u32 = 0; + let mut x1493: u32 = 0; + fiat_bp384_mulx_u32(&mut x1492, &mut x1493, x10, (arg2[3])); + let mut x1494: u32 = 0; + let mut x1495: u32 = 0; + fiat_bp384_mulx_u32(&mut x1494, &mut x1495, x10, (arg2[2])); + let mut x1496: u32 = 0; + let mut x1497: u32 = 0; + fiat_bp384_mulx_u32(&mut x1496, &mut x1497, x10, (arg2[1])); + let mut x1498: u32 = 0; + let mut x1499: u32 = 0; + fiat_bp384_mulx_u32(&mut x1498, &mut x1499, x10, (arg2[0])); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1500, &mut x1501, 0x0, x1499, x1496); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1497, x1494); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1495, x1492); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1493, x1490); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1491, x1488); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1489, x1486); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1487, x1484); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1485, x1482); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1483, x1480); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1481, x1478); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1479, x1476); + let x1522: u32 = ((x1521 as u32) + x1477); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1451, x1498); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1453, x1500); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1455, x1502); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1504); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1506); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1508); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1510); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1512); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1514); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1516); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1518); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1520); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1522); + let mut x1549: u32 = 0; + let mut x1550: u32 = 0; + fiat_bp384_mulx_u32(&mut x1549, &mut x1550, x1523, 0xea9ec825); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_mulx_u32(&mut x1551, &mut x1552, x1549, 0x8cb91e82); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_mulx_u32(&mut x1553, &mut x1554, x1549, 0xa3386d28); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_mulx_u32(&mut x1555, &mut x1556, x1549, 0xf5d6f7e); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_mulx_u32(&mut x1557, &mut x1558, x1549, 0x50e641df); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_mulx_u32(&mut x1559, &mut x1560, x1549, 0x152f7109); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_mulx_u32(&mut x1561, &mut x1562, x1549, 0xed5456b4); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_mulx_u32(&mut x1563, &mut x1564, x1549, 0x12b1da19); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_mulx_u32(&mut x1565, &mut x1566, x1549, 0x7fb71123); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_mulx_u32(&mut x1567, &mut x1568, x1549, 0xacd3a729); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_mulx_u32(&mut x1569, &mut x1570, x1549, 0x901d1a71); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_mulx_u32(&mut x1571, &mut x1572, x1549, 0x87470013); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_mulx_u32(&mut x1573, &mut x1574, x1549, 0x3107ec53); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let x1597: u32 = ((x1596 as u32) + x1552); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1598, &mut x1599, 0x0, x1523, x1573); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1525, x1575); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1527, x1577); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1529, x1579); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1531, x1581); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1533, x1583); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1535, x1585); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1537, x1587); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1539, x1589); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1541, x1591); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1543, x1593); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1545, x1595); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1547, x1597); + let x1624: u32 = ((x1623 as u32) + (x1548 as u32)); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_mulx_u32(&mut x1625, &mut x1626, x11, (arg2[11])); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_mulx_u32(&mut x1627, &mut x1628, x11, (arg2[10])); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_mulx_u32(&mut x1629, &mut x1630, x11, (arg2[9])); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_mulx_u32(&mut x1631, &mut x1632, x11, (arg2[8])); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_mulx_u32(&mut x1633, &mut x1634, x11, (arg2[7])); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_mulx_u32(&mut x1635, &mut x1636, x11, (arg2[6])); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_mulx_u32(&mut x1637, &mut x1638, x11, (arg2[5])); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_mulx_u32(&mut x1639, &mut x1640, x11, (arg2[4])); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_mulx_u32(&mut x1641, &mut x1642, x11, (arg2[3])); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_mulx_u32(&mut x1643, &mut x1644, x11, (arg2[2])); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_mulx_u32(&mut x1645, &mut x1646, x11, (arg2[1])); + let mut x1647: u32 = 0; + let mut x1648: u32 = 0; + fiat_bp384_mulx_u32(&mut x1647, &mut x1648, x11, (arg2[0])); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1649, &mut x1650, 0x0, x1648, x1645); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1646, x1643); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1644, x1641); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1642, x1639); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1640, x1637); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1638, x1635); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1636, x1633); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1634, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1632, x1629); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1630, x1627); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1628, x1625); + let x1671: u32 = ((x1670 as u32) + x1626); + let mut x1672: u32 = 0; + let mut x1673: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1672, &mut x1673, 0x0, x1600, x1647); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1674, &mut x1675, x1673, x1602, x1649); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1604, x1651); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1606, x1653); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1608, x1655); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1610, x1657); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1612, x1659); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1614, x1661); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1616, x1663); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1618, x1665); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1620, x1667); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1622, x1669); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1624, x1671); + let mut x1698: u32 = 0; + let mut x1699: u32 = 0; + fiat_bp384_mulx_u32(&mut x1698, &mut x1699, x1672, 0xea9ec825); + let mut x1700: u32 = 0; + let mut x1701: u32 = 0; + fiat_bp384_mulx_u32(&mut x1700, &mut x1701, x1698, 0x8cb91e82); + let mut x1702: u32 = 0; + let mut x1703: u32 = 0; + fiat_bp384_mulx_u32(&mut x1702, &mut x1703, x1698, 0xa3386d28); + let mut x1704: u32 = 0; + let mut x1705: u32 = 0; + fiat_bp384_mulx_u32(&mut x1704, &mut x1705, x1698, 0xf5d6f7e); + let mut x1706: u32 = 0; + let mut x1707: u32 = 0; + fiat_bp384_mulx_u32(&mut x1706, &mut x1707, x1698, 0x50e641df); + let mut x1708: u32 = 0; + let mut x1709: u32 = 0; + fiat_bp384_mulx_u32(&mut x1708, &mut x1709, x1698, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: u32 = 0; + fiat_bp384_mulx_u32(&mut x1710, &mut x1711, x1698, 0xed5456b4); + let mut x1712: u32 = 0; + let mut x1713: u32 = 0; + fiat_bp384_mulx_u32(&mut x1712, &mut x1713, x1698, 0x12b1da19); + let mut x1714: u32 = 0; + let mut x1715: u32 = 0; + fiat_bp384_mulx_u32(&mut x1714, &mut x1715, x1698, 0x7fb71123); + let mut x1716: u32 = 0; + let mut x1717: u32 = 0; + fiat_bp384_mulx_u32(&mut x1716, &mut x1717, x1698, 0xacd3a729); + let mut x1718: u32 = 0; + let mut x1719: u32 = 0; + fiat_bp384_mulx_u32(&mut x1718, &mut x1719, x1698, 0x901d1a71); + let mut x1720: u32 = 0; + let mut x1721: u32 = 0; + fiat_bp384_mulx_u32(&mut x1720, &mut x1721, x1698, 0x87470013); + let mut x1722: u32 = 0; + let mut x1723: u32 = 0; + fiat_bp384_mulx_u32(&mut x1722, &mut x1723, x1698, 0x3107ec53); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1724, &mut x1725, 0x0, x1723, x1720); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1721, x1718); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1719, x1716); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1717, x1714); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1715, x1712); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1713, x1710); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1711, x1708); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1709, x1706); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1707, x1704); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1705, x1702); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1703, x1700); + let x1746: u32 = ((x1745 as u32) + x1701); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1747, &mut x1748, 0x0, x1672, x1722); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1674, x1724); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1676, x1726); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1678, x1728); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1680, x1730); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1757, &mut x1758, x1756, x1682, x1732); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1684, x1734); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1686, x1736); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1688, x1738); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1690, x1740); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1692, x1742); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1694, x1744); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1696, x1746); + let x1773: u32 = ((x1772 as u32) + (x1697 as u32)); + let mut x1774: u32 = 0; + let mut x1775: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1774, &mut x1775, 0x0, x1749, 0x3107ec53); + let mut x1776: u32 = 0; + let mut x1777: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1776, &mut x1777, x1775, x1751, 0x87470013); + let mut x1778: u32 = 0; + let mut x1779: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1778, &mut x1779, x1777, x1753, 0x901d1a71); + let mut x1780: u32 = 0; + let mut x1781: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1780, &mut x1781, x1779, x1755, 0xacd3a729); + let mut x1782: u32 = 0; + let mut x1783: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1782, &mut x1783, x1781, x1757, 0x7fb71123); + let mut x1784: u32 = 0; + let mut x1785: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1784, &mut x1785, x1783, x1759, 0x12b1da19); + let mut x1786: u32 = 0; + let mut x1787: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1786, &mut x1787, x1785, x1761, 0xed5456b4); + let mut x1788: u32 = 0; + let mut x1789: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1788, &mut x1789, x1787, x1763, 0x152f7109); + let mut x1790: u32 = 0; + let mut x1791: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1790, &mut x1791, x1789, x1765, 0x50e641df); + let mut x1792: u32 = 0; + let mut x1793: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1792, &mut x1793, x1791, x1767, 0xf5d6f7e); + let mut x1794: u32 = 0; + let mut x1795: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1794, &mut x1795, x1793, x1769, 0xa3386d28); + let mut x1796: u32 = 0; + let mut x1797: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1796, &mut x1797, x1795, x1771, 0x8cb91e82); + let mut x1798: u32 = 0; + let mut x1799: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1798, &mut x1799, x1797, x1773, (0x0 as u32)); + let mut x1800: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1800, x1799, x1774, x1749); + let mut x1801: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1801, x1799, x1776, x1751); + let mut x1802: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1802, x1799, x1778, x1753); + let mut x1803: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1803, x1799, x1780, x1755); + let mut x1804: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1804, x1799, x1782, x1757); + let mut x1805: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1805, x1799, x1784, x1759); + let mut x1806: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1806, x1799, x1786, x1761); + let mut x1807: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1807, x1799, x1788, x1763); + let mut x1808: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1808, x1799, x1790, x1765); + let mut x1809: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1809, x1799, x1792, x1767); + let mut x1810: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1810, x1799, x1794, x1769); + let mut x1811: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1811, x1799, x1796, x1771); + out1[0] = x1800; + out1[1] = x1801; + out1[2] = x1802; + out1[3] = x1803; + out1[4] = x1804; + out1[5] = x1805; + out1[6] = x1806; + out1[7] = x1807; + out1[8] = x1808; + out1[9] = x1809; + out1[10] = x1810; + out1[11] = x1811; +} +/// The function fiat_bp384_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_square( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_mulx_u32(&mut x13, &mut x14, x12, (arg1[11])); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_mulx_u32(&mut x15, &mut x16, x12, (arg1[10])); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_mulx_u32(&mut x17, &mut x18, x12, (arg1[9])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_mulx_u32(&mut x19, &mut x20, x12, (arg1[8])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_mulx_u32(&mut x21, &mut x22, x12, (arg1[7])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_mulx_u32(&mut x23, &mut x24, x12, (arg1[6])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_mulx_u32(&mut x25, &mut x26, x12, (arg1[5])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_mulx_u32(&mut x27, &mut x28, x12, (arg1[4])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_mulx_u32(&mut x29, &mut x30, x12, (arg1[3])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_mulx_u32(&mut x31, &mut x32, x12, (arg1[2])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_mulx_u32(&mut x33, &mut x34, x12, (arg1[1])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_mulx_u32(&mut x35, &mut x36, x12, (arg1[0])); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let x59: u32 = ((x58 as u32) + x14); + let mut x60: u32 = 0; + let mut x61: u32 = 0; + fiat_bp384_mulx_u32(&mut x60, &mut x61, x35, 0xea9ec825); + let mut x62: u32 = 0; + let mut x63: u32 = 0; + fiat_bp384_mulx_u32(&mut x62, &mut x63, x60, 0x8cb91e82); + let mut x64: u32 = 0; + let mut x65: u32 = 0; + fiat_bp384_mulx_u32(&mut x64, &mut x65, x60, 0xa3386d28); + let mut x66: u32 = 0; + let mut x67: u32 = 0; + fiat_bp384_mulx_u32(&mut x66, &mut x67, x60, 0xf5d6f7e); + let mut x68: u32 = 0; + let mut x69: u32 = 0; + fiat_bp384_mulx_u32(&mut x68, &mut x69, x60, 0x50e641df); + let mut x70: u32 = 0; + let mut x71: u32 = 0; + fiat_bp384_mulx_u32(&mut x70, &mut x71, x60, 0x152f7109); + let mut x72: u32 = 0; + let mut x73: u32 = 0; + fiat_bp384_mulx_u32(&mut x72, &mut x73, x60, 0xed5456b4); + let mut x74: u32 = 0; + let mut x75: u32 = 0; + fiat_bp384_mulx_u32(&mut x74, &mut x75, x60, 0x12b1da19); + let mut x76: u32 = 0; + let mut x77: u32 = 0; + fiat_bp384_mulx_u32(&mut x76, &mut x77, x60, 0x7fb71123); + let mut x78: u32 = 0; + let mut x79: u32 = 0; + fiat_bp384_mulx_u32(&mut x78, &mut x79, x60, 0xacd3a729); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp384_mulx_u32(&mut x80, &mut x81, x60, 0x901d1a71); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp384_mulx_u32(&mut x82, &mut x83, x60, 0x87470013); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp384_mulx_u32(&mut x84, &mut x85, x60, 0x3107ec53); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x86, &mut x87, 0x0, x85, x82); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x88, &mut x89, x87, x83, x80); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x90, &mut x91, x89, x81, x78); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x92, &mut x93, x91, x79, x76); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x94, &mut x95, x93, x77, x74); + let mut x96: u32 = 0; + let mut x97: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x96, &mut x97, x95, x75, x72); + let mut x98: u32 = 0; + let mut x99: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x98, &mut x99, x97, x73, x70); + let mut x100: u32 = 0; + let mut x101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x100, &mut x101, x99, x71, x68); + let mut x102: u32 = 0; + let mut x103: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x102, &mut x103, x101, x69, x66); + let mut x104: u32 = 0; + let mut x105: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x104, &mut x105, x103, x67, x64); + let mut x106: u32 = 0; + let mut x107: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x106, &mut x107, x105, x65, x62); + let x108: u32 = ((x107 as u32) + x63); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x109, &mut x110, 0x0, x35, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x111, &mut x112, x110, x37, x86); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x113, &mut x114, x112, x39, x88); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x115, &mut x116, x114, x41, x90); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x117, &mut x118, x116, x43, x92); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x119, &mut x120, x118, x45, x94); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x121, &mut x122, x120, x47, x96); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x123, &mut x124, x122, x49, x98); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x125, &mut x126, x124, x51, x100); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x127, &mut x128, x126, x53, x102); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x129, &mut x130, x128, x55, x104); + let mut x131: u32 = 0; + let mut x132: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x131, &mut x132, x130, x57, x106); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x133, &mut x134, x132, x59, x108); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_mulx_u32(&mut x135, &mut x136, x1, (arg1[11])); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_mulx_u32(&mut x137, &mut x138, x1, (arg1[10])); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_mulx_u32(&mut x139, &mut x140, x1, (arg1[9])); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_mulx_u32(&mut x141, &mut x142, x1, (arg1[8])); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_mulx_u32(&mut x143, &mut x144, x1, (arg1[7])); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_mulx_u32(&mut x145, &mut x146, x1, (arg1[6])); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_mulx_u32(&mut x147, &mut x148, x1, (arg1[5])); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_mulx_u32(&mut x149, &mut x150, x1, (arg1[4])); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_mulx_u32(&mut x151, &mut x152, x1, (arg1[3])); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_mulx_u32(&mut x153, &mut x154, x1, (arg1[2])); + let mut x155: u32 = 0; + let mut x156: u32 = 0; + fiat_bp384_mulx_u32(&mut x155, &mut x156, x1, (arg1[1])); + let mut x157: u32 = 0; + let mut x158: u32 = 0; + fiat_bp384_mulx_u32(&mut x157, &mut x158, x1, (arg1[0])); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x159, &mut x160, 0x0, x158, x155); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x161, &mut x162, x160, x156, x153); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x163, &mut x164, x162, x154, x151); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x165, &mut x166, x164, x152, x149); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x167, &mut x168, x166, x150, x147); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x169, &mut x170, x168, x148, x145); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x171, &mut x172, x170, x146, x143); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x173, &mut x174, x172, x144, x141); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x175, &mut x176, x174, x142, x139); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x177, &mut x178, x176, x140, x137); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x179, &mut x180, x178, x138, x135); + let x181: u32 = ((x180 as u32) + x136); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x182, &mut x183, 0x0, x111, x157); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x184, &mut x185, x183, x113, x159); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x186, &mut x187, x185, x115, x161); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x188, &mut x189, x187, x117, x163); + let mut x190: u32 = 0; + let mut x191: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x190, &mut x191, x189, x119, x165); + let mut x192: u32 = 0; + let mut x193: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x192, &mut x193, x191, x121, x167); + let mut x194: u32 = 0; + let mut x195: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x194, &mut x195, x193, x123, x169); + let mut x196: u32 = 0; + let mut x197: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x196, &mut x197, x195, x125, x171); + let mut x198: u32 = 0; + let mut x199: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x198, &mut x199, x197, x127, x173); + let mut x200: u32 = 0; + let mut x201: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x200, &mut x201, x199, x129, x175); + let mut x202: u32 = 0; + let mut x203: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x202, &mut x203, x201, x131, x177); + let mut x204: u32 = 0; + let mut x205: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x204, &mut x205, x203, x133, x179); + let mut x206: u32 = 0; + let mut x207: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x206, &mut x207, x205, (x134 as u32), x181); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_mulx_u32(&mut x208, &mut x209, x182, 0xea9ec825); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_mulx_u32(&mut x210, &mut x211, x208, 0x8cb91e82); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_mulx_u32(&mut x212, &mut x213, x208, 0xa3386d28); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_mulx_u32(&mut x214, &mut x215, x208, 0xf5d6f7e); + let mut x216: u32 = 0; + let mut x217: u32 = 0; + fiat_bp384_mulx_u32(&mut x216, &mut x217, x208, 0x50e641df); + let mut x218: u32 = 0; + let mut x219: u32 = 0; + fiat_bp384_mulx_u32(&mut x218, &mut x219, x208, 0x152f7109); + let mut x220: u32 = 0; + let mut x221: u32 = 0; + fiat_bp384_mulx_u32(&mut x220, &mut x221, x208, 0xed5456b4); + let mut x222: u32 = 0; + let mut x223: u32 = 0; + fiat_bp384_mulx_u32(&mut x222, &mut x223, x208, 0x12b1da19); + let mut x224: u32 = 0; + let mut x225: u32 = 0; + fiat_bp384_mulx_u32(&mut x224, &mut x225, x208, 0x7fb71123); + let mut x226: u32 = 0; + let mut x227: u32 = 0; + fiat_bp384_mulx_u32(&mut x226, &mut x227, x208, 0xacd3a729); + let mut x228: u32 = 0; + let mut x229: u32 = 0; + fiat_bp384_mulx_u32(&mut x228, &mut x229, x208, 0x901d1a71); + let mut x230: u32 = 0; + let mut x231: u32 = 0; + fiat_bp384_mulx_u32(&mut x230, &mut x231, x208, 0x87470013); + let mut x232: u32 = 0; + let mut x233: u32 = 0; + fiat_bp384_mulx_u32(&mut x232, &mut x233, x208, 0x3107ec53); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x234, &mut x235, 0x0, x233, x230); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x236, &mut x237, x235, x231, x228); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x238, &mut x239, x237, x229, x226); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x240, &mut x241, x239, x227, x224); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x242, &mut x243, x241, x225, x222); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x244, &mut x245, x243, x223, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x246, &mut x247, x245, x221, x218); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x248, &mut x249, x247, x219, x216); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x250, &mut x251, x249, x217, x214); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x252, &mut x253, x251, x215, x212); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x254, &mut x255, x253, x213, x210); + let x256: u32 = ((x255 as u32) + x211); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x257, &mut x258, 0x0, x182, x232); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x259, &mut x260, x258, x184, x234); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x261, &mut x262, x260, x186, x236); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x263, &mut x264, x262, x188, x238); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x265, &mut x266, x264, x190, x240); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x267, &mut x268, x266, x192, x242); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x269, &mut x270, x268, x194, x244); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x271, &mut x272, x270, x196, x246); + let mut x273: u32 = 0; + let mut x274: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x273, &mut x274, x272, x198, x248); + let mut x275: u32 = 0; + let mut x276: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x275, &mut x276, x274, x200, x250); + let mut x277: u32 = 0; + let mut x278: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x277, &mut x278, x276, x202, x252); + let mut x279: u32 = 0; + let mut x280: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x279, &mut x280, x278, x204, x254); + let mut x281: u32 = 0; + let mut x282: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x281, &mut x282, x280, x206, x256); + let x283: u32 = ((x282 as u32) + (x207 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_mulx_u32(&mut x284, &mut x285, x2, (arg1[11])); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_mulx_u32(&mut x286, &mut x287, x2, (arg1[10])); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_mulx_u32(&mut x288, &mut x289, x2, (arg1[9])); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_mulx_u32(&mut x290, &mut x291, x2, (arg1[8])); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_mulx_u32(&mut x292, &mut x293, x2, (arg1[7])); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_mulx_u32(&mut x294, &mut x295, x2, (arg1[6])); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_mulx_u32(&mut x296, &mut x297, x2, (arg1[5])); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_mulx_u32(&mut x298, &mut x299, x2, (arg1[4])); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_mulx_u32(&mut x300, &mut x301, x2, (arg1[3])); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_mulx_u32(&mut x302, &mut x303, x2, (arg1[2])); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_mulx_u32(&mut x304, &mut x305, x2, (arg1[1])); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_mulx_u32(&mut x306, &mut x307, x2, (arg1[0])); + let mut x308: u32 = 0; + let mut x309: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x308, &mut x309, 0x0, x307, x304); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x310, &mut x311, x309, x305, x302); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x312, &mut x313, x311, x303, x300); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x314, &mut x315, x313, x301, x298); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x316, &mut x317, x315, x299, x296); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x318, &mut x319, x317, x297, x294); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x320, &mut x321, x319, x295, x292); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x322, &mut x323, x321, x293, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x324, &mut x325, x323, x291, x288); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x326, &mut x327, x325, x289, x286); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x328, &mut x329, x327, x287, x284); + let x330: u32 = ((x329 as u32) + x285); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x331, &mut x332, 0x0, x259, x306); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x333, &mut x334, x332, x261, x308); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x335, &mut x336, x334, x263, x310); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x337, &mut x338, x336, x265, x312); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x339, &mut x340, x338, x267, x314); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x341, &mut x342, x340, x269, x316); + let mut x343: u32 = 0; + let mut x344: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x343, &mut x344, x342, x271, x318); + let mut x345: u32 = 0; + let mut x346: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x345, &mut x346, x344, x273, x320); + let mut x347: u32 = 0; + let mut x348: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x347, &mut x348, x346, x275, x322); + let mut x349: u32 = 0; + let mut x350: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x349, &mut x350, x348, x277, x324); + let mut x351: u32 = 0; + let mut x352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x351, &mut x352, x350, x279, x326); + let mut x353: u32 = 0; + let mut x354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x353, &mut x354, x352, x281, x328); + let mut x355: u32 = 0; + let mut x356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x355, &mut x356, x354, x283, x330); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_mulx_u32(&mut x357, &mut x358, x331, 0xea9ec825); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_mulx_u32(&mut x359, &mut x360, x357, 0x8cb91e82); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_mulx_u32(&mut x361, &mut x362, x357, 0xa3386d28); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_mulx_u32(&mut x363, &mut x364, x357, 0xf5d6f7e); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_mulx_u32(&mut x365, &mut x366, x357, 0x50e641df); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_mulx_u32(&mut x367, &mut x368, x357, 0x152f7109); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp384_mulx_u32(&mut x369, &mut x370, x357, 0xed5456b4); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp384_mulx_u32(&mut x371, &mut x372, x357, 0x12b1da19); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp384_mulx_u32(&mut x373, &mut x374, x357, 0x7fb71123); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp384_mulx_u32(&mut x375, &mut x376, x357, 0xacd3a729); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp384_mulx_u32(&mut x377, &mut x378, x357, 0x901d1a71); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp384_mulx_u32(&mut x379, &mut x380, x357, 0x87470013); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp384_mulx_u32(&mut x381, &mut x382, x357, 0x3107ec53); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x383, &mut x384, 0x0, x382, x379); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x385, &mut x386, x384, x380, x377); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x387, &mut x388, x386, x378, x375); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x389, &mut x390, x388, x376, x373); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x391, &mut x392, x390, x374, x371); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x393, &mut x394, x392, x372, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x395, &mut x396, x394, x370, x367); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x397, &mut x398, x396, x368, x365); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x399, &mut x400, x398, x366, x363); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x401, &mut x402, x400, x364, x361); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x403, &mut x404, x402, x362, x359); + let x405: u32 = ((x404 as u32) + x360); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x406, &mut x407, 0x0, x331, x381); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x408, &mut x409, x407, x333, x383); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x410, &mut x411, x409, x335, x385); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x412, &mut x413, x411, x337, x387); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x414, &mut x415, x413, x339, x389); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x416, &mut x417, x415, x341, x391); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x418, &mut x419, x417, x343, x393); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x420, &mut x421, x419, x345, x395); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x422, &mut x423, x421, x347, x397); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x424, &mut x425, x423, x349, x399); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x426, &mut x427, x425, x351, x401); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x428, &mut x429, x427, x353, x403); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x430, &mut x431, x429, x355, x405); + let x432: u32 = ((x431 as u32) + (x356 as u32)); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_mulx_u32(&mut x433, &mut x434, x3, (arg1[11])); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_mulx_u32(&mut x435, &mut x436, x3, (arg1[10])); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_mulx_u32(&mut x437, &mut x438, x3, (arg1[9])); + let mut x439: u32 = 0; + let mut x440: u32 = 0; + fiat_bp384_mulx_u32(&mut x439, &mut x440, x3, (arg1[8])); + let mut x441: u32 = 0; + let mut x442: u32 = 0; + fiat_bp384_mulx_u32(&mut x441, &mut x442, x3, (arg1[7])); + let mut x443: u32 = 0; + let mut x444: u32 = 0; + fiat_bp384_mulx_u32(&mut x443, &mut x444, x3, (arg1[6])); + let mut x445: u32 = 0; + let mut x446: u32 = 0; + fiat_bp384_mulx_u32(&mut x445, &mut x446, x3, (arg1[5])); + let mut x447: u32 = 0; + let mut x448: u32 = 0; + fiat_bp384_mulx_u32(&mut x447, &mut x448, x3, (arg1[4])); + let mut x449: u32 = 0; + let mut x450: u32 = 0; + fiat_bp384_mulx_u32(&mut x449, &mut x450, x3, (arg1[3])); + let mut x451: u32 = 0; + let mut x452: u32 = 0; + fiat_bp384_mulx_u32(&mut x451, &mut x452, x3, (arg1[2])); + let mut x453: u32 = 0; + let mut x454: u32 = 0; + fiat_bp384_mulx_u32(&mut x453, &mut x454, x3, (arg1[1])); + let mut x455: u32 = 0; + let mut x456: u32 = 0; + fiat_bp384_mulx_u32(&mut x455, &mut x456, x3, (arg1[0])); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x457, &mut x458, 0x0, x456, x453); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x459, &mut x460, x458, x454, x451); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x461, &mut x462, x460, x452, x449); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x463, &mut x464, x462, x450, x447); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x465, &mut x466, x464, x448, x445); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x467, &mut x468, x466, x446, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x469, &mut x470, x468, x444, x441); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x471, &mut x472, x470, x442, x439); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x473, &mut x474, x472, x440, x437); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x475, &mut x476, x474, x438, x435); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x477, &mut x478, x476, x436, x433); + let x479: u32 = ((x478 as u32) + x434); + let mut x480: u32 = 0; + let mut x481: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x480, &mut x481, 0x0, x408, x455); + let mut x482: u32 = 0; + let mut x483: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x482, &mut x483, x481, x410, x457); + let mut x484: u32 = 0; + let mut x485: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x484, &mut x485, x483, x412, x459); + let mut x486: u32 = 0; + let mut x487: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x486, &mut x487, x485, x414, x461); + let mut x488: u32 = 0; + let mut x489: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x488, &mut x489, x487, x416, x463); + let mut x490: u32 = 0; + let mut x491: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x490, &mut x491, x489, x418, x465); + let mut x492: u32 = 0; + let mut x493: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x492, &mut x493, x491, x420, x467); + let mut x494: u32 = 0; + let mut x495: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x494, &mut x495, x493, x422, x469); + let mut x496: u32 = 0; + let mut x497: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x496, &mut x497, x495, x424, x471); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x498, &mut x499, x497, x426, x473); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x500, &mut x501, x499, x428, x475); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x502, &mut x503, x501, x430, x477); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x504, &mut x505, x503, x432, x479); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp384_mulx_u32(&mut x506, &mut x507, x480, 0xea9ec825); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp384_mulx_u32(&mut x508, &mut x509, x506, 0x8cb91e82); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp384_mulx_u32(&mut x510, &mut x511, x506, 0xa3386d28); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp384_mulx_u32(&mut x512, &mut x513, x506, 0xf5d6f7e); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp384_mulx_u32(&mut x514, &mut x515, x506, 0x50e641df); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp384_mulx_u32(&mut x516, &mut x517, x506, 0x152f7109); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp384_mulx_u32(&mut x518, &mut x519, x506, 0xed5456b4); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp384_mulx_u32(&mut x520, &mut x521, x506, 0x12b1da19); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp384_mulx_u32(&mut x522, &mut x523, x506, 0x7fb71123); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp384_mulx_u32(&mut x524, &mut x525, x506, 0xacd3a729); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp384_mulx_u32(&mut x526, &mut x527, x506, 0x901d1a71); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp384_mulx_u32(&mut x528, &mut x529, x506, 0x87470013); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp384_mulx_u32(&mut x530, &mut x531, x506, 0x3107ec53); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x532, &mut x533, 0x0, x531, x528); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x534, &mut x535, x533, x529, x526); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x536, &mut x537, x535, x527, x524); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x538, &mut x539, x537, x525, x522); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x540, &mut x541, x539, x523, x520); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x542, &mut x543, x541, x521, x518); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x544, &mut x545, x543, x519, x516); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x546, &mut x547, x545, x517, x514); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x548, &mut x549, x547, x515, x512); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x550, &mut x551, x549, x513, x510); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x552, &mut x553, x551, x511, x508); + let x554: u32 = ((x553 as u32) + x509); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x555, &mut x556, 0x0, x480, x530); + let mut x557: u32 = 0; + let mut x558: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x557, &mut x558, x556, x482, x532); + let mut x559: u32 = 0; + let mut x560: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x559, &mut x560, x558, x484, x534); + let mut x561: u32 = 0; + let mut x562: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x561, &mut x562, x560, x486, x536); + let mut x563: u32 = 0; + let mut x564: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x563, &mut x564, x562, x488, x538); + let mut x565: u32 = 0; + let mut x566: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x565, &mut x566, x564, x490, x540); + let mut x567: u32 = 0; + let mut x568: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x567, &mut x568, x566, x492, x542); + let mut x569: u32 = 0; + let mut x570: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x569, &mut x570, x568, x494, x544); + let mut x571: u32 = 0; + let mut x572: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x571, &mut x572, x570, x496, x546); + let mut x573: u32 = 0; + let mut x574: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x573, &mut x574, x572, x498, x548); + let mut x575: u32 = 0; + let mut x576: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x575, &mut x576, x574, x500, x550); + let mut x577: u32 = 0; + let mut x578: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x577, &mut x578, x576, x502, x552); + let mut x579: u32 = 0; + let mut x580: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x579, &mut x580, x578, x504, x554); + let x581: u32 = ((x580 as u32) + (x505 as u32)); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_mulx_u32(&mut x582, &mut x583, x4, (arg1[11])); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_mulx_u32(&mut x584, &mut x585, x4, (arg1[10])); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_mulx_u32(&mut x586, &mut x587, x4, (arg1[9])); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_mulx_u32(&mut x588, &mut x589, x4, (arg1[8])); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_mulx_u32(&mut x590, &mut x591, x4, (arg1[7])); + let mut x592: u32 = 0; + let mut x593: u32 = 0; + fiat_bp384_mulx_u32(&mut x592, &mut x593, x4, (arg1[6])); + let mut x594: u32 = 0; + let mut x595: u32 = 0; + fiat_bp384_mulx_u32(&mut x594, &mut x595, x4, (arg1[5])); + let mut x596: u32 = 0; + let mut x597: u32 = 0; + fiat_bp384_mulx_u32(&mut x596, &mut x597, x4, (arg1[4])); + let mut x598: u32 = 0; + let mut x599: u32 = 0; + fiat_bp384_mulx_u32(&mut x598, &mut x599, x4, (arg1[3])); + let mut x600: u32 = 0; + let mut x601: u32 = 0; + fiat_bp384_mulx_u32(&mut x600, &mut x601, x4, (arg1[2])); + let mut x602: u32 = 0; + let mut x603: u32 = 0; + fiat_bp384_mulx_u32(&mut x602, &mut x603, x4, (arg1[1])); + let mut x604: u32 = 0; + let mut x605: u32 = 0; + fiat_bp384_mulx_u32(&mut x604, &mut x605, x4, (arg1[0])); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x606, &mut x607, 0x0, x605, x602); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x608, &mut x609, x607, x603, x600); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x610, &mut x611, x609, x601, x598); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x612, &mut x613, x611, x599, x596); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x614, &mut x615, x613, x597, x594); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x616, &mut x617, x615, x595, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x618, &mut x619, x617, x593, x590); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x620, &mut x621, x619, x591, x588); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x622, &mut x623, x621, x589, x586); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x624, &mut x625, x623, x587, x584); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x626, &mut x627, x625, x585, x582); + let x628: u32 = ((x627 as u32) + x583); + let mut x629: u32 = 0; + let mut x630: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x629, &mut x630, 0x0, x557, x604); + let mut x631: u32 = 0; + let mut x632: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x631, &mut x632, x630, x559, x606); + let mut x633: u32 = 0; + let mut x634: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x633, &mut x634, x632, x561, x608); + let mut x635: u32 = 0; + let mut x636: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x635, &mut x636, x634, x563, x610); + let mut x637: u32 = 0; + let mut x638: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x637, &mut x638, x636, x565, x612); + let mut x639: u32 = 0; + let mut x640: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x639, &mut x640, x638, x567, x614); + let mut x641: u32 = 0; + let mut x642: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x641, &mut x642, x640, x569, x616); + let mut x643: u32 = 0; + let mut x644: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x643, &mut x644, x642, x571, x618); + let mut x645: u32 = 0; + let mut x646: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x645, &mut x646, x644, x573, x620); + let mut x647: u32 = 0; + let mut x648: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x647, &mut x648, x646, x575, x622); + let mut x649: u32 = 0; + let mut x650: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x649, &mut x650, x648, x577, x624); + let mut x651: u32 = 0; + let mut x652: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x651, &mut x652, x650, x579, x626); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x653, &mut x654, x652, x581, x628); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp384_mulx_u32(&mut x655, &mut x656, x629, 0xea9ec825); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp384_mulx_u32(&mut x657, &mut x658, x655, 0x8cb91e82); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp384_mulx_u32(&mut x659, &mut x660, x655, 0xa3386d28); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp384_mulx_u32(&mut x661, &mut x662, x655, 0xf5d6f7e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp384_mulx_u32(&mut x663, &mut x664, x655, 0x50e641df); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp384_mulx_u32(&mut x665, &mut x666, x655, 0x152f7109); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp384_mulx_u32(&mut x667, &mut x668, x655, 0xed5456b4); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp384_mulx_u32(&mut x669, &mut x670, x655, 0x12b1da19); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp384_mulx_u32(&mut x671, &mut x672, x655, 0x7fb71123); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp384_mulx_u32(&mut x673, &mut x674, x655, 0xacd3a729); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp384_mulx_u32(&mut x675, &mut x676, x655, 0x901d1a71); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp384_mulx_u32(&mut x677, &mut x678, x655, 0x87470013); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp384_mulx_u32(&mut x679, &mut x680, x655, 0x3107ec53); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x681, &mut x682, 0x0, x680, x677); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x683, &mut x684, x682, x678, x675); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x685, &mut x686, x684, x676, x673); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x687, &mut x688, x686, x674, x671); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x689, &mut x690, x688, x672, x669); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x691, &mut x692, x690, x670, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x693, &mut x694, x692, x668, x665); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x695, &mut x696, x694, x666, x663); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x697, &mut x698, x696, x664, x661); + let mut x699: u32 = 0; + let mut x700: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x699, &mut x700, x698, x662, x659); + let mut x701: u32 = 0; + let mut x702: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x701, &mut x702, x700, x660, x657); + let x703: u32 = ((x702 as u32) + x658); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x704, &mut x705, 0x0, x629, x679); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x706, &mut x707, x705, x631, x681); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x708, &mut x709, x707, x633, x683); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x710, &mut x711, x709, x635, x685); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x712, &mut x713, x711, x637, x687); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x714, &mut x715, x713, x639, x689); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x716, &mut x717, x715, x641, x691); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x718, &mut x719, x717, x643, x693); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x720, &mut x721, x719, x645, x695); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x722, &mut x723, x721, x647, x697); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x724, &mut x725, x723, x649, x699); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x726, &mut x727, x725, x651, x701); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x728, &mut x729, x727, x653, x703); + let x730: u32 = ((x729 as u32) + (x654 as u32)); + let mut x731: u32 = 0; + let mut x732: u32 = 0; + fiat_bp384_mulx_u32(&mut x731, &mut x732, x5, (arg1[11])); + let mut x733: u32 = 0; + let mut x734: u32 = 0; + fiat_bp384_mulx_u32(&mut x733, &mut x734, x5, (arg1[10])); + let mut x735: u32 = 0; + let mut x736: u32 = 0; + fiat_bp384_mulx_u32(&mut x735, &mut x736, x5, (arg1[9])); + let mut x737: u32 = 0; + let mut x738: u32 = 0; + fiat_bp384_mulx_u32(&mut x737, &mut x738, x5, (arg1[8])); + let mut x739: u32 = 0; + let mut x740: u32 = 0; + fiat_bp384_mulx_u32(&mut x739, &mut x740, x5, (arg1[7])); + let mut x741: u32 = 0; + let mut x742: u32 = 0; + fiat_bp384_mulx_u32(&mut x741, &mut x742, x5, (arg1[6])); + let mut x743: u32 = 0; + let mut x744: u32 = 0; + fiat_bp384_mulx_u32(&mut x743, &mut x744, x5, (arg1[5])); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp384_mulx_u32(&mut x745, &mut x746, x5, (arg1[4])); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp384_mulx_u32(&mut x747, &mut x748, x5, (arg1[3])); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp384_mulx_u32(&mut x749, &mut x750, x5, (arg1[2])); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp384_mulx_u32(&mut x751, &mut x752, x5, (arg1[1])); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp384_mulx_u32(&mut x753, &mut x754, x5, (arg1[0])); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x755, &mut x756, 0x0, x754, x751); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x757, &mut x758, x756, x752, x749); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x759, &mut x760, x758, x750, x747); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x761, &mut x762, x760, x748, x745); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x763, &mut x764, x762, x746, x743); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x765, &mut x766, x764, x744, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x767, &mut x768, x766, x742, x739); + let mut x769: u32 = 0; + let mut x770: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x769, &mut x770, x768, x740, x737); + let mut x771: u32 = 0; + let mut x772: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x771, &mut x772, x770, x738, x735); + let mut x773: u32 = 0; + let mut x774: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x773, &mut x774, x772, x736, x733); + let mut x775: u32 = 0; + let mut x776: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x775, &mut x776, x774, x734, x731); + let x777: u32 = ((x776 as u32) + x732); + let mut x778: u32 = 0; + let mut x779: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x778, &mut x779, 0x0, x706, x753); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x780, &mut x781, x779, x708, x755); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x782, &mut x783, x781, x710, x757); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x784, &mut x785, x783, x712, x759); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x786, &mut x787, x785, x714, x761); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x788, &mut x789, x787, x716, x763); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x790, &mut x791, x789, x718, x765); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x792, &mut x793, x791, x720, x767); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x794, &mut x795, x793, x722, x769); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x796, &mut x797, x795, x724, x771); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x798, &mut x799, x797, x726, x773); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x800, &mut x801, x799, x728, x775); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x802, &mut x803, x801, x730, x777); + let mut x804: u32 = 0; + let mut x805: u32 = 0; + fiat_bp384_mulx_u32(&mut x804, &mut x805, x778, 0xea9ec825); + let mut x806: u32 = 0; + let mut x807: u32 = 0; + fiat_bp384_mulx_u32(&mut x806, &mut x807, x804, 0x8cb91e82); + let mut x808: u32 = 0; + let mut x809: u32 = 0; + fiat_bp384_mulx_u32(&mut x808, &mut x809, x804, 0xa3386d28); + let mut x810: u32 = 0; + let mut x811: u32 = 0; + fiat_bp384_mulx_u32(&mut x810, &mut x811, x804, 0xf5d6f7e); + let mut x812: u32 = 0; + let mut x813: u32 = 0; + fiat_bp384_mulx_u32(&mut x812, &mut x813, x804, 0x50e641df); + let mut x814: u32 = 0; + let mut x815: u32 = 0; + fiat_bp384_mulx_u32(&mut x814, &mut x815, x804, 0x152f7109); + let mut x816: u32 = 0; + let mut x817: u32 = 0; + fiat_bp384_mulx_u32(&mut x816, &mut x817, x804, 0xed5456b4); + let mut x818: u32 = 0; + let mut x819: u32 = 0; + fiat_bp384_mulx_u32(&mut x818, &mut x819, x804, 0x12b1da19); + let mut x820: u32 = 0; + let mut x821: u32 = 0; + fiat_bp384_mulx_u32(&mut x820, &mut x821, x804, 0x7fb71123); + let mut x822: u32 = 0; + let mut x823: u32 = 0; + fiat_bp384_mulx_u32(&mut x822, &mut x823, x804, 0xacd3a729); + let mut x824: u32 = 0; + let mut x825: u32 = 0; + fiat_bp384_mulx_u32(&mut x824, &mut x825, x804, 0x901d1a71); + let mut x826: u32 = 0; + let mut x827: u32 = 0; + fiat_bp384_mulx_u32(&mut x826, &mut x827, x804, 0x87470013); + let mut x828: u32 = 0; + let mut x829: u32 = 0; + fiat_bp384_mulx_u32(&mut x828, &mut x829, x804, 0x3107ec53); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x830, &mut x831, 0x0, x829, x826); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x832, &mut x833, x831, x827, x824); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x834, &mut x835, x833, x825, x822); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x836, &mut x837, x835, x823, x820); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x838, &mut x839, x837, x821, x818); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x840, &mut x841, x839, x819, x816); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x842, &mut x843, x841, x817, x814); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x844, &mut x845, x843, x815, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x846, &mut x847, x845, x813, x810); + let mut x848: u32 = 0; + let mut x849: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x848, &mut x849, x847, x811, x808); + let mut x850: u32 = 0; + let mut x851: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x850, &mut x851, x849, x809, x806); + let x852: u32 = ((x851 as u32) + x807); + let mut x853: u32 = 0; + let mut x854: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x853, &mut x854, 0x0, x778, x828); + let mut x855: u32 = 0; + let mut x856: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x855, &mut x856, x854, x780, x830); + let mut x857: u32 = 0; + let mut x858: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x857, &mut x858, x856, x782, x832); + let mut x859: u32 = 0; + let mut x860: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x859, &mut x860, x858, x784, x834); + let mut x861: u32 = 0; + let mut x862: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x861, &mut x862, x860, x786, x836); + let mut x863: u32 = 0; + let mut x864: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x863, &mut x864, x862, x788, x838); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x865, &mut x866, x864, x790, x840); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x867, &mut x868, x866, x792, x842); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x869, &mut x870, x868, x794, x844); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x871, &mut x872, x870, x796, x846); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x873, &mut x874, x872, x798, x848); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x875, &mut x876, x874, x800, x850); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x877, &mut x878, x876, x802, x852); + let x879: u32 = ((x878 as u32) + (x803 as u32)); + let mut x880: u32 = 0; + let mut x881: u32 = 0; + fiat_bp384_mulx_u32(&mut x880, &mut x881, x6, (arg1[11])); + let mut x882: u32 = 0; + let mut x883: u32 = 0; + fiat_bp384_mulx_u32(&mut x882, &mut x883, x6, (arg1[10])); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp384_mulx_u32(&mut x884, &mut x885, x6, (arg1[9])); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp384_mulx_u32(&mut x886, &mut x887, x6, (arg1[8])); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp384_mulx_u32(&mut x888, &mut x889, x6, (arg1[7])); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp384_mulx_u32(&mut x890, &mut x891, x6, (arg1[6])); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp384_mulx_u32(&mut x892, &mut x893, x6, (arg1[5])); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp384_mulx_u32(&mut x894, &mut x895, x6, (arg1[4])); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp384_mulx_u32(&mut x896, &mut x897, x6, (arg1[3])); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp384_mulx_u32(&mut x898, &mut x899, x6, (arg1[2])); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp384_mulx_u32(&mut x900, &mut x901, x6, (arg1[1])); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp384_mulx_u32(&mut x902, &mut x903, x6, (arg1[0])); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x904, &mut x905, 0x0, x903, x900); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x906, &mut x907, x905, x901, x898); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x908, &mut x909, x907, x899, x896); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x910, &mut x911, x909, x897, x894); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x912, &mut x913, x911, x895, x892); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x914, &mut x915, x913, x893, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x916, &mut x917, x915, x891, x888); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x918, &mut x919, x917, x889, x886); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x920, &mut x921, x919, x887, x884); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x922, &mut x923, x921, x885, x882); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x924, &mut x925, x923, x883, x880); + let x926: u32 = ((x925 as u32) + x881); + let mut x927: u32 = 0; + let mut x928: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x927, &mut x928, 0x0, x855, x902); + let mut x929: u32 = 0; + let mut x930: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x929, &mut x930, x928, x857, x904); + let mut x931: u32 = 0; + let mut x932: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x931, &mut x932, x930, x859, x906); + let mut x933: u32 = 0; + let mut x934: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x933, &mut x934, x932, x861, x908); + let mut x935: u32 = 0; + let mut x936: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x935, &mut x936, x934, x863, x910); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x937, &mut x938, x936, x865, x912); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x939, &mut x940, x938, x867, x914); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x941, &mut x942, x940, x869, x916); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x943, &mut x944, x942, x871, x918); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x945, &mut x946, x944, x873, x920); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x947, &mut x948, x946, x875, x922); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x949, &mut x950, x948, x877, x924); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x951, &mut x952, x950, x879, x926); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp384_mulx_u32(&mut x953, &mut x954, x927, 0xea9ec825); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp384_mulx_u32(&mut x955, &mut x956, x953, 0x8cb91e82); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp384_mulx_u32(&mut x957, &mut x958, x953, 0xa3386d28); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp384_mulx_u32(&mut x959, &mut x960, x953, 0xf5d6f7e); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp384_mulx_u32(&mut x961, &mut x962, x953, 0x50e641df); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp384_mulx_u32(&mut x963, &mut x964, x953, 0x152f7109); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp384_mulx_u32(&mut x965, &mut x966, x953, 0xed5456b4); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp384_mulx_u32(&mut x967, &mut x968, x953, 0x12b1da19); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp384_mulx_u32(&mut x969, &mut x970, x953, 0x7fb71123); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp384_mulx_u32(&mut x971, &mut x972, x953, 0xacd3a729); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp384_mulx_u32(&mut x973, &mut x974, x953, 0x901d1a71); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp384_mulx_u32(&mut x975, &mut x976, x953, 0x87470013); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp384_mulx_u32(&mut x977, &mut x978, x953, 0x3107ec53); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x979, &mut x980, 0x0, x978, x975); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x981, &mut x982, x980, x976, x973); + let mut x983: u32 = 0; + let mut x984: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x983, &mut x984, x982, x974, x971); + let mut x985: u32 = 0; + let mut x986: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x985, &mut x986, x984, x972, x969); + let mut x987: u32 = 0; + let mut x988: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x987, &mut x988, x986, x970, x967); + let mut x989: u32 = 0; + let mut x990: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x989, &mut x990, x988, x968, x965); + let mut x991: u32 = 0; + let mut x992: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x991, &mut x992, x990, x966, x963); + let mut x993: u32 = 0; + let mut x994: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x993, &mut x994, x992, x964, x961); + let mut x995: u32 = 0; + let mut x996: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x995, &mut x996, x994, x962, x959); + let mut x997: u32 = 0; + let mut x998: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x997, &mut x998, x996, x960, x957); + let mut x999: u32 = 0; + let mut x1000: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x999, &mut x1000, x998, x958, x955); + let x1001: u32 = ((x1000 as u32) + x956); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1002, &mut x1003, 0x0, x927, x977); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1004, &mut x1005, x1003, x929, x979); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1006, &mut x1007, x1005, x931, x981); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1008, &mut x1009, x1007, x933, x983); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1010, &mut x1011, x1009, x935, x985); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1012, &mut x1013, x1011, x937, x987); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1014, &mut x1015, x1013, x939, x989); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1016, &mut x1017, x1015, x941, x991); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1018, &mut x1019, x1017, x943, x993); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1020, &mut x1021, x1019, x945, x995); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1022, &mut x1023, x1021, x947, x997); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1024, &mut x1025, x1023, x949, x999); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1026, &mut x1027, x1025, x951, x1001); + let x1028: u32 = ((x1027 as u32) + (x952 as u32)); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp384_mulx_u32(&mut x1029, &mut x1030, x7, (arg1[11])); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp384_mulx_u32(&mut x1031, &mut x1032, x7, (arg1[10])); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp384_mulx_u32(&mut x1033, &mut x1034, x7, (arg1[9])); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp384_mulx_u32(&mut x1035, &mut x1036, x7, (arg1[8])); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp384_mulx_u32(&mut x1037, &mut x1038, x7, (arg1[7])); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp384_mulx_u32(&mut x1039, &mut x1040, x7, (arg1[6])); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp384_mulx_u32(&mut x1041, &mut x1042, x7, (arg1[5])); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp384_mulx_u32(&mut x1043, &mut x1044, x7, (arg1[4])); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp384_mulx_u32(&mut x1045, &mut x1046, x7, (arg1[3])); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp384_mulx_u32(&mut x1047, &mut x1048, x7, (arg1[2])); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp384_mulx_u32(&mut x1049, &mut x1050, x7, (arg1[1])); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp384_mulx_u32(&mut x1051, &mut x1052, x7, (arg1[0])); + let mut x1053: u32 = 0; + let mut x1054: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1053, &mut x1054, 0x0, x1052, x1049); + let mut x1055: u32 = 0; + let mut x1056: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1055, &mut x1056, x1054, x1050, x1047); + let mut x1057: u32 = 0; + let mut x1058: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1057, &mut x1058, x1056, x1048, x1045); + let mut x1059: u32 = 0; + let mut x1060: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1059, &mut x1060, x1058, x1046, x1043); + let mut x1061: u32 = 0; + let mut x1062: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1061, &mut x1062, x1060, x1044, x1041); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1063, &mut x1064, x1062, x1042, x1039); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1040, x1037); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1038, x1035); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1036, x1033); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1034, x1031); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1032, x1029); + let x1075: u32 = ((x1074 as u32) + x1030); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1076, &mut x1077, 0x0, x1004, x1051); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1006, x1053); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1008, x1055); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1010, x1057); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1084, &mut x1085, x1083, x1012, x1059); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1014, x1061); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1016, x1063); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1018, x1065); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1020, x1067); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1022, x1069); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1024, x1071); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1026, x1073); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1028, x1075); + let mut x1102: u32 = 0; + let mut x1103: u32 = 0; + fiat_bp384_mulx_u32(&mut x1102, &mut x1103, x1076, 0xea9ec825); + let mut x1104: u32 = 0; + let mut x1105: u32 = 0; + fiat_bp384_mulx_u32(&mut x1104, &mut x1105, x1102, 0x8cb91e82); + let mut x1106: u32 = 0; + let mut x1107: u32 = 0; + fiat_bp384_mulx_u32(&mut x1106, &mut x1107, x1102, 0xa3386d28); + let mut x1108: u32 = 0; + let mut x1109: u32 = 0; + fiat_bp384_mulx_u32(&mut x1108, &mut x1109, x1102, 0xf5d6f7e); + let mut x1110: u32 = 0; + let mut x1111: u32 = 0; + fiat_bp384_mulx_u32(&mut x1110, &mut x1111, x1102, 0x50e641df); + let mut x1112: u32 = 0; + let mut x1113: u32 = 0; + fiat_bp384_mulx_u32(&mut x1112, &mut x1113, x1102, 0x152f7109); + let mut x1114: u32 = 0; + let mut x1115: u32 = 0; + fiat_bp384_mulx_u32(&mut x1114, &mut x1115, x1102, 0xed5456b4); + let mut x1116: u32 = 0; + let mut x1117: u32 = 0; + fiat_bp384_mulx_u32(&mut x1116, &mut x1117, x1102, 0x12b1da19); + let mut x1118: u32 = 0; + let mut x1119: u32 = 0; + fiat_bp384_mulx_u32(&mut x1118, &mut x1119, x1102, 0x7fb71123); + let mut x1120: u32 = 0; + let mut x1121: u32 = 0; + fiat_bp384_mulx_u32(&mut x1120, &mut x1121, x1102, 0xacd3a729); + let mut x1122: u32 = 0; + let mut x1123: u32 = 0; + fiat_bp384_mulx_u32(&mut x1122, &mut x1123, x1102, 0x901d1a71); + let mut x1124: u32 = 0; + let mut x1125: u32 = 0; + fiat_bp384_mulx_u32(&mut x1124, &mut x1125, x1102, 0x87470013); + let mut x1126: u32 = 0; + let mut x1127: u32 = 0; + fiat_bp384_mulx_u32(&mut x1126, &mut x1127, x1102, 0x3107ec53); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1128, &mut x1129, 0x0, x1127, x1124); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1125, x1122); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1123, x1120); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1121, x1118); + let mut x1136: u32 = 0; + let mut x1137: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1136, &mut x1137, x1135, x1119, x1116); + let mut x1138: u32 = 0; + let mut x1139: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1138, &mut x1139, x1137, x1117, x1114); + let mut x1140: u32 = 0; + let mut x1141: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1140, &mut x1141, x1139, x1115, x1112); + let mut x1142: u32 = 0; + let mut x1143: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1142, &mut x1143, x1141, x1113, x1110); + let mut x1144: u32 = 0; + let mut x1145: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1144, &mut x1145, x1143, x1111, x1108); + let mut x1146: u32 = 0; + let mut x1147: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1146, &mut x1147, x1145, x1109, x1106); + let mut x1148: u32 = 0; + let mut x1149: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1148, &mut x1149, x1147, x1107, x1104); + let x1150: u32 = ((x1149 as u32) + x1105); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1151, &mut x1152, 0x0, x1076, x1126); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1078, x1128); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1080, x1130); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1082, x1132); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1084, x1134); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1086, x1136); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1088, x1138); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1090, x1140); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1092, x1142); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1094, x1144); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1096, x1146); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1098, x1148); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1100, x1150); + let x1177: u32 = ((x1176 as u32) + (x1101 as u32)); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp384_mulx_u32(&mut x1178, &mut x1179, x8, (arg1[11])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp384_mulx_u32(&mut x1180, &mut x1181, x8, (arg1[10])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp384_mulx_u32(&mut x1182, &mut x1183, x8, (arg1[9])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp384_mulx_u32(&mut x1184, &mut x1185, x8, (arg1[8])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp384_mulx_u32(&mut x1186, &mut x1187, x8, (arg1[7])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp384_mulx_u32(&mut x1188, &mut x1189, x8, (arg1[6])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp384_mulx_u32(&mut x1190, &mut x1191, x8, (arg1[5])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp384_mulx_u32(&mut x1192, &mut x1193, x8, (arg1[4])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp384_mulx_u32(&mut x1194, &mut x1195, x8, (arg1[3])); + let mut x1196: u32 = 0; + let mut x1197: u32 = 0; + fiat_bp384_mulx_u32(&mut x1196, &mut x1197, x8, (arg1[2])); + let mut x1198: u32 = 0; + let mut x1199: u32 = 0; + fiat_bp384_mulx_u32(&mut x1198, &mut x1199, x8, (arg1[1])); + let mut x1200: u32 = 0; + let mut x1201: u32 = 0; + fiat_bp384_mulx_u32(&mut x1200, &mut x1201, x8, (arg1[0])); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1202, &mut x1203, 0x0, x1201, x1198); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1199, x1196); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1197, x1194); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1195, x1192); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1193, x1190); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1191, x1188); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1189, x1186); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1187, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1185, x1182); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1183, x1180); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1181, x1178); + let x1224: u32 = ((x1223 as u32) + x1179); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1225, &mut x1226, 0x0, x1153, x1200); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1155, x1202); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1157, x1204); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1159, x1206); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1161, x1208); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1163, x1210); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1165, x1212); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1167, x1214); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1169, x1216); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1171, x1218); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1220); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1222); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1224); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp384_mulx_u32(&mut x1251, &mut x1252, x1225, 0xea9ec825); + let mut x1253: u32 = 0; + let mut x1254: u32 = 0; + fiat_bp384_mulx_u32(&mut x1253, &mut x1254, x1251, 0x8cb91e82); + let mut x1255: u32 = 0; + let mut x1256: u32 = 0; + fiat_bp384_mulx_u32(&mut x1255, &mut x1256, x1251, 0xa3386d28); + let mut x1257: u32 = 0; + let mut x1258: u32 = 0; + fiat_bp384_mulx_u32(&mut x1257, &mut x1258, x1251, 0xf5d6f7e); + let mut x1259: u32 = 0; + let mut x1260: u32 = 0; + fiat_bp384_mulx_u32(&mut x1259, &mut x1260, x1251, 0x50e641df); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp384_mulx_u32(&mut x1261, &mut x1262, x1251, 0x152f7109); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp384_mulx_u32(&mut x1263, &mut x1264, x1251, 0xed5456b4); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp384_mulx_u32(&mut x1265, &mut x1266, x1251, 0x12b1da19); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_mulx_u32(&mut x1267, &mut x1268, x1251, 0x7fb71123); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_mulx_u32(&mut x1269, &mut x1270, x1251, 0xacd3a729); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_mulx_u32(&mut x1271, &mut x1272, x1251, 0x901d1a71); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_mulx_u32(&mut x1273, &mut x1274, x1251, 0x87470013); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_mulx_u32(&mut x1275, &mut x1276, x1251, 0x3107ec53); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1277, &mut x1278, 0x0, x1276, x1273); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1274, x1271); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1272, x1269); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1283, &mut x1284, x1282, x1270, x1267); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1268, x1265); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1266, x1263); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1264, x1261); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1262, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1260, x1257); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1258, x1255); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1256, x1253); + let x1299: u32 = ((x1298 as u32) + x1254); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1300, &mut x1301, 0x0, x1225, x1275); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1227, x1277); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1229, x1279); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1231, x1281); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1233, x1283); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1235, x1285); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1237, x1287); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1239, x1289); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1241, x1291); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1243, x1293); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1245, x1295); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1247, x1297); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1249, x1299); + let x1326: u32 = ((x1325 as u32) + (x1250 as u32)); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp384_mulx_u32(&mut x1327, &mut x1328, x9, (arg1[11])); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp384_mulx_u32(&mut x1329, &mut x1330, x9, (arg1[10])); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp384_mulx_u32(&mut x1331, &mut x1332, x9, (arg1[9])); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp384_mulx_u32(&mut x1333, &mut x1334, x9, (arg1[8])); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp384_mulx_u32(&mut x1335, &mut x1336, x9, (arg1[7])); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_mulx_u32(&mut x1337, &mut x1338, x9, (arg1[6])); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_mulx_u32(&mut x1339, &mut x1340, x9, (arg1[5])); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_mulx_u32(&mut x1341, &mut x1342, x9, (arg1[4])); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_mulx_u32(&mut x1343, &mut x1344, x9, (arg1[3])); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_mulx_u32(&mut x1345, &mut x1346, x9, (arg1[2])); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_mulx_u32(&mut x1347, &mut x1348, x9, (arg1[1])); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_mulx_u32(&mut x1349, &mut x1350, x9, (arg1[0])); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1351, &mut x1352, 0x0, x1350, x1347); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1348, x1345); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1346, x1343); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1344, x1341); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1342, x1339); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1340, x1337); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1338, x1335); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1336, x1333); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1334, x1331); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1332, x1329); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1330, x1327); + let x1373: u32 = ((x1372 as u32) + x1328); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1374, &mut x1375, 0x0, x1302, x1349); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1304, x1351); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1306, x1353); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1308, x1355); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1310, x1357); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1312, x1359); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1314, x1361); + let mut x1388: u32 = 0; + let mut x1389: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1388, &mut x1389, x1387, x1316, x1363); + let mut x1390: u32 = 0; + let mut x1391: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1390, &mut x1391, x1389, x1318, x1365); + let mut x1392: u32 = 0; + let mut x1393: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1392, &mut x1393, x1391, x1320, x1367); + let mut x1394: u32 = 0; + let mut x1395: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1394, &mut x1395, x1393, x1322, x1369); + let mut x1396: u32 = 0; + let mut x1397: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1396, &mut x1397, x1395, x1324, x1371); + let mut x1398: u32 = 0; + let mut x1399: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1398, &mut x1399, x1397, x1326, x1373); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp384_mulx_u32(&mut x1400, &mut x1401, x1374, 0xea9ec825); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp384_mulx_u32(&mut x1402, &mut x1403, x1400, 0x8cb91e82); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp384_mulx_u32(&mut x1404, &mut x1405, x1400, 0xa3386d28); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp384_mulx_u32(&mut x1406, &mut x1407, x1400, 0xf5d6f7e); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp384_mulx_u32(&mut x1408, &mut x1409, x1400, 0x50e641df); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp384_mulx_u32(&mut x1410, &mut x1411, x1400, 0x152f7109); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp384_mulx_u32(&mut x1412, &mut x1413, x1400, 0xed5456b4); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp384_mulx_u32(&mut x1414, &mut x1415, x1400, 0x12b1da19); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp384_mulx_u32(&mut x1416, &mut x1417, x1400, 0x7fb71123); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp384_mulx_u32(&mut x1418, &mut x1419, x1400, 0xacd3a729); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp384_mulx_u32(&mut x1420, &mut x1421, x1400, 0x901d1a71); + let mut x1422: u32 = 0; + let mut x1423: u32 = 0; + fiat_bp384_mulx_u32(&mut x1422, &mut x1423, x1400, 0x87470013); + let mut x1424: u32 = 0; + let mut x1425: u32 = 0; + fiat_bp384_mulx_u32(&mut x1424, &mut x1425, x1400, 0x3107ec53); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1426, &mut x1427, 0x0, x1425, x1422); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1423, x1420); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1421, x1418); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1419, x1416); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1417, x1414); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1415, x1412); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1413, x1410); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1411, x1408); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1409, x1406); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1407, x1404); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1405, x1402); + let x1448: u32 = ((x1447 as u32) + x1403); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1449, &mut x1450, 0x0, x1374, x1424); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1376, x1426); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1378, x1428); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1380, x1430); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1382, x1432); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1384, x1434); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1386, x1436); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1388, x1438); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1390, x1440); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1392, x1442); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1394, x1444); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1396, x1446); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1398, x1448); + let x1475: u32 = ((x1474 as u32) + (x1399 as u32)); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp384_mulx_u32(&mut x1476, &mut x1477, x10, (arg1[11])); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp384_mulx_u32(&mut x1478, &mut x1479, x10, (arg1[10])); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp384_mulx_u32(&mut x1480, &mut x1481, x10, (arg1[9])); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp384_mulx_u32(&mut x1482, &mut x1483, x10, (arg1[8])); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp384_mulx_u32(&mut x1484, &mut x1485, x10, (arg1[7])); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp384_mulx_u32(&mut x1486, &mut x1487, x10, (arg1[6])); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp384_mulx_u32(&mut x1488, &mut x1489, x10, (arg1[5])); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp384_mulx_u32(&mut x1490, &mut x1491, x10, (arg1[4])); + let mut x1492: u32 = 0; + let mut x1493: u32 = 0; + fiat_bp384_mulx_u32(&mut x1492, &mut x1493, x10, (arg1[3])); + let mut x1494: u32 = 0; + let mut x1495: u32 = 0; + fiat_bp384_mulx_u32(&mut x1494, &mut x1495, x10, (arg1[2])); + let mut x1496: u32 = 0; + let mut x1497: u32 = 0; + fiat_bp384_mulx_u32(&mut x1496, &mut x1497, x10, (arg1[1])); + let mut x1498: u32 = 0; + let mut x1499: u32 = 0; + fiat_bp384_mulx_u32(&mut x1498, &mut x1499, x10, (arg1[0])); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1500, &mut x1501, 0x0, x1499, x1496); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1497, x1494); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1495, x1492); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1493, x1490); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1491, x1488); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1489, x1486); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1487, x1484); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1485, x1482); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1483, x1480); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1481, x1478); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1479, x1476); + let x1522: u32 = ((x1521 as u32) + x1477); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1451, x1498); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1453, x1500); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1455, x1502); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1504); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1506); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1508); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1510); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1512); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1514); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1516); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1518); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1520); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1522); + let mut x1549: u32 = 0; + let mut x1550: u32 = 0; + fiat_bp384_mulx_u32(&mut x1549, &mut x1550, x1523, 0xea9ec825); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_mulx_u32(&mut x1551, &mut x1552, x1549, 0x8cb91e82); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_mulx_u32(&mut x1553, &mut x1554, x1549, 0xa3386d28); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_mulx_u32(&mut x1555, &mut x1556, x1549, 0xf5d6f7e); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_mulx_u32(&mut x1557, &mut x1558, x1549, 0x50e641df); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_mulx_u32(&mut x1559, &mut x1560, x1549, 0x152f7109); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_mulx_u32(&mut x1561, &mut x1562, x1549, 0xed5456b4); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_mulx_u32(&mut x1563, &mut x1564, x1549, 0x12b1da19); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_mulx_u32(&mut x1565, &mut x1566, x1549, 0x7fb71123); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_mulx_u32(&mut x1567, &mut x1568, x1549, 0xacd3a729); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_mulx_u32(&mut x1569, &mut x1570, x1549, 0x901d1a71); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_mulx_u32(&mut x1571, &mut x1572, x1549, 0x87470013); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_mulx_u32(&mut x1573, &mut x1574, x1549, 0x3107ec53); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let x1597: u32 = ((x1596 as u32) + x1552); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1598, &mut x1599, 0x0, x1523, x1573); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1525, x1575); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1527, x1577); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1529, x1579); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1531, x1581); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1533, x1583); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1535, x1585); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1537, x1587); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1539, x1589); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1541, x1591); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1543, x1593); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1545, x1595); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1547, x1597); + let x1624: u32 = ((x1623 as u32) + (x1548 as u32)); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_mulx_u32(&mut x1625, &mut x1626, x11, (arg1[11])); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_mulx_u32(&mut x1627, &mut x1628, x11, (arg1[10])); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_mulx_u32(&mut x1629, &mut x1630, x11, (arg1[9])); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_mulx_u32(&mut x1631, &mut x1632, x11, (arg1[8])); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_mulx_u32(&mut x1633, &mut x1634, x11, (arg1[7])); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_mulx_u32(&mut x1635, &mut x1636, x11, (arg1[6])); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_mulx_u32(&mut x1637, &mut x1638, x11, (arg1[5])); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_mulx_u32(&mut x1639, &mut x1640, x11, (arg1[4])); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_mulx_u32(&mut x1641, &mut x1642, x11, (arg1[3])); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_mulx_u32(&mut x1643, &mut x1644, x11, (arg1[2])); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_mulx_u32(&mut x1645, &mut x1646, x11, (arg1[1])); + let mut x1647: u32 = 0; + let mut x1648: u32 = 0; + fiat_bp384_mulx_u32(&mut x1647, &mut x1648, x11, (arg1[0])); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1649, &mut x1650, 0x0, x1648, x1645); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1646, x1643); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1644, x1641); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1642, x1639); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1640, x1637); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1638, x1635); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1636, x1633); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1634, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1632, x1629); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1630, x1627); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1628, x1625); + let x1671: u32 = ((x1670 as u32) + x1626); + let mut x1672: u32 = 0; + let mut x1673: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1672, &mut x1673, 0x0, x1600, x1647); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1674, &mut x1675, x1673, x1602, x1649); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1604, x1651); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1606, x1653); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1608, x1655); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1610, x1657); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1612, x1659); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1614, x1661); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1616, x1663); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1618, x1665); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1620, x1667); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1622, x1669); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1624, x1671); + let mut x1698: u32 = 0; + let mut x1699: u32 = 0; + fiat_bp384_mulx_u32(&mut x1698, &mut x1699, x1672, 0xea9ec825); + let mut x1700: u32 = 0; + let mut x1701: u32 = 0; + fiat_bp384_mulx_u32(&mut x1700, &mut x1701, x1698, 0x8cb91e82); + let mut x1702: u32 = 0; + let mut x1703: u32 = 0; + fiat_bp384_mulx_u32(&mut x1702, &mut x1703, x1698, 0xa3386d28); + let mut x1704: u32 = 0; + let mut x1705: u32 = 0; + fiat_bp384_mulx_u32(&mut x1704, &mut x1705, x1698, 0xf5d6f7e); + let mut x1706: u32 = 0; + let mut x1707: u32 = 0; + fiat_bp384_mulx_u32(&mut x1706, &mut x1707, x1698, 0x50e641df); + let mut x1708: u32 = 0; + let mut x1709: u32 = 0; + fiat_bp384_mulx_u32(&mut x1708, &mut x1709, x1698, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: u32 = 0; + fiat_bp384_mulx_u32(&mut x1710, &mut x1711, x1698, 0xed5456b4); + let mut x1712: u32 = 0; + let mut x1713: u32 = 0; + fiat_bp384_mulx_u32(&mut x1712, &mut x1713, x1698, 0x12b1da19); + let mut x1714: u32 = 0; + let mut x1715: u32 = 0; + fiat_bp384_mulx_u32(&mut x1714, &mut x1715, x1698, 0x7fb71123); + let mut x1716: u32 = 0; + let mut x1717: u32 = 0; + fiat_bp384_mulx_u32(&mut x1716, &mut x1717, x1698, 0xacd3a729); + let mut x1718: u32 = 0; + let mut x1719: u32 = 0; + fiat_bp384_mulx_u32(&mut x1718, &mut x1719, x1698, 0x901d1a71); + let mut x1720: u32 = 0; + let mut x1721: u32 = 0; + fiat_bp384_mulx_u32(&mut x1720, &mut x1721, x1698, 0x87470013); + let mut x1722: u32 = 0; + let mut x1723: u32 = 0; + fiat_bp384_mulx_u32(&mut x1722, &mut x1723, x1698, 0x3107ec53); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1724, &mut x1725, 0x0, x1723, x1720); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1721, x1718); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1719, x1716); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1717, x1714); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1715, x1712); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1713, x1710); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1711, x1708); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1709, x1706); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1707, x1704); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1705, x1702); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1703, x1700); + let x1746: u32 = ((x1745 as u32) + x1701); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1747, &mut x1748, 0x0, x1672, x1722); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1674, x1724); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1676, x1726); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1678, x1728); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1680, x1730); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1757, &mut x1758, x1756, x1682, x1732); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1684, x1734); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1686, x1736); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1688, x1738); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1690, x1740); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1692, x1742); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1694, x1744); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1696, x1746); + let x1773: u32 = ((x1772 as u32) + (x1697 as u32)); + let mut x1774: u32 = 0; + let mut x1775: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1774, &mut x1775, 0x0, x1749, 0x3107ec53); + let mut x1776: u32 = 0; + let mut x1777: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1776, &mut x1777, x1775, x1751, 0x87470013); + let mut x1778: u32 = 0; + let mut x1779: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1778, &mut x1779, x1777, x1753, 0x901d1a71); + let mut x1780: u32 = 0; + let mut x1781: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1780, &mut x1781, x1779, x1755, 0xacd3a729); + let mut x1782: u32 = 0; + let mut x1783: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1782, &mut x1783, x1781, x1757, 0x7fb71123); + let mut x1784: u32 = 0; + let mut x1785: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1784, &mut x1785, x1783, x1759, 0x12b1da19); + let mut x1786: u32 = 0; + let mut x1787: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1786, &mut x1787, x1785, x1761, 0xed5456b4); + let mut x1788: u32 = 0; + let mut x1789: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1788, &mut x1789, x1787, x1763, 0x152f7109); + let mut x1790: u32 = 0; + let mut x1791: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1790, &mut x1791, x1789, x1765, 0x50e641df); + let mut x1792: u32 = 0; + let mut x1793: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1792, &mut x1793, x1791, x1767, 0xf5d6f7e); + let mut x1794: u32 = 0; + let mut x1795: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1794, &mut x1795, x1793, x1769, 0xa3386d28); + let mut x1796: u32 = 0; + let mut x1797: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1796, &mut x1797, x1795, x1771, 0x8cb91e82); + let mut x1798: u32 = 0; + let mut x1799: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1798, &mut x1799, x1797, x1773, (0x0 as u32)); + let mut x1800: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1800, x1799, x1774, x1749); + let mut x1801: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1801, x1799, x1776, x1751); + let mut x1802: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1802, x1799, x1778, x1753); + let mut x1803: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1803, x1799, x1780, x1755); + let mut x1804: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1804, x1799, x1782, x1757); + let mut x1805: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1805, x1799, x1784, x1759); + let mut x1806: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1806, x1799, x1786, x1761); + let mut x1807: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1807, x1799, x1788, x1763); + let mut x1808: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1808, x1799, x1790, x1765); + let mut x1809: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1809, x1799, x1792, x1767); + let mut x1810: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1810, x1799, x1794, x1769); + let mut x1811: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1811, x1799, x1796, x1771); + out1[0] = x1800; + out1[1] = x1801; + out1[2] = x1802; + out1[3] = x1803; + out1[4] = x1804; + out1[5] = x1805; + out1[6] = x1806; + out1[7] = x1807; + out1[8] = x1808; + out1[9] = x1809; + out1[10] = x1810; + out1[11] = x1811; +} +/// The function fiat_bp384_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_add( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x25, &mut x26, 0x0, x1, 0x3107ec53); + let mut x27: u32 = 0; + let mut x28: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x27, &mut x28, x26, x3, 0x87470013); + let mut x29: u32 = 0; + let mut x30: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x29, &mut x30, x28, x5, 0x901d1a71); + let mut x31: u32 = 0; + let mut x32: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x31, &mut x32, x30, x7, 0xacd3a729); + let mut x33: u32 = 0; + let mut x34: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x33, &mut x34, x32, x9, 0x7fb71123); + let mut x35: u32 = 0; + let mut x36: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x35, &mut x36, x34, x11, 0x12b1da19); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x37, &mut x38, x36, x13, 0xed5456b4); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x39, &mut x40, x38, x15, 0x152f7109); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x41, &mut x42, x40, x17, 0x50e641df); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x43, &mut x44, x42, x19, 0xf5d6f7e); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x45, &mut x46, x44, x21, 0xa3386d28); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x47, &mut x48, x46, x23, 0x8cb91e82); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x49, &mut x50, x48, (x24 as u32), (0x0 as u32)); + let mut x51: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x51, x50, x25, x1); + let mut x52: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x52, x50, x27, x3); + let mut x53: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x53, x50, x29, x5); + let mut x54: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x54, x50, x31, x7); + let mut x55: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x55, x50, x33, x9); + let mut x56: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x56, x50, x35, x11); + let mut x57: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x57, x50, x37, x13); + let mut x58: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x58, x50, x39, x15); + let mut x59: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x59, x50, x41, x17); + let mut x60: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x60, x50, x43, x19); + let mut x61: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x61, x50, x45, x21); + let mut x62: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x62, x50, x47, x23); + out1[0] = x51; + out1[1] = x52; + out1[2] = x53; + out1[3] = x54; + out1[4] = x55; + out1[5] = x56; + out1[6] = x57; + out1[7] = x58; + out1[8] = x59; + out1[9] = x60; + out1[10] = x61; + out1[11] = x62; +} +/// The function fiat_bp384_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_sub( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x25, x24, (0x0 as u32), 0xffffffff); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x26, &mut x27, 0x0, x1, (x25 & 0x3107ec53)); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x28, &mut x29, x27, x3, (x25 & 0x87470013)); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x30, &mut x31, x29, x5, (x25 & 0x901d1a71)); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x32, &mut x33, x31, x7, (x25 & 0xacd3a729)); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x34, &mut x35, x33, x9, (x25 & 0x7fb71123)); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x36, &mut x37, x35, x11, (x25 & 0x12b1da19)); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x38, &mut x39, x37, x13, (x25 & 0xed5456b4)); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x40, &mut x41, x39, x15, (x25 & 0x152f7109)); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x42, &mut x43, x41, x17, (x25 & 0x50e641df)); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x44, &mut x45, x43, x19, (x25 & 0xf5d6f7e)); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x46, &mut x47, x45, x21, (x25 & 0xa3386d28)); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x48, &mut x49, x47, x23, (x25 & 0x8cb91e82)); + out1[0] = x26; + out1[1] = x28; + out1[2] = x30; + out1[3] = x32; + out1[4] = x34; + out1[5] = x36; + out1[6] = x38; + out1[7] = x40; + out1[8] = x42; + out1[9] = x44; + out1[10] = x46; + out1[11] = x48; +} +/// The function fiat_bp384_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_opp( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); + let mut x25: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x25, x24, (0x0 as u32), 0xffffffff); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x26, &mut x27, 0x0, x1, (x25 & 0x3107ec53)); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x28, &mut x29, x27, x3, (x25 & 0x87470013)); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x30, &mut x31, x29, x5, (x25 & 0x901d1a71)); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x32, &mut x33, x31, x7, (x25 & 0xacd3a729)); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x34, &mut x35, x33, x9, (x25 & 0x7fb71123)); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x36, &mut x37, x35, x11, (x25 & 0x12b1da19)); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x38, &mut x39, x37, x13, (x25 & 0xed5456b4)); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x40, &mut x41, x39, x15, (x25 & 0x152f7109)); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x42, &mut x43, x41, x17, (x25 & 0x50e641df)); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x44, &mut x45, x43, x19, (x25 & 0xf5d6f7e)); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x46, &mut x47, x45, x21, (x25 & 0xa3386d28)); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x48, &mut x49, x47, x23, (x25 & 0x8cb91e82)); + out1[0] = x26; + out1[1] = x28; + out1[2] = x30; + out1[3] = x32; + out1[4] = x34; + out1[5] = x36; + out1[6] = x38; + out1[7] = x40; + out1[8] = x42; + out1[9] = x44; + out1[10] = x46; + out1[11] = x48; +} +/// The function fiat_bp384_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^32)⁻¹ mod m)^12) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_from_montgomery( + out1: &mut fiat_bp384_non_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[0]); + let mut x2: u32 = 0; + let mut x3: u32 = 0; + fiat_bp384_mulx_u32(&mut x2, &mut x3, x1, 0xea9ec825); + let mut x4: u32 = 0; + let mut x5: u32 = 0; + fiat_bp384_mulx_u32(&mut x4, &mut x5, x2, 0x8cb91e82); + let mut x6: u32 = 0; + let mut x7: u32 = 0; + fiat_bp384_mulx_u32(&mut x6, &mut x7, x2, 0xa3386d28); + let mut x8: u32 = 0; + let mut x9: u32 = 0; + fiat_bp384_mulx_u32(&mut x8, &mut x9, x2, 0xf5d6f7e); + let mut x10: u32 = 0; + let mut x11: u32 = 0; + fiat_bp384_mulx_u32(&mut x10, &mut x11, x2, 0x50e641df); + let mut x12: u32 = 0; + let mut x13: u32 = 0; + fiat_bp384_mulx_u32(&mut x12, &mut x13, x2, 0x152f7109); + let mut x14: u32 = 0; + let mut x15: u32 = 0; + fiat_bp384_mulx_u32(&mut x14, &mut x15, x2, 0xed5456b4); + let mut x16: u32 = 0; + let mut x17: u32 = 0; + fiat_bp384_mulx_u32(&mut x16, &mut x17, x2, 0x12b1da19); + let mut x18: u32 = 0; + let mut x19: u32 = 0; + fiat_bp384_mulx_u32(&mut x18, &mut x19, x2, 0x7fb71123); + let mut x20: u32 = 0; + let mut x21: u32 = 0; + fiat_bp384_mulx_u32(&mut x20, &mut x21, x2, 0xacd3a729); + let mut x22: u32 = 0; + let mut x23: u32 = 0; + fiat_bp384_mulx_u32(&mut x22, &mut x23, x2, 0x901d1a71); + let mut x24: u32 = 0; + let mut x25: u32 = 0; + fiat_bp384_mulx_u32(&mut x24, &mut x25, x2, 0x87470013); + let mut x26: u32 = 0; + let mut x27: u32 = 0; + fiat_bp384_mulx_u32(&mut x26, &mut x27, x2, 0x3107ec53); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x28, &mut x29, 0x0, x27, x24); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x30, &mut x31, x29, x25, x22); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x32, &mut x33, x31, x23, x20); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x34, &mut x35, x33, x21, x18); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x36, &mut x37, x35, x19, x16); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x38, &mut x39, x37, x17, x14); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x40, &mut x41, x39, x15, x12); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x42, &mut x43, x41, x13, x10); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x44, &mut x45, x43, x11, x8); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x46, &mut x47, x45, x9, x6); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x48, &mut x49, x47, x7, x4); + let mut x50: u32 = 0; + let mut x51: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x50, &mut x51, 0x0, x1, x26); + let mut x52: u32 = 0; + let mut x53: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), x28); + let mut x54: u32 = 0; + let mut x55: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), x30); + let mut x56: u32 = 0; + let mut x57: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), x32); + let mut x58: u32 = 0; + let mut x59: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x58, &mut x59, x57, (0x0 as u32), x34); + let mut x60: u32 = 0; + let mut x61: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x60, &mut x61, x59, (0x0 as u32), x36); + let mut x62: u32 = 0; + let mut x63: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x62, &mut x63, x61, (0x0 as u32), x38); + let mut x64: u32 = 0; + let mut x65: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x64, &mut x65, x63, (0x0 as u32), x40); + let mut x66: u32 = 0; + let mut x67: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x66, &mut x67, x65, (0x0 as u32), x42); + let mut x68: u32 = 0; + let mut x69: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x44); + let mut x70: u32 = 0; + let mut x71: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x46); + let mut x72: u32 = 0; + let mut x73: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x48); + let mut x74: u32 = 0; + let mut x75: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x74, &mut x75, 0x0, x52, (arg1[1])); + let mut x76: u32 = 0; + let mut x77: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x76, &mut x77, x75, x54, (0x0 as u32)); + let mut x78: u32 = 0; + let mut x79: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x78, &mut x79, x77, x56, (0x0 as u32)); + let mut x80: u32 = 0; + let mut x81: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x80, &mut x81, x79, x58, (0x0 as u32)); + let mut x82: u32 = 0; + let mut x83: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x82, &mut x83, x81, x60, (0x0 as u32)); + let mut x84: u32 = 0; + let mut x85: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x84, &mut x85, x83, x62, (0x0 as u32)); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x86, &mut x87, x85, x64, (0x0 as u32)); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x88, &mut x89, x87, x66, (0x0 as u32)); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x90, &mut x91, x89, x68, (0x0 as u32)); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x92, &mut x93, x91, x70, (0x0 as u32)); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x94, &mut x95, x93, x72, (0x0 as u32)); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp384_mulx_u32(&mut x96, &mut x97, x74, 0xea9ec825); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp384_mulx_u32(&mut x98, &mut x99, x96, 0x8cb91e82); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp384_mulx_u32(&mut x100, &mut x101, x96, 0xa3386d28); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp384_mulx_u32(&mut x102, &mut x103, x96, 0xf5d6f7e); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp384_mulx_u32(&mut x104, &mut x105, x96, 0x50e641df); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp384_mulx_u32(&mut x106, &mut x107, x96, 0x152f7109); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp384_mulx_u32(&mut x108, &mut x109, x96, 0xed5456b4); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp384_mulx_u32(&mut x110, &mut x111, x96, 0x12b1da19); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp384_mulx_u32(&mut x112, &mut x113, x96, 0x7fb71123); + let mut x114: u32 = 0; + let mut x115: u32 = 0; + fiat_bp384_mulx_u32(&mut x114, &mut x115, x96, 0xacd3a729); + let mut x116: u32 = 0; + let mut x117: u32 = 0; + fiat_bp384_mulx_u32(&mut x116, &mut x117, x96, 0x901d1a71); + let mut x118: u32 = 0; + let mut x119: u32 = 0; + fiat_bp384_mulx_u32(&mut x118, &mut x119, x96, 0x87470013); + let mut x120: u32 = 0; + let mut x121: u32 = 0; + fiat_bp384_mulx_u32(&mut x120, &mut x121, x96, 0x3107ec53); + let mut x122: u32 = 0; + let mut x123: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x122, &mut x123, 0x0, x121, x118); + let mut x124: u32 = 0; + let mut x125: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x124, &mut x125, x123, x119, x116); + let mut x126: u32 = 0; + let mut x127: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x126, &mut x127, x125, x117, x114); + let mut x128: u32 = 0; + let mut x129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x128, &mut x129, x127, x115, x112); + let mut x130: u32 = 0; + let mut x131: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x130, &mut x131, x129, x113, x110); + let mut x132: u32 = 0; + let mut x133: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x132, &mut x133, x131, x111, x108); + let mut x134: u32 = 0; + let mut x135: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x134, &mut x135, x133, x109, x106); + let mut x136: u32 = 0; + let mut x137: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x136, &mut x137, x135, x107, x104); + let mut x138: u32 = 0; + let mut x139: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x138, &mut x139, x137, x105, x102); + let mut x140: u32 = 0; + let mut x141: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x140, &mut x141, x139, x103, x100); + let mut x142: u32 = 0; + let mut x143: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x142, &mut x143, x141, x101, x98); + let mut x144: u32 = 0; + let mut x145: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x144, &mut x145, 0x0, x74, x120); + let mut x146: u32 = 0; + let mut x147: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x146, &mut x147, x145, x76, x122); + let mut x148: u32 = 0; + let mut x149: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x148, &mut x149, x147, x78, x124); + let mut x150: u32 = 0; + let mut x151: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x150, &mut x151, x149, x80, x126); + let mut x152: u32 = 0; + let mut x153: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x152, &mut x153, x151, x82, x128); + let mut x154: u32 = 0; + let mut x155: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x154, &mut x155, x153, x84, x130); + let mut x156: u32 = 0; + let mut x157: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x156, &mut x157, x155, x86, x132); + let mut x158: u32 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x158, &mut x159, x157, x88, x134); + let mut x160: u32 = 0; + let mut x161: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x160, &mut x161, x159, x90, x136); + let mut x162: u32 = 0; + let mut x163: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x162, &mut x163, x161, x92, x138); + let mut x164: u32 = 0; + let mut x165: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x164, &mut x165, x163, x94, x140); + let mut x166: u32 = 0; + let mut x167: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x166, + &mut x167, + x165, + ((x95 as u32) + ((x73 as u32) + ((x49 as u32) + x5))), + x142, + ); + let mut x168: u32 = 0; + let mut x169: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x168, &mut x169, 0x0, x146, (arg1[2])); + let mut x170: u32 = 0; + let mut x171: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x170, &mut x171, x169, x148, (0x0 as u32)); + let mut x172: u32 = 0; + let mut x173: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x172, &mut x173, x171, x150, (0x0 as u32)); + let mut x174: u32 = 0; + let mut x175: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x174, &mut x175, x173, x152, (0x0 as u32)); + let mut x176: u32 = 0; + let mut x177: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x176, &mut x177, x175, x154, (0x0 as u32)); + let mut x178: u32 = 0; + let mut x179: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x178, &mut x179, x177, x156, (0x0 as u32)); + let mut x180: u32 = 0; + let mut x181: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x180, &mut x181, x179, x158, (0x0 as u32)); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x182, &mut x183, x181, x160, (0x0 as u32)); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x184, &mut x185, x183, x162, (0x0 as u32)); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x186, &mut x187, x185, x164, (0x0 as u32)); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x188, &mut x189, x187, x166, (0x0 as u32)); + let mut x190: u32 = 0; + let mut x191: u32 = 0; + fiat_bp384_mulx_u32(&mut x190, &mut x191, x168, 0xea9ec825); + let mut x192: u32 = 0; + let mut x193: u32 = 0; + fiat_bp384_mulx_u32(&mut x192, &mut x193, x190, 0x8cb91e82); + let mut x194: u32 = 0; + let mut x195: u32 = 0; + fiat_bp384_mulx_u32(&mut x194, &mut x195, x190, 0xa3386d28); + let mut x196: u32 = 0; + let mut x197: u32 = 0; + fiat_bp384_mulx_u32(&mut x196, &mut x197, x190, 0xf5d6f7e); + let mut x198: u32 = 0; + let mut x199: u32 = 0; + fiat_bp384_mulx_u32(&mut x198, &mut x199, x190, 0x50e641df); + let mut x200: u32 = 0; + let mut x201: u32 = 0; + fiat_bp384_mulx_u32(&mut x200, &mut x201, x190, 0x152f7109); + let mut x202: u32 = 0; + let mut x203: u32 = 0; + fiat_bp384_mulx_u32(&mut x202, &mut x203, x190, 0xed5456b4); + let mut x204: u32 = 0; + let mut x205: u32 = 0; + fiat_bp384_mulx_u32(&mut x204, &mut x205, x190, 0x12b1da19); + let mut x206: u32 = 0; + let mut x207: u32 = 0; + fiat_bp384_mulx_u32(&mut x206, &mut x207, x190, 0x7fb71123); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_mulx_u32(&mut x208, &mut x209, x190, 0xacd3a729); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_mulx_u32(&mut x210, &mut x211, x190, 0x901d1a71); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_mulx_u32(&mut x212, &mut x213, x190, 0x87470013); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_mulx_u32(&mut x214, &mut x215, x190, 0x3107ec53); + let mut x216: u32 = 0; + let mut x217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x216, &mut x217, 0x0, x215, x212); + let mut x218: u32 = 0; + let mut x219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x218, &mut x219, x217, x213, x210); + let mut x220: u32 = 0; + let mut x221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x220, &mut x221, x219, x211, x208); + let mut x222: u32 = 0; + let mut x223: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x222, &mut x223, x221, x209, x206); + let mut x224: u32 = 0; + let mut x225: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x224, &mut x225, x223, x207, x204); + let mut x226: u32 = 0; + let mut x227: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x226, &mut x227, x225, x205, x202); + let mut x228: u32 = 0; + let mut x229: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x228, &mut x229, x227, x203, x200); + let mut x230: u32 = 0; + let mut x231: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x230, &mut x231, x229, x201, x198); + let mut x232: u32 = 0; + let mut x233: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x232, &mut x233, x231, x199, x196); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x234, &mut x235, x233, x197, x194); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x236, &mut x237, x235, x195, x192); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x238, &mut x239, 0x0, x168, x214); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x240, &mut x241, x239, x170, x216); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x242, &mut x243, x241, x172, x218); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x244, &mut x245, x243, x174, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x246, &mut x247, x245, x176, x222); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x248, &mut x249, x247, x178, x224); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x250, &mut x251, x249, x180, x226); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x252, &mut x253, x251, x182, x228); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x254, &mut x255, x253, x184, x230); + let mut x256: u32 = 0; + let mut x257: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x256, &mut x257, x255, x186, x232); + let mut x258: u32 = 0; + let mut x259: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x258, &mut x259, x257, x188, x234); + let mut x260: u32 = 0; + let mut x261: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x260, + &mut x261, + x259, + ((x189 as u32) + ((x167 as u32) + ((x143 as u32) + x99))), + x236, + ); + let mut x262: u32 = 0; + let mut x263: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x262, &mut x263, 0x0, x240, (arg1[3])); + let mut x264: u32 = 0; + let mut x265: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x264, &mut x265, x263, x242, (0x0 as u32)); + let mut x266: u32 = 0; + let mut x267: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x266, &mut x267, x265, x244, (0x0 as u32)); + let mut x268: u32 = 0; + let mut x269: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x268, &mut x269, x267, x246, (0x0 as u32)); + let mut x270: u32 = 0; + let mut x271: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x270, &mut x271, x269, x248, (0x0 as u32)); + let mut x272: u32 = 0; + let mut x273: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x272, &mut x273, x271, x250, (0x0 as u32)); + let mut x274: u32 = 0; + let mut x275: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x274, &mut x275, x273, x252, (0x0 as u32)); + let mut x276: u32 = 0; + let mut x277: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x276, &mut x277, x275, x254, (0x0 as u32)); + let mut x278: u32 = 0; + let mut x279: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x278, &mut x279, x277, x256, (0x0 as u32)); + let mut x280: u32 = 0; + let mut x281: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x280, &mut x281, x279, x258, (0x0 as u32)); + let mut x282: u32 = 0; + let mut x283: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x282, &mut x283, x281, x260, (0x0 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_mulx_u32(&mut x284, &mut x285, x262, 0xea9ec825); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_mulx_u32(&mut x286, &mut x287, x284, 0x8cb91e82); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_mulx_u32(&mut x288, &mut x289, x284, 0xa3386d28); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_mulx_u32(&mut x290, &mut x291, x284, 0xf5d6f7e); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_mulx_u32(&mut x292, &mut x293, x284, 0x50e641df); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_mulx_u32(&mut x294, &mut x295, x284, 0x152f7109); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_mulx_u32(&mut x296, &mut x297, x284, 0xed5456b4); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_mulx_u32(&mut x298, &mut x299, x284, 0x12b1da19); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_mulx_u32(&mut x300, &mut x301, x284, 0x7fb71123); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_mulx_u32(&mut x302, &mut x303, x284, 0xacd3a729); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_mulx_u32(&mut x304, &mut x305, x284, 0x901d1a71); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_mulx_u32(&mut x306, &mut x307, x284, 0x87470013); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp384_mulx_u32(&mut x308, &mut x309, x284, 0x3107ec53); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x332, &mut x333, 0x0, x262, x308); + let mut x334: u32 = 0; + let mut x335: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x334, &mut x335, x333, x264, x310); + let mut x336: u32 = 0; + let mut x337: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x336, &mut x337, x335, x266, x312); + let mut x338: u32 = 0; + let mut x339: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x338, &mut x339, x337, x268, x314); + let mut x340: u32 = 0; + let mut x341: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x340, &mut x341, x339, x270, x316); + let mut x342: u32 = 0; + let mut x343: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x342, &mut x343, x341, x272, x318); + let mut x344: u32 = 0; + let mut x345: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x344, &mut x345, x343, x274, x320); + let mut x346: u32 = 0; + let mut x347: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x346, &mut x347, x345, x276, x322); + let mut x348: u32 = 0; + let mut x349: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x348, &mut x349, x347, x278, x324); + let mut x350: u32 = 0; + let mut x351: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x350, &mut x351, x349, x280, x326); + let mut x352: u32 = 0; + let mut x353: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x352, &mut x353, x351, x282, x328); + let mut x354: u32 = 0; + let mut x355: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x354, + &mut x355, + x353, + ((x283 as u32) + ((x261 as u32) + ((x237 as u32) + x193))), + x330, + ); + let mut x356: u32 = 0; + let mut x357: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x356, &mut x357, 0x0, x334, (arg1[4])); + let mut x358: u32 = 0; + let mut x359: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x358, &mut x359, x357, x336, (0x0 as u32)); + let mut x360: u32 = 0; + let mut x361: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x360, &mut x361, x359, x338, (0x0 as u32)); + let mut x362: u32 = 0; + let mut x363: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x362, &mut x363, x361, x340, (0x0 as u32)); + let mut x364: u32 = 0; + let mut x365: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x364, &mut x365, x363, x342, (0x0 as u32)); + let mut x366: u32 = 0; + let mut x367: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x366, &mut x367, x365, x344, (0x0 as u32)); + let mut x368: u32 = 0; + let mut x369: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x368, &mut x369, x367, x346, (0x0 as u32)); + let mut x370: u32 = 0; + let mut x371: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x370, &mut x371, x369, x348, (0x0 as u32)); + let mut x372: u32 = 0; + let mut x373: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x372, &mut x373, x371, x350, (0x0 as u32)); + let mut x374: u32 = 0; + let mut x375: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x374, &mut x375, x373, x352, (0x0 as u32)); + let mut x376: u32 = 0; + let mut x377: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x376, &mut x377, x375, x354, (0x0 as u32)); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp384_mulx_u32(&mut x378, &mut x379, x356, 0xea9ec825); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp384_mulx_u32(&mut x380, &mut x381, x378, 0x8cb91e82); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp384_mulx_u32(&mut x382, &mut x383, x378, 0xa3386d28); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp384_mulx_u32(&mut x384, &mut x385, x378, 0xf5d6f7e); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp384_mulx_u32(&mut x386, &mut x387, x378, 0x50e641df); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp384_mulx_u32(&mut x388, &mut x389, x378, 0x152f7109); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp384_mulx_u32(&mut x390, &mut x391, x378, 0xed5456b4); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp384_mulx_u32(&mut x392, &mut x393, x378, 0x12b1da19); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp384_mulx_u32(&mut x394, &mut x395, x378, 0x7fb71123); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp384_mulx_u32(&mut x396, &mut x397, x378, 0xacd3a729); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp384_mulx_u32(&mut x398, &mut x399, x378, 0x901d1a71); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp384_mulx_u32(&mut x400, &mut x401, x378, 0x87470013); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp384_mulx_u32(&mut x402, &mut x403, x378, 0x3107ec53); + let mut x404: u32 = 0; + let mut x405: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x404, &mut x405, 0x0, x403, x400); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x406, &mut x407, x405, x401, x398); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x408, &mut x409, x407, x399, x396); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x410, &mut x411, x409, x397, x394); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x412, &mut x413, x411, x395, x392); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x414, &mut x415, x413, x393, x390); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x416, &mut x417, x415, x391, x388); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x418, &mut x419, x417, x389, x386); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x420, &mut x421, x419, x387, x384); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x422, &mut x423, x421, x385, x382); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x424, &mut x425, x423, x383, x380); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x426, &mut x427, 0x0, x356, x402); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x428, &mut x429, x427, x358, x404); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x430, &mut x431, x429, x360, x406); + let mut x432: u32 = 0; + let mut x433: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x432, &mut x433, x431, x362, x408); + let mut x434: u32 = 0; + let mut x435: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x434, &mut x435, x433, x364, x410); + let mut x436: u32 = 0; + let mut x437: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x436, &mut x437, x435, x366, x412); + let mut x438: u32 = 0; + let mut x439: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x438, &mut x439, x437, x368, x414); + let mut x440: u32 = 0; + let mut x441: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x440, &mut x441, x439, x370, x416); + let mut x442: u32 = 0; + let mut x443: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x442, &mut x443, x441, x372, x418); + let mut x444: u32 = 0; + let mut x445: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x444, &mut x445, x443, x374, x420); + let mut x446: u32 = 0; + let mut x447: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x446, &mut x447, x445, x376, x422); + let mut x448: u32 = 0; + let mut x449: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x448, + &mut x449, + x447, + ((x377 as u32) + ((x355 as u32) + ((x331 as u32) + x287))), + x424, + ); + let mut x450: u32 = 0; + let mut x451: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x450, &mut x451, 0x0, x428, (arg1[5])); + let mut x452: u32 = 0; + let mut x453: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x452, &mut x453, x451, x430, (0x0 as u32)); + let mut x454: u32 = 0; + let mut x455: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x454, &mut x455, x453, x432, (0x0 as u32)); + let mut x456: u32 = 0; + let mut x457: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x456, &mut x457, x455, x434, (0x0 as u32)); + let mut x458: u32 = 0; + let mut x459: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x458, &mut x459, x457, x436, (0x0 as u32)); + let mut x460: u32 = 0; + let mut x461: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x460, &mut x461, x459, x438, (0x0 as u32)); + let mut x462: u32 = 0; + let mut x463: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x462, &mut x463, x461, x440, (0x0 as u32)); + let mut x464: u32 = 0; + let mut x465: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x464, &mut x465, x463, x442, (0x0 as u32)); + let mut x466: u32 = 0; + let mut x467: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x466, &mut x467, x465, x444, (0x0 as u32)); + let mut x468: u32 = 0; + let mut x469: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x468, &mut x469, x467, x446, (0x0 as u32)); + let mut x470: u32 = 0; + let mut x471: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x470, &mut x471, x469, x448, (0x0 as u32)); + let mut x472: u32 = 0; + let mut x473: u32 = 0; + fiat_bp384_mulx_u32(&mut x472, &mut x473, x450, 0xea9ec825); + let mut x474: u32 = 0; + let mut x475: u32 = 0; + fiat_bp384_mulx_u32(&mut x474, &mut x475, x472, 0x8cb91e82); + let mut x476: u32 = 0; + let mut x477: u32 = 0; + fiat_bp384_mulx_u32(&mut x476, &mut x477, x472, 0xa3386d28); + let mut x478: u32 = 0; + let mut x479: u32 = 0; + fiat_bp384_mulx_u32(&mut x478, &mut x479, x472, 0xf5d6f7e); + let mut x480: u32 = 0; + let mut x481: u32 = 0; + fiat_bp384_mulx_u32(&mut x480, &mut x481, x472, 0x50e641df); + let mut x482: u32 = 0; + let mut x483: u32 = 0; + fiat_bp384_mulx_u32(&mut x482, &mut x483, x472, 0x152f7109); + let mut x484: u32 = 0; + let mut x485: u32 = 0; + fiat_bp384_mulx_u32(&mut x484, &mut x485, x472, 0xed5456b4); + let mut x486: u32 = 0; + let mut x487: u32 = 0; + fiat_bp384_mulx_u32(&mut x486, &mut x487, x472, 0x12b1da19); + let mut x488: u32 = 0; + let mut x489: u32 = 0; + fiat_bp384_mulx_u32(&mut x488, &mut x489, x472, 0x7fb71123); + let mut x490: u32 = 0; + let mut x491: u32 = 0; + fiat_bp384_mulx_u32(&mut x490, &mut x491, x472, 0xacd3a729); + let mut x492: u32 = 0; + let mut x493: u32 = 0; + fiat_bp384_mulx_u32(&mut x492, &mut x493, x472, 0x901d1a71); + let mut x494: u32 = 0; + let mut x495: u32 = 0; + fiat_bp384_mulx_u32(&mut x494, &mut x495, x472, 0x87470013); + let mut x496: u32 = 0; + let mut x497: u32 = 0; + fiat_bp384_mulx_u32(&mut x496, &mut x497, x472, 0x3107ec53); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x498, &mut x499, 0x0, x497, x494); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x500, &mut x501, x499, x495, x492); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x502, &mut x503, x501, x493, x490); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x504, &mut x505, x503, x491, x488); + let mut x506: u32 = 0; + let mut x507: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x506, &mut x507, x505, x489, x486); + let mut x508: u32 = 0; + let mut x509: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x508, &mut x509, x507, x487, x484); + let mut x510: u32 = 0; + let mut x511: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x510, &mut x511, x509, x485, x482); + let mut x512: u32 = 0; + let mut x513: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x512, &mut x513, x511, x483, x480); + let mut x514: u32 = 0; + let mut x515: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x514, &mut x515, x513, x481, x478); + let mut x516: u32 = 0; + let mut x517: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x516, &mut x517, x515, x479, x476); + let mut x518: u32 = 0; + let mut x519: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x518, &mut x519, x517, x477, x474); + let mut x520: u32 = 0; + let mut x521: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x520, &mut x521, 0x0, x450, x496); + let mut x522: u32 = 0; + let mut x523: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x522, &mut x523, x521, x452, x498); + let mut x524: u32 = 0; + let mut x525: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x524, &mut x525, x523, x454, x500); + let mut x526: u32 = 0; + let mut x527: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x526, &mut x527, x525, x456, x502); + let mut x528: u32 = 0; + let mut x529: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x528, &mut x529, x527, x458, x504); + let mut x530: u32 = 0; + let mut x531: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x530, &mut x531, x529, x460, x506); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x532, &mut x533, x531, x462, x508); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x534, &mut x535, x533, x464, x510); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x536, &mut x537, x535, x466, x512); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x538, &mut x539, x537, x468, x514); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x540, &mut x541, x539, x470, x516); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x542, + &mut x543, + x541, + ((x471 as u32) + ((x449 as u32) + ((x425 as u32) + x381))), + x518, + ); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x544, &mut x545, 0x0, x522, (arg1[6])); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x546, &mut x547, x545, x524, (0x0 as u32)); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x548, &mut x549, x547, x526, (0x0 as u32)); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x550, &mut x551, x549, x528, (0x0 as u32)); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x552, &mut x553, x551, x530, (0x0 as u32)); + let mut x554: u32 = 0; + let mut x555: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x554, &mut x555, x553, x532, (0x0 as u32)); + let mut x556: u32 = 0; + let mut x557: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x556, &mut x557, x555, x534, (0x0 as u32)); + let mut x558: u32 = 0; + let mut x559: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x558, &mut x559, x557, x536, (0x0 as u32)); + let mut x560: u32 = 0; + let mut x561: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x560, &mut x561, x559, x538, (0x0 as u32)); + let mut x562: u32 = 0; + let mut x563: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x562, &mut x563, x561, x540, (0x0 as u32)); + let mut x564: u32 = 0; + let mut x565: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x564, &mut x565, x563, x542, (0x0 as u32)); + let mut x566: u32 = 0; + let mut x567: u32 = 0; + fiat_bp384_mulx_u32(&mut x566, &mut x567, x544, 0xea9ec825); + let mut x568: u32 = 0; + let mut x569: u32 = 0; + fiat_bp384_mulx_u32(&mut x568, &mut x569, x566, 0x8cb91e82); + let mut x570: u32 = 0; + let mut x571: u32 = 0; + fiat_bp384_mulx_u32(&mut x570, &mut x571, x566, 0xa3386d28); + let mut x572: u32 = 0; + let mut x573: u32 = 0; + fiat_bp384_mulx_u32(&mut x572, &mut x573, x566, 0xf5d6f7e); + let mut x574: u32 = 0; + let mut x575: u32 = 0; + fiat_bp384_mulx_u32(&mut x574, &mut x575, x566, 0x50e641df); + let mut x576: u32 = 0; + let mut x577: u32 = 0; + fiat_bp384_mulx_u32(&mut x576, &mut x577, x566, 0x152f7109); + let mut x578: u32 = 0; + let mut x579: u32 = 0; + fiat_bp384_mulx_u32(&mut x578, &mut x579, x566, 0xed5456b4); + let mut x580: u32 = 0; + let mut x581: u32 = 0; + fiat_bp384_mulx_u32(&mut x580, &mut x581, x566, 0x12b1da19); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_mulx_u32(&mut x582, &mut x583, x566, 0x7fb71123); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_mulx_u32(&mut x584, &mut x585, x566, 0xacd3a729); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_mulx_u32(&mut x586, &mut x587, x566, 0x901d1a71); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_mulx_u32(&mut x588, &mut x589, x566, 0x87470013); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_mulx_u32(&mut x590, &mut x591, x566, 0x3107ec53); + let mut x592: u32 = 0; + let mut x593: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x592, &mut x593, 0x0, x591, x588); + let mut x594: u32 = 0; + let mut x595: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x594, &mut x595, x593, x589, x586); + let mut x596: u32 = 0; + let mut x597: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x596, &mut x597, x595, x587, x584); + let mut x598: u32 = 0; + let mut x599: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x598, &mut x599, x597, x585, x582); + let mut x600: u32 = 0; + let mut x601: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x600, &mut x601, x599, x583, x580); + let mut x602: u32 = 0; + let mut x603: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x602, &mut x603, x601, x581, x578); + let mut x604: u32 = 0; + let mut x605: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x604, &mut x605, x603, x579, x576); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x606, &mut x607, x605, x577, x574); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x608, &mut x609, x607, x575, x572); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x610, &mut x611, x609, x573, x570); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x612, &mut x613, x611, x571, x568); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x614, &mut x615, 0x0, x544, x590); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x616, &mut x617, x615, x546, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x618, &mut x619, x617, x548, x594); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x620, &mut x621, x619, x550, x596); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x622, &mut x623, x621, x552, x598); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x624, &mut x625, x623, x554, x600); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x626, &mut x627, x625, x556, x602); + let mut x628: u32 = 0; + let mut x629: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x628, &mut x629, x627, x558, x604); + let mut x630: u32 = 0; + let mut x631: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x630, &mut x631, x629, x560, x606); + let mut x632: u32 = 0; + let mut x633: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x632, &mut x633, x631, x562, x608); + let mut x634: u32 = 0; + let mut x635: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x634, &mut x635, x633, x564, x610); + let mut x636: u32 = 0; + let mut x637: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x636, + &mut x637, + x635, + ((x565 as u32) + ((x543 as u32) + ((x519 as u32) + x475))), + x612, + ); + let mut x638: u32 = 0; + let mut x639: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x638, &mut x639, 0x0, x616, (arg1[7])); + let mut x640: u32 = 0; + let mut x641: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x640, &mut x641, x639, x618, (0x0 as u32)); + let mut x642: u32 = 0; + let mut x643: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x642, &mut x643, x641, x620, (0x0 as u32)); + let mut x644: u32 = 0; + let mut x645: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x644, &mut x645, x643, x622, (0x0 as u32)); + let mut x646: u32 = 0; + let mut x647: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x646, &mut x647, x645, x624, (0x0 as u32)); + let mut x648: u32 = 0; + let mut x649: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x648, &mut x649, x647, x626, (0x0 as u32)); + let mut x650: u32 = 0; + let mut x651: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x650, &mut x651, x649, x628, (0x0 as u32)); + let mut x652: u32 = 0; + let mut x653: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x652, &mut x653, x651, x630, (0x0 as u32)); + let mut x654: u32 = 0; + let mut x655: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x654, &mut x655, x653, x632, (0x0 as u32)); + let mut x656: u32 = 0; + let mut x657: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x656, &mut x657, x655, x634, (0x0 as u32)); + let mut x658: u32 = 0; + let mut x659: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x658, &mut x659, x657, x636, (0x0 as u32)); + let mut x660: u32 = 0; + let mut x661: u32 = 0; + fiat_bp384_mulx_u32(&mut x660, &mut x661, x638, 0xea9ec825); + let mut x662: u32 = 0; + let mut x663: u32 = 0; + fiat_bp384_mulx_u32(&mut x662, &mut x663, x660, 0x8cb91e82); + let mut x664: u32 = 0; + let mut x665: u32 = 0; + fiat_bp384_mulx_u32(&mut x664, &mut x665, x660, 0xa3386d28); + let mut x666: u32 = 0; + let mut x667: u32 = 0; + fiat_bp384_mulx_u32(&mut x666, &mut x667, x660, 0xf5d6f7e); + let mut x668: u32 = 0; + let mut x669: u32 = 0; + fiat_bp384_mulx_u32(&mut x668, &mut x669, x660, 0x50e641df); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp384_mulx_u32(&mut x670, &mut x671, x660, 0x152f7109); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp384_mulx_u32(&mut x672, &mut x673, x660, 0xed5456b4); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp384_mulx_u32(&mut x674, &mut x675, x660, 0x12b1da19); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp384_mulx_u32(&mut x676, &mut x677, x660, 0x7fb71123); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp384_mulx_u32(&mut x678, &mut x679, x660, 0xacd3a729); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp384_mulx_u32(&mut x680, &mut x681, x660, 0x901d1a71); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp384_mulx_u32(&mut x682, &mut x683, x660, 0x87470013); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp384_mulx_u32(&mut x684, &mut x685, x660, 0x3107ec53); + let mut x686: u32 = 0; + let mut x687: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x686, &mut x687, 0x0, x685, x682); + let mut x688: u32 = 0; + let mut x689: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x688, &mut x689, x687, x683, x680); + let mut x690: u32 = 0; + let mut x691: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x690, &mut x691, x689, x681, x678); + let mut x692: u32 = 0; + let mut x693: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x692, &mut x693, x691, x679, x676); + let mut x694: u32 = 0; + let mut x695: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x694, &mut x695, x693, x677, x674); + let mut x696: u32 = 0; + let mut x697: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x696, &mut x697, x695, x675, x672); + let mut x698: u32 = 0; + let mut x699: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x698, &mut x699, x697, x673, x670); + let mut x700: u32 = 0; + let mut x701: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x700, &mut x701, x699, x671, x668); + let mut x702: u32 = 0; + let mut x703: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x702, &mut x703, x701, x669, x666); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x704, &mut x705, x703, x667, x664); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x706, &mut x707, x705, x665, x662); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x708, &mut x709, 0x0, x638, x684); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x710, &mut x711, x709, x640, x686); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x712, &mut x713, x711, x642, x688); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x714, &mut x715, x713, x644, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x716, &mut x717, x715, x646, x692); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x718, &mut x719, x717, x648, x694); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x720, &mut x721, x719, x650, x696); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x722, &mut x723, x721, x652, x698); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x724, &mut x725, x723, x654, x700); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x726, &mut x727, x725, x656, x702); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x728, &mut x729, x727, x658, x704); + let mut x730: u32 = 0; + let mut x731: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x730, + &mut x731, + x729, + ((x659 as u32) + ((x637 as u32) + ((x613 as u32) + x569))), + x706, + ); + let mut x732: u32 = 0; + let mut x733: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x732, &mut x733, 0x0, x710, (arg1[8])); + let mut x734: u32 = 0; + let mut x735: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x734, &mut x735, x733, x712, (0x0 as u32)); + let mut x736: u32 = 0; + let mut x737: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x736, &mut x737, x735, x714, (0x0 as u32)); + let mut x738: u32 = 0; + let mut x739: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x738, &mut x739, x737, x716, (0x0 as u32)); + let mut x740: u32 = 0; + let mut x741: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x740, &mut x741, x739, x718, (0x0 as u32)); + let mut x742: u32 = 0; + let mut x743: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x742, &mut x743, x741, x720, (0x0 as u32)); + let mut x744: u32 = 0; + let mut x745: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x744, &mut x745, x743, x722, (0x0 as u32)); + let mut x746: u32 = 0; + let mut x747: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x746, &mut x747, x745, x724, (0x0 as u32)); + let mut x748: u32 = 0; + let mut x749: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x748, &mut x749, x747, x726, (0x0 as u32)); + let mut x750: u32 = 0; + let mut x751: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x750, &mut x751, x749, x728, (0x0 as u32)); + let mut x752: u32 = 0; + let mut x753: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x752, &mut x753, x751, x730, (0x0 as u32)); + let mut x754: u32 = 0; + let mut x755: u32 = 0; + fiat_bp384_mulx_u32(&mut x754, &mut x755, x732, 0xea9ec825); + let mut x756: u32 = 0; + let mut x757: u32 = 0; + fiat_bp384_mulx_u32(&mut x756, &mut x757, x754, 0x8cb91e82); + let mut x758: u32 = 0; + let mut x759: u32 = 0; + fiat_bp384_mulx_u32(&mut x758, &mut x759, x754, 0xa3386d28); + let mut x760: u32 = 0; + let mut x761: u32 = 0; + fiat_bp384_mulx_u32(&mut x760, &mut x761, x754, 0xf5d6f7e); + let mut x762: u32 = 0; + let mut x763: u32 = 0; + fiat_bp384_mulx_u32(&mut x762, &mut x763, x754, 0x50e641df); + let mut x764: u32 = 0; + let mut x765: u32 = 0; + fiat_bp384_mulx_u32(&mut x764, &mut x765, x754, 0x152f7109); + let mut x766: u32 = 0; + let mut x767: u32 = 0; + fiat_bp384_mulx_u32(&mut x766, &mut x767, x754, 0xed5456b4); + let mut x768: u32 = 0; + let mut x769: u32 = 0; + fiat_bp384_mulx_u32(&mut x768, &mut x769, x754, 0x12b1da19); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp384_mulx_u32(&mut x770, &mut x771, x754, 0x7fb71123); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp384_mulx_u32(&mut x772, &mut x773, x754, 0xacd3a729); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp384_mulx_u32(&mut x774, &mut x775, x754, 0x901d1a71); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp384_mulx_u32(&mut x776, &mut x777, x754, 0x87470013); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp384_mulx_u32(&mut x778, &mut x779, x754, 0x3107ec53); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x780, &mut x781, 0x0, x779, x776); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x782, &mut x783, x781, x777, x774); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x784, &mut x785, x783, x775, x772); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x786, &mut x787, x785, x773, x770); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x788, &mut x789, x787, x771, x768); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x790, &mut x791, x789, x769, x766); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x792, &mut x793, x791, x767, x764); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x794, &mut x795, x793, x765, x762); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x796, &mut x797, x795, x763, x760); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x798, &mut x799, x797, x761, x758); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x800, &mut x801, x799, x759, x756); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x802, &mut x803, 0x0, x732, x778); + let mut x804: u32 = 0; + let mut x805: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x804, &mut x805, x803, x734, x780); + let mut x806: u32 = 0; + let mut x807: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x806, &mut x807, x805, x736, x782); + let mut x808: u32 = 0; + let mut x809: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x808, &mut x809, x807, x738, x784); + let mut x810: u32 = 0; + let mut x811: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x810, &mut x811, x809, x740, x786); + let mut x812: u32 = 0; + let mut x813: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x812, &mut x813, x811, x742, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x814, &mut x815, x813, x744, x790); + let mut x816: u32 = 0; + let mut x817: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x816, &mut x817, x815, x746, x792); + let mut x818: u32 = 0; + let mut x819: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x818, &mut x819, x817, x748, x794); + let mut x820: u32 = 0; + let mut x821: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x820, &mut x821, x819, x750, x796); + let mut x822: u32 = 0; + let mut x823: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x822, &mut x823, x821, x752, x798); + let mut x824: u32 = 0; + let mut x825: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x824, + &mut x825, + x823, + ((x753 as u32) + ((x731 as u32) + ((x707 as u32) + x663))), + x800, + ); + let mut x826: u32 = 0; + let mut x827: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x826, &mut x827, 0x0, x804, (arg1[9])); + let mut x828: u32 = 0; + let mut x829: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x828, &mut x829, x827, x806, (0x0 as u32)); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x830, &mut x831, x829, x808, (0x0 as u32)); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x832, &mut x833, x831, x810, (0x0 as u32)); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x834, &mut x835, x833, x812, (0x0 as u32)); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x836, &mut x837, x835, x814, (0x0 as u32)); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x838, &mut x839, x837, x816, (0x0 as u32)); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x840, &mut x841, x839, x818, (0x0 as u32)); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x842, &mut x843, x841, x820, (0x0 as u32)); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x844, &mut x845, x843, x822, (0x0 as u32)); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x846, &mut x847, x845, x824, (0x0 as u32)); + let mut x848: u32 = 0; + let mut x849: u32 = 0; + fiat_bp384_mulx_u32(&mut x848, &mut x849, x826, 0xea9ec825); + let mut x850: u32 = 0; + let mut x851: u32 = 0; + fiat_bp384_mulx_u32(&mut x850, &mut x851, x848, 0x8cb91e82); + let mut x852: u32 = 0; + let mut x853: u32 = 0; + fiat_bp384_mulx_u32(&mut x852, &mut x853, x848, 0xa3386d28); + let mut x854: u32 = 0; + let mut x855: u32 = 0; + fiat_bp384_mulx_u32(&mut x854, &mut x855, x848, 0xf5d6f7e); + let mut x856: u32 = 0; + let mut x857: u32 = 0; + fiat_bp384_mulx_u32(&mut x856, &mut x857, x848, 0x50e641df); + let mut x858: u32 = 0; + let mut x859: u32 = 0; + fiat_bp384_mulx_u32(&mut x858, &mut x859, x848, 0x152f7109); + let mut x860: u32 = 0; + let mut x861: u32 = 0; + fiat_bp384_mulx_u32(&mut x860, &mut x861, x848, 0xed5456b4); + let mut x862: u32 = 0; + let mut x863: u32 = 0; + fiat_bp384_mulx_u32(&mut x862, &mut x863, x848, 0x12b1da19); + let mut x864: u32 = 0; + let mut x865: u32 = 0; + fiat_bp384_mulx_u32(&mut x864, &mut x865, x848, 0x7fb71123); + let mut x866: u32 = 0; + let mut x867: u32 = 0; + fiat_bp384_mulx_u32(&mut x866, &mut x867, x848, 0xacd3a729); + let mut x868: u32 = 0; + let mut x869: u32 = 0; + fiat_bp384_mulx_u32(&mut x868, &mut x869, x848, 0x901d1a71); + let mut x870: u32 = 0; + let mut x871: u32 = 0; + fiat_bp384_mulx_u32(&mut x870, &mut x871, x848, 0x87470013); + let mut x872: u32 = 0; + let mut x873: u32 = 0; + fiat_bp384_mulx_u32(&mut x872, &mut x873, x848, 0x3107ec53); + let mut x874: u32 = 0; + let mut x875: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x874, &mut x875, 0x0, x873, x870); + let mut x876: u32 = 0; + let mut x877: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x876, &mut x877, x875, x871, x868); + let mut x878: u32 = 0; + let mut x879: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x878, &mut x879, x877, x869, x866); + let mut x880: u32 = 0; + let mut x881: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x880, &mut x881, x879, x867, x864); + let mut x882: u32 = 0; + let mut x883: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x882, &mut x883, x881, x865, x862); + let mut x884: u32 = 0; + let mut x885: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x884, &mut x885, x883, x863, x860); + let mut x886: u32 = 0; + let mut x887: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x886, &mut x887, x885, x861, x858); + let mut x888: u32 = 0; + let mut x889: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x888, &mut x889, x887, x859, x856); + let mut x890: u32 = 0; + let mut x891: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x890, &mut x891, x889, x857, x854); + let mut x892: u32 = 0; + let mut x893: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x892, &mut x893, x891, x855, x852); + let mut x894: u32 = 0; + let mut x895: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x894, &mut x895, x893, x853, x850); + let mut x896: u32 = 0; + let mut x897: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x896, &mut x897, 0x0, x826, x872); + let mut x898: u32 = 0; + let mut x899: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x898, &mut x899, x897, x828, x874); + let mut x900: u32 = 0; + let mut x901: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x900, &mut x901, x899, x830, x876); + let mut x902: u32 = 0; + let mut x903: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x902, &mut x903, x901, x832, x878); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x904, &mut x905, x903, x834, x880); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x906, &mut x907, x905, x836, x882); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x908, &mut x909, x907, x838, x884); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x910, &mut x911, x909, x840, x886); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x912, &mut x913, x911, x842, x888); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x914, &mut x915, x913, x844, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x916, &mut x917, x915, x846, x892); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x918, + &mut x919, + x917, + ((x847 as u32) + ((x825 as u32) + ((x801 as u32) + x757))), + x894, + ); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x920, &mut x921, 0x0, x898, (arg1[10])); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x922, &mut x923, x921, x900, (0x0 as u32)); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x924, &mut x925, x923, x902, (0x0 as u32)); + let mut x926: u32 = 0; + let mut x927: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x926, &mut x927, x925, x904, (0x0 as u32)); + let mut x928: u32 = 0; + let mut x929: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x928, &mut x929, x927, x906, (0x0 as u32)); + let mut x930: u32 = 0; + let mut x931: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x930, &mut x931, x929, x908, (0x0 as u32)); + let mut x932: u32 = 0; + let mut x933: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x932, &mut x933, x931, x910, (0x0 as u32)); + let mut x934: u32 = 0; + let mut x935: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x934, &mut x935, x933, x912, (0x0 as u32)); + let mut x936: u32 = 0; + let mut x937: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x936, &mut x937, x935, x914, (0x0 as u32)); + let mut x938: u32 = 0; + let mut x939: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x938, &mut x939, x937, x916, (0x0 as u32)); + let mut x940: u32 = 0; + let mut x941: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x940, &mut x941, x939, x918, (0x0 as u32)); + let mut x942: u32 = 0; + let mut x943: u32 = 0; + fiat_bp384_mulx_u32(&mut x942, &mut x943, x920, 0xea9ec825); + let mut x944: u32 = 0; + let mut x945: u32 = 0; + fiat_bp384_mulx_u32(&mut x944, &mut x945, x942, 0x8cb91e82); + let mut x946: u32 = 0; + let mut x947: u32 = 0; + fiat_bp384_mulx_u32(&mut x946, &mut x947, x942, 0xa3386d28); + let mut x948: u32 = 0; + let mut x949: u32 = 0; + fiat_bp384_mulx_u32(&mut x948, &mut x949, x942, 0xf5d6f7e); + let mut x950: u32 = 0; + let mut x951: u32 = 0; + fiat_bp384_mulx_u32(&mut x950, &mut x951, x942, 0x50e641df); + let mut x952: u32 = 0; + let mut x953: u32 = 0; + fiat_bp384_mulx_u32(&mut x952, &mut x953, x942, 0x152f7109); + let mut x954: u32 = 0; + let mut x955: u32 = 0; + fiat_bp384_mulx_u32(&mut x954, &mut x955, x942, 0xed5456b4); + let mut x956: u32 = 0; + let mut x957: u32 = 0; + fiat_bp384_mulx_u32(&mut x956, &mut x957, x942, 0x12b1da19); + let mut x958: u32 = 0; + let mut x959: u32 = 0; + fiat_bp384_mulx_u32(&mut x958, &mut x959, x942, 0x7fb71123); + let mut x960: u32 = 0; + let mut x961: u32 = 0; + fiat_bp384_mulx_u32(&mut x960, &mut x961, x942, 0xacd3a729); + let mut x962: u32 = 0; + let mut x963: u32 = 0; + fiat_bp384_mulx_u32(&mut x962, &mut x963, x942, 0x901d1a71); + let mut x964: u32 = 0; + let mut x965: u32 = 0; + fiat_bp384_mulx_u32(&mut x964, &mut x965, x942, 0x87470013); + let mut x966: u32 = 0; + let mut x967: u32 = 0; + fiat_bp384_mulx_u32(&mut x966, &mut x967, x942, 0x3107ec53); + let mut x968: u32 = 0; + let mut x969: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x968, &mut x969, 0x0, x967, x964); + let mut x970: u32 = 0; + let mut x971: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x970, &mut x971, x969, x965, x962); + let mut x972: u32 = 0; + let mut x973: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x972, &mut x973, x971, x963, x960); + let mut x974: u32 = 0; + let mut x975: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x974, &mut x975, x973, x961, x958); + let mut x976: u32 = 0; + let mut x977: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x976, &mut x977, x975, x959, x956); + let mut x978: u32 = 0; + let mut x979: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x978, &mut x979, x977, x957, x954); + let mut x980: u32 = 0; + let mut x981: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x980, &mut x981, x979, x955, x952); + let mut x982: u32 = 0; + let mut x983: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x982, &mut x983, x981, x953, x950); + let mut x984: u32 = 0; + let mut x985: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x984, &mut x985, x983, x951, x948); + let mut x986: u32 = 0; + let mut x987: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x986, &mut x987, x985, x949, x946); + let mut x988: u32 = 0; + let mut x989: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x988, &mut x989, x987, x947, x944); + let mut x990: u32 = 0; + let mut x991: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x990, &mut x991, 0x0, x920, x966); + let mut x992: u32 = 0; + let mut x993: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x992, &mut x993, x991, x922, x968); + let mut x994: u32 = 0; + let mut x995: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x994, &mut x995, x993, x924, x970); + let mut x996: u32 = 0; + let mut x997: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x996, &mut x997, x995, x926, x972); + let mut x998: u32 = 0; + let mut x999: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x998, &mut x999, x997, x928, x974); + let mut x1000: u32 = 0; + let mut x1001: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1000, &mut x1001, x999, x930, x976); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1002, &mut x1003, x1001, x932, x978); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1004, &mut x1005, x1003, x934, x980); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1006, &mut x1007, x1005, x936, x982); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1008, &mut x1009, x1007, x938, x984); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1010, &mut x1011, x1009, x940, x986); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1012, + &mut x1013, + x1011, + ((x941 as u32) + ((x919 as u32) + ((x895 as u32) + x851))), + x988, + ); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1014, &mut x1015, 0x0, x992, (arg1[11])); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1016, &mut x1017, x1015, x994, (0x0 as u32)); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1018, &mut x1019, x1017, x996, (0x0 as u32)); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1020, &mut x1021, x1019, x998, (0x0 as u32)); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1022, &mut x1023, x1021, x1000, (0x0 as u32)); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1024, &mut x1025, x1023, x1002, (0x0 as u32)); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1026, &mut x1027, x1025, x1004, (0x0 as u32)); + let mut x1028: u32 = 0; + let mut x1029: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1028, &mut x1029, x1027, x1006, (0x0 as u32)); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1030, &mut x1031, x1029, x1008, (0x0 as u32)); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1032, &mut x1033, x1031, x1010, (0x0 as u32)); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1034, &mut x1035, x1033, x1012, (0x0 as u32)); + let mut x1036: u32 = 0; + let mut x1037: u32 = 0; + fiat_bp384_mulx_u32(&mut x1036, &mut x1037, x1014, 0xea9ec825); + let mut x1038: u32 = 0; + let mut x1039: u32 = 0; + fiat_bp384_mulx_u32(&mut x1038, &mut x1039, x1036, 0x8cb91e82); + let mut x1040: u32 = 0; + let mut x1041: u32 = 0; + fiat_bp384_mulx_u32(&mut x1040, &mut x1041, x1036, 0xa3386d28); + let mut x1042: u32 = 0; + let mut x1043: u32 = 0; + fiat_bp384_mulx_u32(&mut x1042, &mut x1043, x1036, 0xf5d6f7e); + let mut x1044: u32 = 0; + let mut x1045: u32 = 0; + fiat_bp384_mulx_u32(&mut x1044, &mut x1045, x1036, 0x50e641df); + let mut x1046: u32 = 0; + let mut x1047: u32 = 0; + fiat_bp384_mulx_u32(&mut x1046, &mut x1047, x1036, 0x152f7109); + let mut x1048: u32 = 0; + let mut x1049: u32 = 0; + fiat_bp384_mulx_u32(&mut x1048, &mut x1049, x1036, 0xed5456b4); + let mut x1050: u32 = 0; + let mut x1051: u32 = 0; + fiat_bp384_mulx_u32(&mut x1050, &mut x1051, x1036, 0x12b1da19); + let mut x1052: u32 = 0; + let mut x1053: u32 = 0; + fiat_bp384_mulx_u32(&mut x1052, &mut x1053, x1036, 0x7fb71123); + let mut x1054: u32 = 0; + let mut x1055: u32 = 0; + fiat_bp384_mulx_u32(&mut x1054, &mut x1055, x1036, 0xacd3a729); + let mut x1056: u32 = 0; + let mut x1057: u32 = 0; + fiat_bp384_mulx_u32(&mut x1056, &mut x1057, x1036, 0x901d1a71); + let mut x1058: u32 = 0; + let mut x1059: u32 = 0; + fiat_bp384_mulx_u32(&mut x1058, &mut x1059, x1036, 0x87470013); + let mut x1060: u32 = 0; + let mut x1061: u32 = 0; + fiat_bp384_mulx_u32(&mut x1060, &mut x1061, x1036, 0x3107ec53); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1062, &mut x1063, 0x0, x1061, x1058); + let mut x1064: u32 = 0; + let mut x1065: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1059, x1056); + let mut x1066: u32 = 0; + let mut x1067: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1057, x1054); + let mut x1068: u32 = 0; + let mut x1069: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1055, x1052); + let mut x1070: u32 = 0; + let mut x1071: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1053, x1050); + let mut x1072: u32 = 0; + let mut x1073: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1051, x1048); + let mut x1074: u32 = 0; + let mut x1075: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1074, &mut x1075, x1073, x1049, x1046); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1076, &mut x1077, x1075, x1047, x1044); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1045, x1042); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1043, x1040); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1041, x1038); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1084, &mut x1085, 0x0, x1014, x1060); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1016, x1062); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1018, x1064); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1020, x1066); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1022, x1068); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1024, x1070); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1026, x1072); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1028, x1074); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1030, x1076); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1032, x1078); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1034, x1080); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1106, + &mut x1107, + x1105, + ((x1035 as u32) + ((x1013 as u32) + ((x989 as u32) + x945))), + x1082, + ); + let x1108: u32 = ((x1107 as u32) + ((x1083 as u32) + x1039)); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1109, &mut x1110, 0x0, x1086, 0x3107ec53); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1111, &mut x1112, x1110, x1088, 0x87470013); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1113, &mut x1114, x1112, x1090, 0x901d1a71); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1115, &mut x1116, x1114, x1092, 0xacd3a729); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1117, &mut x1118, x1116, x1094, 0x7fb71123); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1119, &mut x1120, x1118, x1096, 0x12b1da19); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1121, &mut x1122, x1120, x1098, 0xed5456b4); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1123, &mut x1124, x1122, x1100, 0x152f7109); + let mut x1125: u32 = 0; + let mut x1126: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1125, &mut x1126, x1124, x1102, 0x50e641df); + let mut x1127: u32 = 0; + let mut x1128: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1127, &mut x1128, x1126, x1104, 0xf5d6f7e); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1129, &mut x1130, x1128, x1106, 0xa3386d28); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1131, &mut x1132, x1130, x1108, 0x8cb91e82); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1133, &mut x1134, x1132, (0x0 as u32), (0x0 as u32)); + let mut x1135: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1135, x1134, x1109, x1086); + let mut x1136: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1136, x1134, x1111, x1088); + let mut x1137: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1137, x1134, x1113, x1090); + let mut x1138: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1138, x1134, x1115, x1092); + let mut x1139: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1139, x1134, x1117, x1094); + let mut x1140: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1140, x1134, x1119, x1096); + let mut x1141: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1141, x1134, x1121, x1098); + let mut x1142: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1142, x1134, x1123, x1100); + let mut x1143: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1143, x1134, x1125, x1102); + let mut x1144: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1144, x1134, x1127, x1104); + let mut x1145: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1145, x1134, x1129, x1106); + let mut x1146: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1146, x1134, x1131, x1108); + out1[0] = x1135; + out1[1] = x1136; + out1[2] = x1137; + out1[3] = x1138; + out1[4] = x1139; + out1[5] = x1140; + out1[6] = x1141; + out1[7] = x1142; + out1[8] = x1143; + out1[9] = x1144; + out1[10] = x1145; + out1[11] = x1146; +} +/// The function fiat_bp384_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_to_montgomery( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_non_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_mulx_u32(&mut x13, &mut x14, x12, 0x36bf6883); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_mulx_u32(&mut x15, &mut x16, x12, 0x178df842); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_mulx_u32(&mut x17, &mut x18, x12, 0xd5c6ef3b); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_mulx_u32(&mut x19, &mut x20, x12, 0xa57e052c); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_mulx_u32(&mut x21, &mut x22, x12, 0x62140191); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_mulx_u32(&mut x23, &mut x24, x12, 0x9918d5af); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_mulx_u32(&mut x25, &mut x26, x12, 0x8e28f99c); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_mulx_u32(&mut x27, &mut x28, x12, 0xc9940899); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_mulx_u32(&mut x29, &mut x30, x12, 0x53528334); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_mulx_u32(&mut x31, &mut x32, x12, 0x3d7fd965); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_mulx_u32(&mut x33, &mut x34, x12, 0x87cefff); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_mulx_u32(&mut x35, &mut x36, x12, 0x40b64bde); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let mut x59: u32 = 0; + let mut x60: u32 = 0; + fiat_bp384_mulx_u32(&mut x59, &mut x60, x35, 0xea9ec825); + let mut x61: u32 = 0; + let mut x62: u32 = 0; + fiat_bp384_mulx_u32(&mut x61, &mut x62, x59, 0x8cb91e82); + let mut x63: u32 = 0; + let mut x64: u32 = 0; + fiat_bp384_mulx_u32(&mut x63, &mut x64, x59, 0xa3386d28); + let mut x65: u32 = 0; + let mut x66: u32 = 0; + fiat_bp384_mulx_u32(&mut x65, &mut x66, x59, 0xf5d6f7e); + let mut x67: u32 = 0; + let mut x68: u32 = 0; + fiat_bp384_mulx_u32(&mut x67, &mut x68, x59, 0x50e641df); + let mut x69: u32 = 0; + let mut x70: u32 = 0; + fiat_bp384_mulx_u32(&mut x69, &mut x70, x59, 0x152f7109); + let mut x71: u32 = 0; + let mut x72: u32 = 0; + fiat_bp384_mulx_u32(&mut x71, &mut x72, x59, 0xed5456b4); + let mut x73: u32 = 0; + let mut x74: u32 = 0; + fiat_bp384_mulx_u32(&mut x73, &mut x74, x59, 0x12b1da19); + let mut x75: u32 = 0; + let mut x76: u32 = 0; + fiat_bp384_mulx_u32(&mut x75, &mut x76, x59, 0x7fb71123); + let mut x77: u32 = 0; + let mut x78: u32 = 0; + fiat_bp384_mulx_u32(&mut x77, &mut x78, x59, 0xacd3a729); + let mut x79: u32 = 0; + let mut x80: u32 = 0; + fiat_bp384_mulx_u32(&mut x79, &mut x80, x59, 0x901d1a71); + let mut x81: u32 = 0; + let mut x82: u32 = 0; + fiat_bp384_mulx_u32(&mut x81, &mut x82, x59, 0x87470013); + let mut x83: u32 = 0; + let mut x84: u32 = 0; + fiat_bp384_mulx_u32(&mut x83, &mut x84, x59, 0x3107ec53); + let mut x85: u32 = 0; + let mut x86: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x85, &mut x86, 0x0, x84, x81); + let mut x87: u32 = 0; + let mut x88: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x87, &mut x88, x86, x82, x79); + let mut x89: u32 = 0; + let mut x90: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x89, &mut x90, x88, x80, x77); + let mut x91: u32 = 0; + let mut x92: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x91, &mut x92, x90, x78, x75); + let mut x93: u32 = 0; + let mut x94: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x93, &mut x94, x92, x76, x73); + let mut x95: u32 = 0; + let mut x96: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x95, &mut x96, x94, x74, x71); + let mut x97: u32 = 0; + let mut x98: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x97, &mut x98, x96, x72, x69); + let mut x99: u32 = 0; + let mut x100: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x99, &mut x100, x98, x70, x67); + let mut x101: u32 = 0; + let mut x102: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x101, &mut x102, x100, x68, x65); + let mut x103: u32 = 0; + let mut x104: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x103, &mut x104, x102, x66, x63); + let mut x105: u32 = 0; + let mut x106: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x105, &mut x106, x104, x64, x61); + let mut x107: u32 = 0; + let mut x108: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x107, &mut x108, 0x0, x35, x83); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x109, &mut x110, x108, x37, x85); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x111, &mut x112, x110, x39, x87); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x113, &mut x114, x112, x41, x89); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x115, &mut x116, x114, x43, x91); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x117, &mut x118, x116, x45, x93); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x119, &mut x120, x118, x47, x95); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x121, &mut x122, x120, x49, x97); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x123, &mut x124, x122, x51, x99); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x125, &mut x126, x124, x53, x101); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x127, &mut x128, x126, x55, x103); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x129, &mut x130, x128, x57, x105); + let mut x131: u32 = 0; + let mut x132: u32 = 0; + fiat_bp384_mulx_u32(&mut x131, &mut x132, x1, 0x36bf6883); + let mut x133: u32 = 0; + let mut x134: u32 = 0; + fiat_bp384_mulx_u32(&mut x133, &mut x134, x1, 0x178df842); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_mulx_u32(&mut x135, &mut x136, x1, 0xd5c6ef3b); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_mulx_u32(&mut x137, &mut x138, x1, 0xa57e052c); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_mulx_u32(&mut x139, &mut x140, x1, 0x62140191); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_mulx_u32(&mut x141, &mut x142, x1, 0x9918d5af); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_mulx_u32(&mut x143, &mut x144, x1, 0x8e28f99c); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_mulx_u32(&mut x145, &mut x146, x1, 0xc9940899); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_mulx_u32(&mut x147, &mut x148, x1, 0x53528334); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_mulx_u32(&mut x149, &mut x150, x1, 0x3d7fd965); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_mulx_u32(&mut x151, &mut x152, x1, 0x87cefff); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_mulx_u32(&mut x153, &mut x154, x1, 0x40b64bde); + let mut x155: u32 = 0; + let mut x156: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x155, &mut x156, 0x0, x154, x151); + let mut x157: u32 = 0; + let mut x158: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x157, &mut x158, x156, x152, x149); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x159, &mut x160, x158, x150, x147); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x161, &mut x162, x160, x148, x145); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x163, &mut x164, x162, x146, x143); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x165, &mut x166, x164, x144, x141); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x167, &mut x168, x166, x142, x139); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x169, &mut x170, x168, x140, x137); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x171, &mut x172, x170, x138, x135); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x173, &mut x174, x172, x136, x133); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x175, &mut x176, x174, x134, x131); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x177, &mut x178, 0x0, x109, x153); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x179, &mut x180, x178, x111, x155); + let mut x181: u32 = 0; + let mut x182: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x181, &mut x182, x180, x113, x157); + let mut x183: u32 = 0; + let mut x184: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x183, &mut x184, x182, x115, x159); + let mut x185: u32 = 0; + let mut x186: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x185, &mut x186, x184, x117, x161); + let mut x187: u32 = 0; + let mut x188: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x187, &mut x188, x186, x119, x163); + let mut x189: u32 = 0; + let mut x190: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x189, &mut x190, x188, x121, x165); + let mut x191: u32 = 0; + let mut x192: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x191, &mut x192, x190, x123, x167); + let mut x193: u32 = 0; + let mut x194: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x193, &mut x194, x192, x125, x169); + let mut x195: u32 = 0; + let mut x196: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x195, &mut x196, x194, x127, x171); + let mut x197: u32 = 0; + let mut x198: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x197, &mut x198, x196, x129, x173); + let mut x199: u32 = 0; + let mut x200: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x199, + &mut x200, + x198, + (((x130 as u32) + ((x58 as u32) + x14)) + ((x106 as u32) + x62)), + x175, + ); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp384_mulx_u32(&mut x201, &mut x202, x177, 0xea9ec825); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp384_mulx_u32(&mut x203, &mut x204, x201, 0x8cb91e82); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp384_mulx_u32(&mut x205, &mut x206, x201, 0xa3386d28); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp384_mulx_u32(&mut x207, &mut x208, x201, 0xf5d6f7e); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp384_mulx_u32(&mut x209, &mut x210, x201, 0x50e641df); + let mut x211: u32 = 0; + let mut x212: u32 = 0; + fiat_bp384_mulx_u32(&mut x211, &mut x212, x201, 0x152f7109); + let mut x213: u32 = 0; + let mut x214: u32 = 0; + fiat_bp384_mulx_u32(&mut x213, &mut x214, x201, 0xed5456b4); + let mut x215: u32 = 0; + let mut x216: u32 = 0; + fiat_bp384_mulx_u32(&mut x215, &mut x216, x201, 0x12b1da19); + let mut x217: u32 = 0; + let mut x218: u32 = 0; + fiat_bp384_mulx_u32(&mut x217, &mut x218, x201, 0x7fb71123); + let mut x219: u32 = 0; + let mut x220: u32 = 0; + fiat_bp384_mulx_u32(&mut x219, &mut x220, x201, 0xacd3a729); + let mut x221: u32 = 0; + let mut x222: u32 = 0; + fiat_bp384_mulx_u32(&mut x221, &mut x222, x201, 0x901d1a71); + let mut x223: u32 = 0; + let mut x224: u32 = 0; + fiat_bp384_mulx_u32(&mut x223, &mut x224, x201, 0x87470013); + let mut x225: u32 = 0; + let mut x226: u32 = 0; + fiat_bp384_mulx_u32(&mut x225, &mut x226, x201, 0x3107ec53); + let mut x227: u32 = 0; + let mut x228: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x227, &mut x228, 0x0, x226, x223); + let mut x229: u32 = 0; + let mut x230: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x229, &mut x230, x228, x224, x221); + let mut x231: u32 = 0; + let mut x232: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x231, &mut x232, x230, x222, x219); + let mut x233: u32 = 0; + let mut x234: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x233, &mut x234, x232, x220, x217); + let mut x235: u32 = 0; + let mut x236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x235, &mut x236, x234, x218, x215); + let mut x237: u32 = 0; + let mut x238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x237, &mut x238, x236, x216, x213); + let mut x239: u32 = 0; + let mut x240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x239, &mut x240, x238, x214, x211); + let mut x241: u32 = 0; + let mut x242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x241, &mut x242, x240, x212, x209); + let mut x243: u32 = 0; + let mut x244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x243, &mut x244, x242, x210, x207); + let mut x245: u32 = 0; + let mut x246: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x245, &mut x246, x244, x208, x205); + let mut x247: u32 = 0; + let mut x248: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x247, &mut x248, x246, x206, x203); + let mut x249: u32 = 0; + let mut x250: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x249, &mut x250, 0x0, x177, x225); + let mut x251: u32 = 0; + let mut x252: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x251, &mut x252, x250, x179, x227); + let mut x253: u32 = 0; + let mut x254: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x253, &mut x254, x252, x181, x229); + let mut x255: u32 = 0; + let mut x256: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x255, &mut x256, x254, x183, x231); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x257, &mut x258, x256, x185, x233); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x259, &mut x260, x258, x187, x235); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x261, &mut x262, x260, x189, x237); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x263, &mut x264, x262, x191, x239); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x265, &mut x266, x264, x193, x241); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x267, &mut x268, x266, x195, x243); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x269, &mut x270, x268, x197, x245); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x271, &mut x272, x270, x199, x247); + let mut x273: u32 = 0; + let mut x274: u32 = 0; + fiat_bp384_mulx_u32(&mut x273, &mut x274, x2, 0x36bf6883); + let mut x275: u32 = 0; + let mut x276: u32 = 0; + fiat_bp384_mulx_u32(&mut x275, &mut x276, x2, 0x178df842); + let mut x277: u32 = 0; + let mut x278: u32 = 0; + fiat_bp384_mulx_u32(&mut x277, &mut x278, x2, 0xd5c6ef3b); + let mut x279: u32 = 0; + let mut x280: u32 = 0; + fiat_bp384_mulx_u32(&mut x279, &mut x280, x2, 0xa57e052c); + let mut x281: u32 = 0; + let mut x282: u32 = 0; + fiat_bp384_mulx_u32(&mut x281, &mut x282, x2, 0x62140191); + let mut x283: u32 = 0; + let mut x284: u32 = 0; + fiat_bp384_mulx_u32(&mut x283, &mut x284, x2, 0x9918d5af); + let mut x285: u32 = 0; + let mut x286: u32 = 0; + fiat_bp384_mulx_u32(&mut x285, &mut x286, x2, 0x8e28f99c); + let mut x287: u32 = 0; + let mut x288: u32 = 0; + fiat_bp384_mulx_u32(&mut x287, &mut x288, x2, 0xc9940899); + let mut x289: u32 = 0; + let mut x290: u32 = 0; + fiat_bp384_mulx_u32(&mut x289, &mut x290, x2, 0x53528334); + let mut x291: u32 = 0; + let mut x292: u32 = 0; + fiat_bp384_mulx_u32(&mut x291, &mut x292, x2, 0x3d7fd965); + let mut x293: u32 = 0; + let mut x294: u32 = 0; + fiat_bp384_mulx_u32(&mut x293, &mut x294, x2, 0x87cefff); + let mut x295: u32 = 0; + let mut x296: u32 = 0; + fiat_bp384_mulx_u32(&mut x295, &mut x296, x2, 0x40b64bde); + let mut x297: u32 = 0; + let mut x298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x297, &mut x298, 0x0, x296, x293); + let mut x299: u32 = 0; + let mut x300: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x299, &mut x300, x298, x294, x291); + let mut x301: u32 = 0; + let mut x302: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x301, &mut x302, x300, x292, x289); + let mut x303: u32 = 0; + let mut x304: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x303, &mut x304, x302, x290, x287); + let mut x305: u32 = 0; + let mut x306: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x305, &mut x306, x304, x288, x285); + let mut x307: u32 = 0; + let mut x308: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x307, &mut x308, x306, x286, x283); + let mut x309: u32 = 0; + let mut x310: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x309, &mut x310, x308, x284, x281); + let mut x311: u32 = 0; + let mut x312: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x311, &mut x312, x310, x282, x279); + let mut x313: u32 = 0; + let mut x314: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x313, &mut x314, x312, x280, x277); + let mut x315: u32 = 0; + let mut x316: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x315, &mut x316, x314, x278, x275); + let mut x317: u32 = 0; + let mut x318: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x317, &mut x318, x316, x276, x273); + let mut x319: u32 = 0; + let mut x320: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x319, &mut x320, 0x0, x251, x295); + let mut x321: u32 = 0; + let mut x322: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x321, &mut x322, x320, x253, x297); + let mut x323: u32 = 0; + let mut x324: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x323, &mut x324, x322, x255, x299); + let mut x325: u32 = 0; + let mut x326: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x325, &mut x326, x324, x257, x301); + let mut x327: u32 = 0; + let mut x328: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x327, &mut x328, x326, x259, x303); + let mut x329: u32 = 0; + let mut x330: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x329, &mut x330, x328, x261, x305); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x331, &mut x332, x330, x263, x307); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x333, &mut x334, x332, x265, x309); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x335, &mut x336, x334, x267, x311); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x337, &mut x338, x336, x269, x313); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x339, &mut x340, x338, x271, x315); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x341, + &mut x342, + x340, + (((x272 as u32) + ((x200 as u32) + ((x176 as u32) + x132))) + ((x248 as u32) + x204)), + x317, + ); + let mut x343: u32 = 0; + let mut x344: u32 = 0; + fiat_bp384_mulx_u32(&mut x343, &mut x344, x319, 0xea9ec825); + let mut x345: u32 = 0; + let mut x346: u32 = 0; + fiat_bp384_mulx_u32(&mut x345, &mut x346, x343, 0x8cb91e82); + let mut x347: u32 = 0; + let mut x348: u32 = 0; + fiat_bp384_mulx_u32(&mut x347, &mut x348, x343, 0xa3386d28); + let mut x349: u32 = 0; + let mut x350: u32 = 0; + fiat_bp384_mulx_u32(&mut x349, &mut x350, x343, 0xf5d6f7e); + let mut x351: u32 = 0; + let mut x352: u32 = 0; + fiat_bp384_mulx_u32(&mut x351, &mut x352, x343, 0x50e641df); + let mut x353: u32 = 0; + let mut x354: u32 = 0; + fiat_bp384_mulx_u32(&mut x353, &mut x354, x343, 0x152f7109); + let mut x355: u32 = 0; + let mut x356: u32 = 0; + fiat_bp384_mulx_u32(&mut x355, &mut x356, x343, 0xed5456b4); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_mulx_u32(&mut x357, &mut x358, x343, 0x12b1da19); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_mulx_u32(&mut x359, &mut x360, x343, 0x7fb71123); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_mulx_u32(&mut x361, &mut x362, x343, 0xacd3a729); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_mulx_u32(&mut x363, &mut x364, x343, 0x901d1a71); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_mulx_u32(&mut x365, &mut x366, x343, 0x87470013); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_mulx_u32(&mut x367, &mut x368, x343, 0x3107ec53); + let mut x369: u32 = 0; + let mut x370: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x369, &mut x370, 0x0, x368, x365); + let mut x371: u32 = 0; + let mut x372: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x371, &mut x372, x370, x366, x363); + let mut x373: u32 = 0; + let mut x374: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x373, &mut x374, x372, x364, x361); + let mut x375: u32 = 0; + let mut x376: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x375, &mut x376, x374, x362, x359); + let mut x377: u32 = 0; + let mut x378: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x377, &mut x378, x376, x360, x357); + let mut x379: u32 = 0; + let mut x380: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x379, &mut x380, x378, x358, x355); + let mut x381: u32 = 0; + let mut x382: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x381, &mut x382, x380, x356, x353); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x383, &mut x384, x382, x354, x351); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x385, &mut x386, x384, x352, x349); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x387, &mut x388, x386, x350, x347); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x389, &mut x390, x388, x348, x345); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x391, &mut x392, 0x0, x319, x367); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x393, &mut x394, x392, x321, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x395, &mut x396, x394, x323, x371); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x397, &mut x398, x396, x325, x373); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x399, &mut x400, x398, x327, x375); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x401, &mut x402, x400, x329, x377); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x403, &mut x404, x402, x331, x379); + let mut x405: u32 = 0; + let mut x406: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x405, &mut x406, x404, x333, x381); + let mut x407: u32 = 0; + let mut x408: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x407, &mut x408, x406, x335, x383); + let mut x409: u32 = 0; + let mut x410: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x409, &mut x410, x408, x337, x385); + let mut x411: u32 = 0; + let mut x412: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x411, &mut x412, x410, x339, x387); + let mut x413: u32 = 0; + let mut x414: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x413, &mut x414, x412, x341, x389); + let mut x415: u32 = 0; + let mut x416: u32 = 0; + fiat_bp384_mulx_u32(&mut x415, &mut x416, x3, 0x36bf6883); + let mut x417: u32 = 0; + let mut x418: u32 = 0; + fiat_bp384_mulx_u32(&mut x417, &mut x418, x3, 0x178df842); + let mut x419: u32 = 0; + let mut x420: u32 = 0; + fiat_bp384_mulx_u32(&mut x419, &mut x420, x3, 0xd5c6ef3b); + let mut x421: u32 = 0; + let mut x422: u32 = 0; + fiat_bp384_mulx_u32(&mut x421, &mut x422, x3, 0xa57e052c); + let mut x423: u32 = 0; + let mut x424: u32 = 0; + fiat_bp384_mulx_u32(&mut x423, &mut x424, x3, 0x62140191); + let mut x425: u32 = 0; + let mut x426: u32 = 0; + fiat_bp384_mulx_u32(&mut x425, &mut x426, x3, 0x9918d5af); + let mut x427: u32 = 0; + let mut x428: u32 = 0; + fiat_bp384_mulx_u32(&mut x427, &mut x428, x3, 0x8e28f99c); + let mut x429: u32 = 0; + let mut x430: u32 = 0; + fiat_bp384_mulx_u32(&mut x429, &mut x430, x3, 0xc9940899); + let mut x431: u32 = 0; + let mut x432: u32 = 0; + fiat_bp384_mulx_u32(&mut x431, &mut x432, x3, 0x53528334); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_mulx_u32(&mut x433, &mut x434, x3, 0x3d7fd965); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_mulx_u32(&mut x435, &mut x436, x3, 0x87cefff); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_mulx_u32(&mut x437, &mut x438, x3, 0x40b64bde); + let mut x439: u32 = 0; + let mut x440: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x439, &mut x440, 0x0, x438, x435); + let mut x441: u32 = 0; + let mut x442: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x441, &mut x442, x440, x436, x433); + let mut x443: u32 = 0; + let mut x444: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x443, &mut x444, x442, x434, x431); + let mut x445: u32 = 0; + let mut x446: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x445, &mut x446, x444, x432, x429); + let mut x447: u32 = 0; + let mut x448: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x447, &mut x448, x446, x430, x427); + let mut x449: u32 = 0; + let mut x450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x449, &mut x450, x448, x428, x425); + let mut x451: u32 = 0; + let mut x452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x451, &mut x452, x450, x426, x423); + let mut x453: u32 = 0; + let mut x454: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x453, &mut x454, x452, x424, x421); + let mut x455: u32 = 0; + let mut x456: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x455, &mut x456, x454, x422, x419); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x457, &mut x458, x456, x420, x417); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x459, &mut x460, x458, x418, x415); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x461, &mut x462, 0x0, x393, x437); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x463, &mut x464, x462, x395, x439); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x465, &mut x466, x464, x397, x441); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x467, &mut x468, x466, x399, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x469, &mut x470, x468, x401, x445); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x471, &mut x472, x470, x403, x447); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x473, &mut x474, x472, x405, x449); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x475, &mut x476, x474, x407, x451); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x477, &mut x478, x476, x409, x453); + let mut x479: u32 = 0; + let mut x480: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x479, &mut x480, x478, x411, x455); + let mut x481: u32 = 0; + let mut x482: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x481, &mut x482, x480, x413, x457); + let mut x483: u32 = 0; + let mut x484: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x483, + &mut x484, + x482, + (((x414 as u32) + ((x342 as u32) + ((x318 as u32) + x274))) + ((x390 as u32) + x346)), + x459, + ); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp384_mulx_u32(&mut x485, &mut x486, x461, 0xea9ec825); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp384_mulx_u32(&mut x487, &mut x488, x485, 0x8cb91e82); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp384_mulx_u32(&mut x489, &mut x490, x485, 0xa3386d28); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp384_mulx_u32(&mut x491, &mut x492, x485, 0xf5d6f7e); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp384_mulx_u32(&mut x493, &mut x494, x485, 0x50e641df); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp384_mulx_u32(&mut x495, &mut x496, x485, 0x152f7109); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp384_mulx_u32(&mut x497, &mut x498, x485, 0xed5456b4); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp384_mulx_u32(&mut x499, &mut x500, x485, 0x12b1da19); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp384_mulx_u32(&mut x501, &mut x502, x485, 0x7fb71123); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp384_mulx_u32(&mut x503, &mut x504, x485, 0xacd3a729); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp384_mulx_u32(&mut x505, &mut x506, x485, 0x901d1a71); + let mut x507: u32 = 0; + let mut x508: u32 = 0; + fiat_bp384_mulx_u32(&mut x507, &mut x508, x485, 0x87470013); + let mut x509: u32 = 0; + let mut x510: u32 = 0; + fiat_bp384_mulx_u32(&mut x509, &mut x510, x485, 0x3107ec53); + let mut x511: u32 = 0; + let mut x512: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u32 = 0; + let mut x514: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u32 = 0; + let mut x516: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u32 = 0; + let mut x518: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u32 = 0; + let mut x520: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u32 = 0; + let mut x522: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u32 = 0; + let mut x524: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x523, &mut x524, x522, x498, x495); + let mut x525: u32 = 0; + let mut x526: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x525, &mut x526, x524, x496, x493); + let mut x527: u32 = 0; + let mut x528: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x527, &mut x528, x526, x494, x491); + let mut x529: u32 = 0; + let mut x530: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x529, &mut x530, x528, x492, x489); + let mut x531: u32 = 0; + let mut x532: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x531, &mut x532, x530, x490, x487); + let mut x533: u32 = 0; + let mut x534: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x533, &mut x534, 0x0, x461, x509); + let mut x535: u32 = 0; + let mut x536: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x535, &mut x536, x534, x463, x511); + let mut x537: u32 = 0; + let mut x538: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x537, &mut x538, x536, x465, x513); + let mut x539: u32 = 0; + let mut x540: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x539, &mut x540, x538, x467, x515); + let mut x541: u32 = 0; + let mut x542: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x541, &mut x542, x540, x469, x517); + let mut x543: u32 = 0; + let mut x544: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x543, &mut x544, x542, x471, x519); + let mut x545: u32 = 0; + let mut x546: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x545, &mut x546, x544, x473, x521); + let mut x547: u32 = 0; + let mut x548: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x547, &mut x548, x546, x475, x523); + let mut x549: u32 = 0; + let mut x550: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x549, &mut x550, x548, x477, x525); + let mut x551: u32 = 0; + let mut x552: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x551, &mut x552, x550, x479, x527); + let mut x553: u32 = 0; + let mut x554: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x553, &mut x554, x552, x481, x529); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x555, &mut x556, x554, x483, x531); + let mut x557: u32 = 0; + let mut x558: u32 = 0; + fiat_bp384_mulx_u32(&mut x557, &mut x558, x4, 0x36bf6883); + let mut x559: u32 = 0; + let mut x560: u32 = 0; + fiat_bp384_mulx_u32(&mut x559, &mut x560, x4, 0x178df842); + let mut x561: u32 = 0; + let mut x562: u32 = 0; + fiat_bp384_mulx_u32(&mut x561, &mut x562, x4, 0xd5c6ef3b); + let mut x563: u32 = 0; + let mut x564: u32 = 0; + fiat_bp384_mulx_u32(&mut x563, &mut x564, x4, 0xa57e052c); + let mut x565: u32 = 0; + let mut x566: u32 = 0; + fiat_bp384_mulx_u32(&mut x565, &mut x566, x4, 0x62140191); + let mut x567: u32 = 0; + let mut x568: u32 = 0; + fiat_bp384_mulx_u32(&mut x567, &mut x568, x4, 0x9918d5af); + let mut x569: u32 = 0; + let mut x570: u32 = 0; + fiat_bp384_mulx_u32(&mut x569, &mut x570, x4, 0x8e28f99c); + let mut x571: u32 = 0; + let mut x572: u32 = 0; + fiat_bp384_mulx_u32(&mut x571, &mut x572, x4, 0xc9940899); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp384_mulx_u32(&mut x573, &mut x574, x4, 0x53528334); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp384_mulx_u32(&mut x575, &mut x576, x4, 0x3d7fd965); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp384_mulx_u32(&mut x577, &mut x578, x4, 0x87cefff); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp384_mulx_u32(&mut x579, &mut x580, x4, 0x40b64bde); + let mut x581: u32 = 0; + let mut x582: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x581, &mut x582, 0x0, x580, x577); + let mut x583: u32 = 0; + let mut x584: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x583, &mut x584, x582, x578, x575); + let mut x585: u32 = 0; + let mut x586: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x585, &mut x586, x584, x576, x573); + let mut x587: u32 = 0; + let mut x588: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x587, &mut x588, x586, x574, x571); + let mut x589: u32 = 0; + let mut x590: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x589, &mut x590, x588, x572, x569); + let mut x591: u32 = 0; + let mut x592: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x591, &mut x592, x590, x570, x567); + let mut x593: u32 = 0; + let mut x594: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x593, &mut x594, x592, x568, x565); + let mut x595: u32 = 0; + let mut x596: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x595, &mut x596, x594, x566, x563); + let mut x597: u32 = 0; + let mut x598: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x597, &mut x598, x596, x564, x561); + let mut x599: u32 = 0; + let mut x600: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x599, &mut x600, x598, x562, x559); + let mut x601: u32 = 0; + let mut x602: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x601, &mut x602, x600, x560, x557); + let mut x603: u32 = 0; + let mut x604: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x603, &mut x604, 0x0, x535, x579); + let mut x605: u32 = 0; + let mut x606: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x605, &mut x606, x604, x537, x581); + let mut x607: u32 = 0; + let mut x608: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x607, &mut x608, x606, x539, x583); + let mut x609: u32 = 0; + let mut x610: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x609, &mut x610, x608, x541, x585); + let mut x611: u32 = 0; + let mut x612: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x611, &mut x612, x610, x543, x587); + let mut x613: u32 = 0; + let mut x614: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x613, &mut x614, x612, x545, x589); + let mut x615: u32 = 0; + let mut x616: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x615, &mut x616, x614, x547, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x617, &mut x618, x616, x549, x593); + let mut x619: u32 = 0; + let mut x620: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x619, &mut x620, x618, x551, x595); + let mut x621: u32 = 0; + let mut x622: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x621, &mut x622, x620, x553, x597); + let mut x623: u32 = 0; + let mut x624: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x623, &mut x624, x622, x555, x599); + let mut x625: u32 = 0; + let mut x626: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x625, + &mut x626, + x624, + (((x556 as u32) + ((x484 as u32) + ((x460 as u32) + x416))) + ((x532 as u32) + x488)), + x601, + ); + let mut x627: u32 = 0; + let mut x628: u32 = 0; + fiat_bp384_mulx_u32(&mut x627, &mut x628, x603, 0xea9ec825); + let mut x629: u32 = 0; + let mut x630: u32 = 0; + fiat_bp384_mulx_u32(&mut x629, &mut x630, x627, 0x8cb91e82); + let mut x631: u32 = 0; + let mut x632: u32 = 0; + fiat_bp384_mulx_u32(&mut x631, &mut x632, x627, 0xa3386d28); + let mut x633: u32 = 0; + let mut x634: u32 = 0; + fiat_bp384_mulx_u32(&mut x633, &mut x634, x627, 0xf5d6f7e); + let mut x635: u32 = 0; + let mut x636: u32 = 0; + fiat_bp384_mulx_u32(&mut x635, &mut x636, x627, 0x50e641df); + let mut x637: u32 = 0; + let mut x638: u32 = 0; + fiat_bp384_mulx_u32(&mut x637, &mut x638, x627, 0x152f7109); + let mut x639: u32 = 0; + let mut x640: u32 = 0; + fiat_bp384_mulx_u32(&mut x639, &mut x640, x627, 0xed5456b4); + let mut x641: u32 = 0; + let mut x642: u32 = 0; + fiat_bp384_mulx_u32(&mut x641, &mut x642, x627, 0x12b1da19); + let mut x643: u32 = 0; + let mut x644: u32 = 0; + fiat_bp384_mulx_u32(&mut x643, &mut x644, x627, 0x7fb71123); + let mut x645: u32 = 0; + let mut x646: u32 = 0; + fiat_bp384_mulx_u32(&mut x645, &mut x646, x627, 0xacd3a729); + let mut x647: u32 = 0; + let mut x648: u32 = 0; + fiat_bp384_mulx_u32(&mut x647, &mut x648, x627, 0x901d1a71); + let mut x649: u32 = 0; + let mut x650: u32 = 0; + fiat_bp384_mulx_u32(&mut x649, &mut x650, x627, 0x87470013); + let mut x651: u32 = 0; + let mut x652: u32 = 0; + fiat_bp384_mulx_u32(&mut x651, &mut x652, x627, 0x3107ec53); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x653, &mut x654, 0x0, x652, x649); + let mut x655: u32 = 0; + let mut x656: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x655, &mut x656, x654, x650, x647); + let mut x657: u32 = 0; + let mut x658: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x657, &mut x658, x656, x648, x645); + let mut x659: u32 = 0; + let mut x660: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x659, &mut x660, x658, x646, x643); + let mut x661: u32 = 0; + let mut x662: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x661, &mut x662, x660, x644, x641); + let mut x663: u32 = 0; + let mut x664: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x663, &mut x664, x662, x642, x639); + let mut x665: u32 = 0; + let mut x666: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x665, &mut x666, x664, x640, x637); + let mut x667: u32 = 0; + let mut x668: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x667, &mut x668, x666, x638, x635); + let mut x669: u32 = 0; + let mut x670: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x669, &mut x670, x668, x636, x633); + let mut x671: u32 = 0; + let mut x672: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x671, &mut x672, x670, x634, x631); + let mut x673: u32 = 0; + let mut x674: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x673, &mut x674, x672, x632, x629); + let mut x675: u32 = 0; + let mut x676: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x675, &mut x676, 0x0, x603, x651); + let mut x677: u32 = 0; + let mut x678: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x677, &mut x678, x676, x605, x653); + let mut x679: u32 = 0; + let mut x680: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x679, &mut x680, x678, x607, x655); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x681, &mut x682, x680, x609, x657); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x683, &mut x684, x682, x611, x659); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x685, &mut x686, x684, x613, x661); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x687, &mut x688, x686, x615, x663); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x689, &mut x690, x688, x617, x665); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x691, &mut x692, x690, x619, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x693, &mut x694, x692, x621, x669); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x695, &mut x696, x694, x623, x671); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x697, &mut x698, x696, x625, x673); + let mut x699: u32 = 0; + let mut x700: u32 = 0; + fiat_bp384_mulx_u32(&mut x699, &mut x700, x5, 0x36bf6883); + let mut x701: u32 = 0; + let mut x702: u32 = 0; + fiat_bp384_mulx_u32(&mut x701, &mut x702, x5, 0x178df842); + let mut x703: u32 = 0; + let mut x704: u32 = 0; + fiat_bp384_mulx_u32(&mut x703, &mut x704, x5, 0xd5c6ef3b); + let mut x705: u32 = 0; + let mut x706: u32 = 0; + fiat_bp384_mulx_u32(&mut x705, &mut x706, x5, 0xa57e052c); + let mut x707: u32 = 0; + let mut x708: u32 = 0; + fiat_bp384_mulx_u32(&mut x707, &mut x708, x5, 0x62140191); + let mut x709: u32 = 0; + let mut x710: u32 = 0; + fiat_bp384_mulx_u32(&mut x709, &mut x710, x5, 0x9918d5af); + let mut x711: u32 = 0; + let mut x712: u32 = 0; + fiat_bp384_mulx_u32(&mut x711, &mut x712, x5, 0x8e28f99c); + let mut x713: u32 = 0; + let mut x714: u32 = 0; + fiat_bp384_mulx_u32(&mut x713, &mut x714, x5, 0xc9940899); + let mut x715: u32 = 0; + let mut x716: u32 = 0; + fiat_bp384_mulx_u32(&mut x715, &mut x716, x5, 0x53528334); + let mut x717: u32 = 0; + let mut x718: u32 = 0; + fiat_bp384_mulx_u32(&mut x717, &mut x718, x5, 0x3d7fd965); + let mut x719: u32 = 0; + let mut x720: u32 = 0; + fiat_bp384_mulx_u32(&mut x719, &mut x720, x5, 0x87cefff); + let mut x721: u32 = 0; + let mut x722: u32 = 0; + fiat_bp384_mulx_u32(&mut x721, &mut x722, x5, 0x40b64bde); + let mut x723: u32 = 0; + let mut x724: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x723, &mut x724, 0x0, x722, x719); + let mut x725: u32 = 0; + let mut x726: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x725, &mut x726, x724, x720, x717); + let mut x727: u32 = 0; + let mut x728: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x727, &mut x728, x726, x718, x715); + let mut x729: u32 = 0; + let mut x730: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x729, &mut x730, x728, x716, x713); + let mut x731: u32 = 0; + let mut x732: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x731, &mut x732, x730, x714, x711); + let mut x733: u32 = 0; + let mut x734: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x733, &mut x734, x732, x712, x709); + let mut x735: u32 = 0; + let mut x736: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x735, &mut x736, x734, x710, x707); + let mut x737: u32 = 0; + let mut x738: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x737, &mut x738, x736, x708, x705); + let mut x739: u32 = 0; + let mut x740: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x739, &mut x740, x738, x706, x703); + let mut x741: u32 = 0; + let mut x742: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x741, &mut x742, x740, x704, x701); + let mut x743: u32 = 0; + let mut x744: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x743, &mut x744, x742, x702, x699); + let mut x745: u32 = 0; + let mut x746: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x745, &mut x746, 0x0, x677, x721); + let mut x747: u32 = 0; + let mut x748: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x747, &mut x748, x746, x679, x723); + let mut x749: u32 = 0; + let mut x750: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x749, &mut x750, x748, x681, x725); + let mut x751: u32 = 0; + let mut x752: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x751, &mut x752, x750, x683, x727); + let mut x753: u32 = 0; + let mut x754: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x753, &mut x754, x752, x685, x729); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x755, &mut x756, x754, x687, x731); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x757, &mut x758, x756, x689, x733); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x759, &mut x760, x758, x691, x735); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x761, &mut x762, x760, x693, x737); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x763, &mut x764, x762, x695, x739); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x765, &mut x766, x764, x697, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x767, + &mut x768, + x766, + (((x698 as u32) + ((x626 as u32) + ((x602 as u32) + x558))) + ((x674 as u32) + x630)), + x743, + ); + let mut x769: u32 = 0; + let mut x770: u32 = 0; + fiat_bp384_mulx_u32(&mut x769, &mut x770, x745, 0xea9ec825); + let mut x771: u32 = 0; + let mut x772: u32 = 0; + fiat_bp384_mulx_u32(&mut x771, &mut x772, x769, 0x8cb91e82); + let mut x773: u32 = 0; + let mut x774: u32 = 0; + fiat_bp384_mulx_u32(&mut x773, &mut x774, x769, 0xa3386d28); + let mut x775: u32 = 0; + let mut x776: u32 = 0; + fiat_bp384_mulx_u32(&mut x775, &mut x776, x769, 0xf5d6f7e); + let mut x777: u32 = 0; + let mut x778: u32 = 0; + fiat_bp384_mulx_u32(&mut x777, &mut x778, x769, 0x50e641df); + let mut x779: u32 = 0; + let mut x780: u32 = 0; + fiat_bp384_mulx_u32(&mut x779, &mut x780, x769, 0x152f7109); + let mut x781: u32 = 0; + let mut x782: u32 = 0; + fiat_bp384_mulx_u32(&mut x781, &mut x782, x769, 0xed5456b4); + let mut x783: u32 = 0; + let mut x784: u32 = 0; + fiat_bp384_mulx_u32(&mut x783, &mut x784, x769, 0x12b1da19); + let mut x785: u32 = 0; + let mut x786: u32 = 0; + fiat_bp384_mulx_u32(&mut x785, &mut x786, x769, 0x7fb71123); + let mut x787: u32 = 0; + let mut x788: u32 = 0; + fiat_bp384_mulx_u32(&mut x787, &mut x788, x769, 0xacd3a729); + let mut x789: u32 = 0; + let mut x790: u32 = 0; + fiat_bp384_mulx_u32(&mut x789, &mut x790, x769, 0x901d1a71); + let mut x791: u32 = 0; + let mut x792: u32 = 0; + fiat_bp384_mulx_u32(&mut x791, &mut x792, x769, 0x87470013); + let mut x793: u32 = 0; + let mut x794: u32 = 0; + fiat_bp384_mulx_u32(&mut x793, &mut x794, x769, 0x3107ec53); + let mut x795: u32 = 0; + let mut x796: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x795, &mut x796, 0x0, x794, x791); + let mut x797: u32 = 0; + let mut x798: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x797, &mut x798, x796, x792, x789); + let mut x799: u32 = 0; + let mut x800: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x799, &mut x800, x798, x790, x787); + let mut x801: u32 = 0; + let mut x802: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x801, &mut x802, x800, x788, x785); + let mut x803: u32 = 0; + let mut x804: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x803, &mut x804, x802, x786, x783); + let mut x805: u32 = 0; + let mut x806: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x805, &mut x806, x804, x784, x781); + let mut x807: u32 = 0; + let mut x808: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x807, &mut x808, x806, x782, x779); + let mut x809: u32 = 0; + let mut x810: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x809, &mut x810, x808, x780, x777); + let mut x811: u32 = 0; + let mut x812: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x811, &mut x812, x810, x778, x775); + let mut x813: u32 = 0; + let mut x814: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x813, &mut x814, x812, x776, x773); + let mut x815: u32 = 0; + let mut x816: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x815, &mut x816, x814, x774, x771); + let mut x817: u32 = 0; + let mut x818: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x817, &mut x818, 0x0, x745, x793); + let mut x819: u32 = 0; + let mut x820: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x819, &mut x820, x818, x747, x795); + let mut x821: u32 = 0; + let mut x822: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x821, &mut x822, x820, x749, x797); + let mut x823: u32 = 0; + let mut x824: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x823, &mut x824, x822, x751, x799); + let mut x825: u32 = 0; + let mut x826: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x825, &mut x826, x824, x753, x801); + let mut x827: u32 = 0; + let mut x828: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x827, &mut x828, x826, x755, x803); + let mut x829: u32 = 0; + let mut x830: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x829, &mut x830, x828, x757, x805); + let mut x831: u32 = 0; + let mut x832: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x831, &mut x832, x830, x759, x807); + let mut x833: u32 = 0; + let mut x834: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x833, &mut x834, x832, x761, x809); + let mut x835: u32 = 0; + let mut x836: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x835, &mut x836, x834, x763, x811); + let mut x837: u32 = 0; + let mut x838: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x837, &mut x838, x836, x765, x813); + let mut x839: u32 = 0; + let mut x840: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x839, &mut x840, x838, x767, x815); + let mut x841: u32 = 0; + let mut x842: u32 = 0; + fiat_bp384_mulx_u32(&mut x841, &mut x842, x6, 0x36bf6883); + let mut x843: u32 = 0; + let mut x844: u32 = 0; + fiat_bp384_mulx_u32(&mut x843, &mut x844, x6, 0x178df842); + let mut x845: u32 = 0; + let mut x846: u32 = 0; + fiat_bp384_mulx_u32(&mut x845, &mut x846, x6, 0xd5c6ef3b); + let mut x847: u32 = 0; + let mut x848: u32 = 0; + fiat_bp384_mulx_u32(&mut x847, &mut x848, x6, 0xa57e052c); + let mut x849: u32 = 0; + let mut x850: u32 = 0; + fiat_bp384_mulx_u32(&mut x849, &mut x850, x6, 0x62140191); + let mut x851: u32 = 0; + let mut x852: u32 = 0; + fiat_bp384_mulx_u32(&mut x851, &mut x852, x6, 0x9918d5af); + let mut x853: u32 = 0; + let mut x854: u32 = 0; + fiat_bp384_mulx_u32(&mut x853, &mut x854, x6, 0x8e28f99c); + let mut x855: u32 = 0; + let mut x856: u32 = 0; + fiat_bp384_mulx_u32(&mut x855, &mut x856, x6, 0xc9940899); + let mut x857: u32 = 0; + let mut x858: u32 = 0; + fiat_bp384_mulx_u32(&mut x857, &mut x858, x6, 0x53528334); + let mut x859: u32 = 0; + let mut x860: u32 = 0; + fiat_bp384_mulx_u32(&mut x859, &mut x860, x6, 0x3d7fd965); + let mut x861: u32 = 0; + let mut x862: u32 = 0; + fiat_bp384_mulx_u32(&mut x861, &mut x862, x6, 0x87cefff); + let mut x863: u32 = 0; + let mut x864: u32 = 0; + fiat_bp384_mulx_u32(&mut x863, &mut x864, x6, 0x40b64bde); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x865, &mut x866, 0x0, x864, x861); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x867, &mut x868, x866, x862, x859); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x869, &mut x870, x868, x860, x857); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x871, &mut x872, x870, x858, x855); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x873, &mut x874, x872, x856, x853); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x875, &mut x876, x874, x854, x851); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x877, &mut x878, x876, x852, x849); + let mut x879: u32 = 0; + let mut x880: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x879, &mut x880, x878, x850, x847); + let mut x881: u32 = 0; + let mut x882: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x881, &mut x882, x880, x848, x845); + let mut x883: u32 = 0; + let mut x884: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x883, &mut x884, x882, x846, x843); + let mut x885: u32 = 0; + let mut x886: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x885, &mut x886, x884, x844, x841); + let mut x887: u32 = 0; + let mut x888: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x887, &mut x888, 0x0, x819, x863); + let mut x889: u32 = 0; + let mut x890: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x889, &mut x890, x888, x821, x865); + let mut x891: u32 = 0; + let mut x892: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x891, &mut x892, x890, x823, x867); + let mut x893: u32 = 0; + let mut x894: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x893, &mut x894, x892, x825, x869); + let mut x895: u32 = 0; + let mut x896: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x895, &mut x896, x894, x827, x871); + let mut x897: u32 = 0; + let mut x898: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x897, &mut x898, x896, x829, x873); + let mut x899: u32 = 0; + let mut x900: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x899, &mut x900, x898, x831, x875); + let mut x901: u32 = 0; + let mut x902: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x901, &mut x902, x900, x833, x877); + let mut x903: u32 = 0; + let mut x904: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x903, &mut x904, x902, x835, x879); + let mut x905: u32 = 0; + let mut x906: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x905, &mut x906, x904, x837, x881); + let mut x907: u32 = 0; + let mut x908: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x907, &mut x908, x906, x839, x883); + let mut x909: u32 = 0; + let mut x910: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x909, + &mut x910, + x908, + (((x840 as u32) + ((x768 as u32) + ((x744 as u32) + x700))) + ((x816 as u32) + x772)), + x885, + ); + let mut x911: u32 = 0; + let mut x912: u32 = 0; + fiat_bp384_mulx_u32(&mut x911, &mut x912, x887, 0xea9ec825); + let mut x913: u32 = 0; + let mut x914: u32 = 0; + fiat_bp384_mulx_u32(&mut x913, &mut x914, x911, 0x8cb91e82); + let mut x915: u32 = 0; + let mut x916: u32 = 0; + fiat_bp384_mulx_u32(&mut x915, &mut x916, x911, 0xa3386d28); + let mut x917: u32 = 0; + let mut x918: u32 = 0; + fiat_bp384_mulx_u32(&mut x917, &mut x918, x911, 0xf5d6f7e); + let mut x919: u32 = 0; + let mut x920: u32 = 0; + fiat_bp384_mulx_u32(&mut x919, &mut x920, x911, 0x50e641df); + let mut x921: u32 = 0; + let mut x922: u32 = 0; + fiat_bp384_mulx_u32(&mut x921, &mut x922, x911, 0x152f7109); + let mut x923: u32 = 0; + let mut x924: u32 = 0; + fiat_bp384_mulx_u32(&mut x923, &mut x924, x911, 0xed5456b4); + let mut x925: u32 = 0; + let mut x926: u32 = 0; + fiat_bp384_mulx_u32(&mut x925, &mut x926, x911, 0x12b1da19); + let mut x927: u32 = 0; + let mut x928: u32 = 0; + fiat_bp384_mulx_u32(&mut x927, &mut x928, x911, 0x7fb71123); + let mut x929: u32 = 0; + let mut x930: u32 = 0; + fiat_bp384_mulx_u32(&mut x929, &mut x930, x911, 0xacd3a729); + let mut x931: u32 = 0; + let mut x932: u32 = 0; + fiat_bp384_mulx_u32(&mut x931, &mut x932, x911, 0x901d1a71); + let mut x933: u32 = 0; + let mut x934: u32 = 0; + fiat_bp384_mulx_u32(&mut x933, &mut x934, x911, 0x87470013); + let mut x935: u32 = 0; + let mut x936: u32 = 0; + fiat_bp384_mulx_u32(&mut x935, &mut x936, x911, 0x3107ec53); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x937, &mut x938, 0x0, x936, x933); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x939, &mut x940, x938, x934, x931); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x941, &mut x942, x940, x932, x929); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x943, &mut x944, x942, x930, x927); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x945, &mut x946, x944, x928, x925); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x947, &mut x948, x946, x926, x923); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x949, &mut x950, x948, x924, x921); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x951, &mut x952, x950, x922, x919); + let mut x953: u32 = 0; + let mut x954: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x953, &mut x954, x952, x920, x917); + let mut x955: u32 = 0; + let mut x956: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x955, &mut x956, x954, x918, x915); + let mut x957: u32 = 0; + let mut x958: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x957, &mut x958, x956, x916, x913); + let mut x959: u32 = 0; + let mut x960: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x959, &mut x960, 0x0, x887, x935); + let mut x961: u32 = 0; + let mut x962: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x961, &mut x962, x960, x889, x937); + let mut x963: u32 = 0; + let mut x964: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x963, &mut x964, x962, x891, x939); + let mut x965: u32 = 0; + let mut x966: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x965, &mut x966, x964, x893, x941); + let mut x967: u32 = 0; + let mut x968: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x967, &mut x968, x966, x895, x943); + let mut x969: u32 = 0; + let mut x970: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x969, &mut x970, x968, x897, x945); + let mut x971: u32 = 0; + let mut x972: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x971, &mut x972, x970, x899, x947); + let mut x973: u32 = 0; + let mut x974: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x973, &mut x974, x972, x901, x949); + let mut x975: u32 = 0; + let mut x976: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x975, &mut x976, x974, x903, x951); + let mut x977: u32 = 0; + let mut x978: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x977, &mut x978, x976, x905, x953); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x979, &mut x980, x978, x907, x955); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x981, &mut x982, x980, x909, x957); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp384_mulx_u32(&mut x983, &mut x984, x7, 0x36bf6883); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp384_mulx_u32(&mut x985, &mut x986, x7, 0x178df842); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp384_mulx_u32(&mut x987, &mut x988, x7, 0xd5c6ef3b); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp384_mulx_u32(&mut x989, &mut x990, x7, 0xa57e052c); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp384_mulx_u32(&mut x991, &mut x992, x7, 0x62140191); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp384_mulx_u32(&mut x993, &mut x994, x7, 0x9918d5af); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp384_mulx_u32(&mut x995, &mut x996, x7, 0x8e28f99c); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp384_mulx_u32(&mut x997, &mut x998, x7, 0xc9940899); + let mut x999: u32 = 0; + let mut x1000: u32 = 0; + fiat_bp384_mulx_u32(&mut x999, &mut x1000, x7, 0x53528334); + let mut x1001: u32 = 0; + let mut x1002: u32 = 0; + fiat_bp384_mulx_u32(&mut x1001, &mut x1002, x7, 0x3d7fd965); + let mut x1003: u32 = 0; + let mut x1004: u32 = 0; + fiat_bp384_mulx_u32(&mut x1003, &mut x1004, x7, 0x87cefff); + let mut x1005: u32 = 0; + let mut x1006: u32 = 0; + fiat_bp384_mulx_u32(&mut x1005, &mut x1006, x7, 0x40b64bde); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1007, &mut x1008, 0x0, x1006, x1003); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1009, &mut x1010, x1008, x1004, x1001); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1011, &mut x1012, x1010, x1002, x999); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1013, &mut x1014, x1012, x1000, x997); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1015, &mut x1016, x1014, x998, x995); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1017, &mut x1018, x1016, x996, x993); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1019, &mut x1020, x1018, x994, x991); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1021, &mut x1022, x1020, x992, x989); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1023, &mut x1024, x1022, x990, x987); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1025, &mut x1026, x1024, x988, x985); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1027, &mut x1028, x1026, x986, x983); + let mut x1029: u32 = 0; + let mut x1030: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1029, &mut x1030, 0x0, x961, x1005); + let mut x1031: u32 = 0; + let mut x1032: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1031, &mut x1032, x1030, x963, x1007); + let mut x1033: u32 = 0; + let mut x1034: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1033, &mut x1034, x1032, x965, x1009); + let mut x1035: u32 = 0; + let mut x1036: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1035, &mut x1036, x1034, x967, x1011); + let mut x1037: u32 = 0; + let mut x1038: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1037, &mut x1038, x1036, x969, x1013); + let mut x1039: u32 = 0; + let mut x1040: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1039, &mut x1040, x1038, x971, x1015); + let mut x1041: u32 = 0; + let mut x1042: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1041, &mut x1042, x1040, x973, x1017); + let mut x1043: u32 = 0; + let mut x1044: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1043, &mut x1044, x1042, x975, x1019); + let mut x1045: u32 = 0; + let mut x1046: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1045, &mut x1046, x1044, x977, x1021); + let mut x1047: u32 = 0; + let mut x1048: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1047, &mut x1048, x1046, x979, x1023); + let mut x1049: u32 = 0; + let mut x1050: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1049, &mut x1050, x1048, x981, x1025); + let mut x1051: u32 = 0; + let mut x1052: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1051, + &mut x1052, + x1050, + (((x982 as u32) + ((x910 as u32) + ((x886 as u32) + x842))) + ((x958 as u32) + x914)), + x1027, + ); + let mut x1053: u32 = 0; + let mut x1054: u32 = 0; + fiat_bp384_mulx_u32(&mut x1053, &mut x1054, x1029, 0xea9ec825); + let mut x1055: u32 = 0; + let mut x1056: u32 = 0; + fiat_bp384_mulx_u32(&mut x1055, &mut x1056, x1053, 0x8cb91e82); + let mut x1057: u32 = 0; + let mut x1058: u32 = 0; + fiat_bp384_mulx_u32(&mut x1057, &mut x1058, x1053, 0xa3386d28); + let mut x1059: u32 = 0; + let mut x1060: u32 = 0; + fiat_bp384_mulx_u32(&mut x1059, &mut x1060, x1053, 0xf5d6f7e); + let mut x1061: u32 = 0; + let mut x1062: u32 = 0; + fiat_bp384_mulx_u32(&mut x1061, &mut x1062, x1053, 0x50e641df); + let mut x1063: u32 = 0; + let mut x1064: u32 = 0; + fiat_bp384_mulx_u32(&mut x1063, &mut x1064, x1053, 0x152f7109); + let mut x1065: u32 = 0; + let mut x1066: u32 = 0; + fiat_bp384_mulx_u32(&mut x1065, &mut x1066, x1053, 0xed5456b4); + let mut x1067: u32 = 0; + let mut x1068: u32 = 0; + fiat_bp384_mulx_u32(&mut x1067, &mut x1068, x1053, 0x12b1da19); + let mut x1069: u32 = 0; + let mut x1070: u32 = 0; + fiat_bp384_mulx_u32(&mut x1069, &mut x1070, x1053, 0x7fb71123); + let mut x1071: u32 = 0; + let mut x1072: u32 = 0; + fiat_bp384_mulx_u32(&mut x1071, &mut x1072, x1053, 0xacd3a729); + let mut x1073: u32 = 0; + let mut x1074: u32 = 0; + fiat_bp384_mulx_u32(&mut x1073, &mut x1074, x1053, 0x901d1a71); + let mut x1075: u32 = 0; + let mut x1076: u32 = 0; + fiat_bp384_mulx_u32(&mut x1075, &mut x1076, x1053, 0x87470013); + let mut x1077: u32 = 0; + let mut x1078: u32 = 0; + fiat_bp384_mulx_u32(&mut x1077, &mut x1078, x1053, 0x3107ec53); + let mut x1079: u32 = 0; + let mut x1080: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1079, &mut x1080, 0x0, x1078, x1075); + let mut x1081: u32 = 0; + let mut x1082: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1076, x1073); + let mut x1083: u32 = 0; + let mut x1084: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1074, x1071); + let mut x1085: u32 = 0; + let mut x1086: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1072, x1069); + let mut x1087: u32 = 0; + let mut x1088: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1070, x1067); + let mut x1089: u32 = 0; + let mut x1090: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1068, x1065); + let mut x1091: u32 = 0; + let mut x1092: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1066, x1063); + let mut x1093: u32 = 0; + let mut x1094: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1093, &mut x1094, x1092, x1064, x1061); + let mut x1095: u32 = 0; + let mut x1096: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1095, &mut x1096, x1094, x1062, x1059); + let mut x1097: u32 = 0; + let mut x1098: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1060, x1057); + let mut x1099: u32 = 0; + let mut x1100: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1058, x1055); + let mut x1101: u32 = 0; + let mut x1102: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1101, &mut x1102, 0x0, x1029, x1077); + let mut x1103: u32 = 0; + let mut x1104: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1103, &mut x1104, x1102, x1031, x1079); + let mut x1105: u32 = 0; + let mut x1106: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1033, x1081); + let mut x1107: u32 = 0; + let mut x1108: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1035, x1083); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1037, x1085); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1039, x1087); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1041, x1089); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1043, x1091); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1045, x1093); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1047, x1095); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1049, x1097); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1051, x1099); + let mut x1125: u32 = 0; + let mut x1126: u32 = 0; + fiat_bp384_mulx_u32(&mut x1125, &mut x1126, x8, 0x36bf6883); + let mut x1127: u32 = 0; + let mut x1128: u32 = 0; + fiat_bp384_mulx_u32(&mut x1127, &mut x1128, x8, 0x178df842); + let mut x1129: u32 = 0; + let mut x1130: u32 = 0; + fiat_bp384_mulx_u32(&mut x1129, &mut x1130, x8, 0xd5c6ef3b); + let mut x1131: u32 = 0; + let mut x1132: u32 = 0; + fiat_bp384_mulx_u32(&mut x1131, &mut x1132, x8, 0xa57e052c); + let mut x1133: u32 = 0; + let mut x1134: u32 = 0; + fiat_bp384_mulx_u32(&mut x1133, &mut x1134, x8, 0x62140191); + let mut x1135: u32 = 0; + let mut x1136: u32 = 0; + fiat_bp384_mulx_u32(&mut x1135, &mut x1136, x8, 0x9918d5af); + let mut x1137: u32 = 0; + let mut x1138: u32 = 0; + fiat_bp384_mulx_u32(&mut x1137, &mut x1138, x8, 0x8e28f99c); + let mut x1139: u32 = 0; + let mut x1140: u32 = 0; + fiat_bp384_mulx_u32(&mut x1139, &mut x1140, x8, 0xc9940899); + let mut x1141: u32 = 0; + let mut x1142: u32 = 0; + fiat_bp384_mulx_u32(&mut x1141, &mut x1142, x8, 0x53528334); + let mut x1143: u32 = 0; + let mut x1144: u32 = 0; + fiat_bp384_mulx_u32(&mut x1143, &mut x1144, x8, 0x3d7fd965); + let mut x1145: u32 = 0; + let mut x1146: u32 = 0; + fiat_bp384_mulx_u32(&mut x1145, &mut x1146, x8, 0x87cefff); + let mut x1147: u32 = 0; + let mut x1148: u32 = 0; + fiat_bp384_mulx_u32(&mut x1147, &mut x1148, x8, 0x40b64bde); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1149, &mut x1150, 0x0, x1148, x1145); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1146, x1143); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1144, x1141); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1142, x1139); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1140, x1137); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1138, x1135); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1136, x1133); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1134, x1131); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1132, x1129); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1130, x1127); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1128, x1125); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1171, &mut x1172, 0x0, x1103, x1147); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1105, x1149); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1107, x1151); + let mut x1177: u32 = 0; + let mut x1178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1109, x1153); + let mut x1179: u32 = 0; + let mut x1180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1111, x1155); + let mut x1181: u32 = 0; + let mut x1182: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1113, x1157); + let mut x1183: u32 = 0; + let mut x1184: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1115, x1159); + let mut x1185: u32 = 0; + let mut x1186: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1117, x1161); + let mut x1187: u32 = 0; + let mut x1188: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1187, &mut x1188, x1186, x1119, x1163); + let mut x1189: u32 = 0; + let mut x1190: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1121, x1165); + let mut x1191: u32 = 0; + let mut x1192: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1123, x1167); + let mut x1193: u32 = 0; + let mut x1194: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1193, + &mut x1194, + x1192, + (((x1124 as u32) + ((x1052 as u32) + ((x1028 as u32) + x984))) + ((x1100 as u32) + x1056)), + x1169, + ); + let mut x1195: u32 = 0; + let mut x1196: u32 = 0; + fiat_bp384_mulx_u32(&mut x1195, &mut x1196, x1171, 0xea9ec825); + let mut x1197: u32 = 0; + let mut x1198: u32 = 0; + fiat_bp384_mulx_u32(&mut x1197, &mut x1198, x1195, 0x8cb91e82); + let mut x1199: u32 = 0; + let mut x1200: u32 = 0; + fiat_bp384_mulx_u32(&mut x1199, &mut x1200, x1195, 0xa3386d28); + let mut x1201: u32 = 0; + let mut x1202: u32 = 0; + fiat_bp384_mulx_u32(&mut x1201, &mut x1202, x1195, 0xf5d6f7e); + let mut x1203: u32 = 0; + let mut x1204: u32 = 0; + fiat_bp384_mulx_u32(&mut x1203, &mut x1204, x1195, 0x50e641df); + let mut x1205: u32 = 0; + let mut x1206: u32 = 0; + fiat_bp384_mulx_u32(&mut x1205, &mut x1206, x1195, 0x152f7109); + let mut x1207: u32 = 0; + let mut x1208: u32 = 0; + fiat_bp384_mulx_u32(&mut x1207, &mut x1208, x1195, 0xed5456b4); + let mut x1209: u32 = 0; + let mut x1210: u32 = 0; + fiat_bp384_mulx_u32(&mut x1209, &mut x1210, x1195, 0x12b1da19); + let mut x1211: u32 = 0; + let mut x1212: u32 = 0; + fiat_bp384_mulx_u32(&mut x1211, &mut x1212, x1195, 0x7fb71123); + let mut x1213: u32 = 0; + let mut x1214: u32 = 0; + fiat_bp384_mulx_u32(&mut x1213, &mut x1214, x1195, 0xacd3a729); + let mut x1215: u32 = 0; + let mut x1216: u32 = 0; + fiat_bp384_mulx_u32(&mut x1215, &mut x1216, x1195, 0x901d1a71); + let mut x1217: u32 = 0; + let mut x1218: u32 = 0; + fiat_bp384_mulx_u32(&mut x1217, &mut x1218, x1195, 0x87470013); + let mut x1219: u32 = 0; + let mut x1220: u32 = 0; + fiat_bp384_mulx_u32(&mut x1219, &mut x1220, x1195, 0x3107ec53); + let mut x1221: u32 = 0; + let mut x1222: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1221, &mut x1222, 0x0, x1220, x1217); + let mut x1223: u32 = 0; + let mut x1224: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1223, &mut x1224, x1222, x1218, x1215); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1225, &mut x1226, x1224, x1216, x1213); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1214, x1211); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1212, x1209); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1210, x1207); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1208, x1205); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1206, x1203); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1204, x1201); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1202, x1199); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1200, x1197); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1243, &mut x1244, 0x0, x1171, x1219); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1221); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1223); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1225); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1179, x1227); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1181, x1229); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1183, x1231); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1185, x1233); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1187, x1235); + let mut x1261: u32 = 0; + let mut x1262: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1261, &mut x1262, x1260, x1189, x1237); + let mut x1263: u32 = 0; + let mut x1264: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1263, &mut x1264, x1262, x1191, x1239); + let mut x1265: u32 = 0; + let mut x1266: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1265, &mut x1266, x1264, x1193, x1241); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_mulx_u32(&mut x1267, &mut x1268, x9, 0x36bf6883); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_mulx_u32(&mut x1269, &mut x1270, x9, 0x178df842); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_mulx_u32(&mut x1271, &mut x1272, x9, 0xd5c6ef3b); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_mulx_u32(&mut x1273, &mut x1274, x9, 0xa57e052c); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_mulx_u32(&mut x1275, &mut x1276, x9, 0x62140191); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp384_mulx_u32(&mut x1277, &mut x1278, x9, 0x9918d5af); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp384_mulx_u32(&mut x1279, &mut x1280, x9, 0x8e28f99c); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp384_mulx_u32(&mut x1281, &mut x1282, x9, 0xc9940899); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp384_mulx_u32(&mut x1283, &mut x1284, x9, 0x53528334); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp384_mulx_u32(&mut x1285, &mut x1286, x9, 0x3d7fd965); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp384_mulx_u32(&mut x1287, &mut x1288, x9, 0x87cefff); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp384_mulx_u32(&mut x1289, &mut x1290, x9, 0x40b64bde); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1291, &mut x1292, 0x0, x1290, x1287); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1288, x1285); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1286, x1283); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1284, x1281); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1282, x1279); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1280, x1277); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1278, x1275); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1276, x1273); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1274, x1271); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1272, x1269); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1270, x1267); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1313, &mut x1314, 0x0, x1245, x1289); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1247, x1291); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1249, x1293); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1251, x1295); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1253, x1297); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1255, x1299); + let mut x1325: u32 = 0; + let mut x1326: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1325, &mut x1326, x1324, x1257, x1301); + let mut x1327: u32 = 0; + let mut x1328: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1327, &mut x1328, x1326, x1259, x1303); + let mut x1329: u32 = 0; + let mut x1330: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1329, &mut x1330, x1328, x1261, x1305); + let mut x1331: u32 = 0; + let mut x1332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1331, &mut x1332, x1330, x1263, x1307); + let mut x1333: u32 = 0; + let mut x1334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1333, &mut x1334, x1332, x1265, x1309); + let mut x1335: u32 = 0; + let mut x1336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1335, + &mut x1336, + x1334, + (((x1266 as u32) + ((x1194 as u32) + ((x1170 as u32) + x1126))) + ((x1242 as u32) + x1198)), + x1311, + ); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_mulx_u32(&mut x1337, &mut x1338, x1313, 0xea9ec825); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_mulx_u32(&mut x1339, &mut x1340, x1337, 0x8cb91e82); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_mulx_u32(&mut x1341, &mut x1342, x1337, 0xa3386d28); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_mulx_u32(&mut x1343, &mut x1344, x1337, 0xf5d6f7e); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_mulx_u32(&mut x1345, &mut x1346, x1337, 0x50e641df); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_mulx_u32(&mut x1347, &mut x1348, x1337, 0x152f7109); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_mulx_u32(&mut x1349, &mut x1350, x1337, 0xed5456b4); + let mut x1351: u32 = 0; + let mut x1352: u32 = 0; + fiat_bp384_mulx_u32(&mut x1351, &mut x1352, x1337, 0x12b1da19); + let mut x1353: u32 = 0; + let mut x1354: u32 = 0; + fiat_bp384_mulx_u32(&mut x1353, &mut x1354, x1337, 0x7fb71123); + let mut x1355: u32 = 0; + let mut x1356: u32 = 0; + fiat_bp384_mulx_u32(&mut x1355, &mut x1356, x1337, 0xacd3a729); + let mut x1357: u32 = 0; + let mut x1358: u32 = 0; + fiat_bp384_mulx_u32(&mut x1357, &mut x1358, x1337, 0x901d1a71); + let mut x1359: u32 = 0; + let mut x1360: u32 = 0; + fiat_bp384_mulx_u32(&mut x1359, &mut x1360, x1337, 0x87470013); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp384_mulx_u32(&mut x1361, &mut x1362, x1337, 0x3107ec53); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1363, &mut x1364, 0x0, x1362, x1359); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1360, x1357); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1358, x1355); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1356, x1353); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1354, x1351); + let mut x1373: u32 = 0; + let mut x1374: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1352, x1349); + let mut x1375: u32 = 0; + let mut x1376: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1350, x1347); + let mut x1377: u32 = 0; + let mut x1378: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1377, &mut x1378, x1376, x1348, x1345); + let mut x1379: u32 = 0; + let mut x1380: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1346, x1343); + let mut x1381: u32 = 0; + let mut x1382: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1344, x1341); + let mut x1383: u32 = 0; + let mut x1384: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1342, x1339); + let mut x1385: u32 = 0; + let mut x1386: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1385, &mut x1386, 0x0, x1313, x1361); + let mut x1387: u32 = 0; + let mut x1388: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1315, x1363); + let mut x1389: u32 = 0; + let mut x1390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1317, x1365); + let mut x1391: u32 = 0; + let mut x1392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1391, &mut x1392, x1390, x1319, x1367); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1321, x1369); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1323, x1371); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1325, x1373); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1327, x1375); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1329, x1377); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1331, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1333, x1381); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1335, x1383); + let mut x1409: u32 = 0; + let mut x1410: u32 = 0; + fiat_bp384_mulx_u32(&mut x1409, &mut x1410, x10, 0x36bf6883); + let mut x1411: u32 = 0; + let mut x1412: u32 = 0; + fiat_bp384_mulx_u32(&mut x1411, &mut x1412, x10, 0x178df842); + let mut x1413: u32 = 0; + let mut x1414: u32 = 0; + fiat_bp384_mulx_u32(&mut x1413, &mut x1414, x10, 0xd5c6ef3b); + let mut x1415: u32 = 0; + let mut x1416: u32 = 0; + fiat_bp384_mulx_u32(&mut x1415, &mut x1416, x10, 0xa57e052c); + let mut x1417: u32 = 0; + let mut x1418: u32 = 0; + fiat_bp384_mulx_u32(&mut x1417, &mut x1418, x10, 0x62140191); + let mut x1419: u32 = 0; + let mut x1420: u32 = 0; + fiat_bp384_mulx_u32(&mut x1419, &mut x1420, x10, 0x9918d5af); + let mut x1421: u32 = 0; + let mut x1422: u32 = 0; + fiat_bp384_mulx_u32(&mut x1421, &mut x1422, x10, 0x8e28f99c); + let mut x1423: u32 = 0; + let mut x1424: u32 = 0; + fiat_bp384_mulx_u32(&mut x1423, &mut x1424, x10, 0xc9940899); + let mut x1425: u32 = 0; + let mut x1426: u32 = 0; + fiat_bp384_mulx_u32(&mut x1425, &mut x1426, x10, 0x53528334); + let mut x1427: u32 = 0; + let mut x1428: u32 = 0; + fiat_bp384_mulx_u32(&mut x1427, &mut x1428, x10, 0x3d7fd965); + let mut x1429: u32 = 0; + let mut x1430: u32 = 0; + fiat_bp384_mulx_u32(&mut x1429, &mut x1430, x10, 0x87cefff); + let mut x1431: u32 = 0; + let mut x1432: u32 = 0; + fiat_bp384_mulx_u32(&mut x1431, &mut x1432, x10, 0x40b64bde); + let mut x1433: u32 = 0; + let mut x1434: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1433, &mut x1434, 0x0, x1432, x1429); + let mut x1435: u32 = 0; + let mut x1436: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1435, &mut x1436, x1434, x1430, x1427); + let mut x1437: u32 = 0; + let mut x1438: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1437, &mut x1438, x1436, x1428, x1425); + let mut x1439: u32 = 0; + let mut x1440: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1439, &mut x1440, x1438, x1426, x1423); + let mut x1441: u32 = 0; + let mut x1442: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1441, &mut x1442, x1440, x1424, x1421); + let mut x1443: u32 = 0; + let mut x1444: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1443, &mut x1444, x1442, x1422, x1419); + let mut x1445: u32 = 0; + let mut x1446: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1445, &mut x1446, x1444, x1420, x1417); + let mut x1447: u32 = 0; + let mut x1448: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1447, &mut x1448, x1446, x1418, x1415); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1449, &mut x1450, x1448, x1416, x1413); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1414, x1411); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1412, x1409); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1455, &mut x1456, 0x0, x1387, x1431); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1389, x1433); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1391, x1435); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1393, x1437); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1395, x1439); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1397, x1441); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1399, x1443); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1401, x1445); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1403, x1447); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1405, x1449); + let mut x1475: u32 = 0; + let mut x1476: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1407, x1451); + let mut x1477: u32 = 0; + let mut x1478: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1477, + &mut x1478, + x1476, + (((x1408 as u32) + ((x1336 as u32) + ((x1312 as u32) + x1268))) + ((x1384 as u32) + x1340)), + x1453, + ); + let mut x1479: u32 = 0; + let mut x1480: u32 = 0; + fiat_bp384_mulx_u32(&mut x1479, &mut x1480, x1455, 0xea9ec825); + let mut x1481: u32 = 0; + let mut x1482: u32 = 0; + fiat_bp384_mulx_u32(&mut x1481, &mut x1482, x1479, 0x8cb91e82); + let mut x1483: u32 = 0; + let mut x1484: u32 = 0; + fiat_bp384_mulx_u32(&mut x1483, &mut x1484, x1479, 0xa3386d28); + let mut x1485: u32 = 0; + let mut x1486: u32 = 0; + fiat_bp384_mulx_u32(&mut x1485, &mut x1486, x1479, 0xf5d6f7e); + let mut x1487: u32 = 0; + let mut x1488: u32 = 0; + fiat_bp384_mulx_u32(&mut x1487, &mut x1488, x1479, 0x50e641df); + let mut x1489: u32 = 0; + let mut x1490: u32 = 0; + fiat_bp384_mulx_u32(&mut x1489, &mut x1490, x1479, 0x152f7109); + let mut x1491: u32 = 0; + let mut x1492: u32 = 0; + fiat_bp384_mulx_u32(&mut x1491, &mut x1492, x1479, 0xed5456b4); + let mut x1493: u32 = 0; + let mut x1494: u32 = 0; + fiat_bp384_mulx_u32(&mut x1493, &mut x1494, x1479, 0x12b1da19); + let mut x1495: u32 = 0; + let mut x1496: u32 = 0; + fiat_bp384_mulx_u32(&mut x1495, &mut x1496, x1479, 0x7fb71123); + let mut x1497: u32 = 0; + let mut x1498: u32 = 0; + fiat_bp384_mulx_u32(&mut x1497, &mut x1498, x1479, 0xacd3a729); + let mut x1499: u32 = 0; + let mut x1500: u32 = 0; + fiat_bp384_mulx_u32(&mut x1499, &mut x1500, x1479, 0x901d1a71); + let mut x1501: u32 = 0; + let mut x1502: u32 = 0; + fiat_bp384_mulx_u32(&mut x1501, &mut x1502, x1479, 0x87470013); + let mut x1503: u32 = 0; + let mut x1504: u32 = 0; + fiat_bp384_mulx_u32(&mut x1503, &mut x1504, x1479, 0x3107ec53); + let mut x1505: u32 = 0; + let mut x1506: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1505, &mut x1506, 0x0, x1504, x1501); + let mut x1507: u32 = 0; + let mut x1508: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1507, &mut x1508, x1506, x1502, x1499); + let mut x1509: u32 = 0; + let mut x1510: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1509, &mut x1510, x1508, x1500, x1497); + let mut x1511: u32 = 0; + let mut x1512: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1511, &mut x1512, x1510, x1498, x1495); + let mut x1513: u32 = 0; + let mut x1514: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1513, &mut x1514, x1512, x1496, x1493); + let mut x1515: u32 = 0; + let mut x1516: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1515, &mut x1516, x1514, x1494, x1491); + let mut x1517: u32 = 0; + let mut x1518: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1517, &mut x1518, x1516, x1492, x1489); + let mut x1519: u32 = 0; + let mut x1520: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1519, &mut x1520, x1518, x1490, x1487); + let mut x1521: u32 = 0; + let mut x1522: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1521, &mut x1522, x1520, x1488, x1485); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1523, &mut x1524, x1522, x1486, x1483); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1484, x1481); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1527, &mut x1528, 0x0, x1455, x1503); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1505); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1507); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1509); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1511); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1513); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1515); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1517); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1519); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1521); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1523); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1477, x1525); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_mulx_u32(&mut x1551, &mut x1552, x11, 0x36bf6883); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_mulx_u32(&mut x1553, &mut x1554, x11, 0x178df842); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_mulx_u32(&mut x1555, &mut x1556, x11, 0xd5c6ef3b); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_mulx_u32(&mut x1557, &mut x1558, x11, 0xa57e052c); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_mulx_u32(&mut x1559, &mut x1560, x11, 0x62140191); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_mulx_u32(&mut x1561, &mut x1562, x11, 0x9918d5af); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_mulx_u32(&mut x1563, &mut x1564, x11, 0x8e28f99c); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_mulx_u32(&mut x1565, &mut x1566, x11, 0xc9940899); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_mulx_u32(&mut x1567, &mut x1568, x11, 0x53528334); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_mulx_u32(&mut x1569, &mut x1570, x11, 0x3d7fd965); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_mulx_u32(&mut x1571, &mut x1572, x11, 0x87cefff); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_mulx_u32(&mut x1573, &mut x1574, x11, 0x40b64bde); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let mut x1597: u32 = 0; + let mut x1598: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1597, &mut x1598, 0x0, x1529, x1573); + let mut x1599: u32 = 0; + let mut x1600: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1599, &mut x1600, x1598, x1531, x1575); + let mut x1601: u32 = 0; + let mut x1602: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1601, &mut x1602, x1600, x1533, x1577); + let mut x1603: u32 = 0; + let mut x1604: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1603, &mut x1604, x1602, x1535, x1579); + let mut x1605: u32 = 0; + let mut x1606: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1605, &mut x1606, x1604, x1537, x1581); + let mut x1607: u32 = 0; + let mut x1608: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1607, &mut x1608, x1606, x1539, x1583); + let mut x1609: u32 = 0; + let mut x1610: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1609, &mut x1610, x1608, x1541, x1585); + let mut x1611: u32 = 0; + let mut x1612: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1611, &mut x1612, x1610, x1543, x1587); + let mut x1613: u32 = 0; + let mut x1614: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1613, &mut x1614, x1612, x1545, x1589); + let mut x1615: u32 = 0; + let mut x1616: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1615, &mut x1616, x1614, x1547, x1591); + let mut x1617: u32 = 0; + let mut x1618: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1617, &mut x1618, x1616, x1549, x1593); + let mut x1619: u32 = 0; + let mut x1620: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32( + &mut x1619, + &mut x1620, + x1618, + (((x1550 as u32) + ((x1478 as u32) + ((x1454 as u32) + x1410))) + ((x1526 as u32) + x1482)), + x1595, + ); + let mut x1621: u32 = 0; + let mut x1622: u32 = 0; + fiat_bp384_mulx_u32(&mut x1621, &mut x1622, x1597, 0xea9ec825); + let mut x1623: u32 = 0; + let mut x1624: u32 = 0; + fiat_bp384_mulx_u32(&mut x1623, &mut x1624, x1621, 0x8cb91e82); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_mulx_u32(&mut x1625, &mut x1626, x1621, 0xa3386d28); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_mulx_u32(&mut x1627, &mut x1628, x1621, 0xf5d6f7e); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_mulx_u32(&mut x1629, &mut x1630, x1621, 0x50e641df); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_mulx_u32(&mut x1631, &mut x1632, x1621, 0x152f7109); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_mulx_u32(&mut x1633, &mut x1634, x1621, 0xed5456b4); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_mulx_u32(&mut x1635, &mut x1636, x1621, 0x12b1da19); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_mulx_u32(&mut x1637, &mut x1638, x1621, 0x7fb71123); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_mulx_u32(&mut x1639, &mut x1640, x1621, 0xacd3a729); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_mulx_u32(&mut x1641, &mut x1642, x1621, 0x901d1a71); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_mulx_u32(&mut x1643, &mut x1644, x1621, 0x87470013); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_mulx_u32(&mut x1645, &mut x1646, x1621, 0x3107ec53); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1647, &mut x1648, 0x0, x1646, x1643); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1644, x1641); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1642, x1639); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1640, x1637); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1638, x1635); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1636, x1633); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1634, x1631); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1632, x1629); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1630, x1627); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1628, x1625); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1626, x1623); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1669, &mut x1670, 0x0, x1597, x1645); + let mut x1671: u32 = 0; + let mut x1672: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1599, x1647); + let mut x1673: u32 = 0; + let mut x1674: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1601, x1649); + let mut x1675: u32 = 0; + let mut x1676: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1603, x1651); + let mut x1677: u32 = 0; + let mut x1678: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1605, x1653); + let mut x1679: u32 = 0; + let mut x1680: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1679, &mut x1680, x1678, x1607, x1655); + let mut x1681: u32 = 0; + let mut x1682: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1609, x1657); + let mut x1683: u32 = 0; + let mut x1684: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1611, x1659); + let mut x1685: u32 = 0; + let mut x1686: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1613, x1661); + let mut x1687: u32 = 0; + let mut x1688: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1615, x1663); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1617, x1665); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1619, x1667); + let x1693: u32 = + (((x1692 as u32) + ((x1620 as u32) + ((x1596 as u32) + x1552))) + ((x1668 as u32) + x1624)); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1694, &mut x1695, 0x0, x1671, 0x3107ec53); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1696, &mut x1697, x1695, x1673, 0x87470013); + let mut x1698: u32 = 0; + let mut x1699: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1698, &mut x1699, x1697, x1675, 0x901d1a71); + let mut x1700: u32 = 0; + let mut x1701: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1700, &mut x1701, x1699, x1677, 0xacd3a729); + let mut x1702: u32 = 0; + let mut x1703: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1702, &mut x1703, x1701, x1679, 0x7fb71123); + let mut x1704: u32 = 0; + let mut x1705: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1704, &mut x1705, x1703, x1681, 0x12b1da19); + let mut x1706: u32 = 0; + let mut x1707: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1706, &mut x1707, x1705, x1683, 0xed5456b4); + let mut x1708: u32 = 0; + let mut x1709: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1708, &mut x1709, x1707, x1685, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1710, &mut x1711, x1709, x1687, 0x50e641df); + let mut x1712: u32 = 0; + let mut x1713: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1712, &mut x1713, x1711, x1689, 0xf5d6f7e); + let mut x1714: u32 = 0; + let mut x1715: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1714, &mut x1715, x1713, x1691, 0xa3386d28); + let mut x1716: u32 = 0; + let mut x1717: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1716, &mut x1717, x1715, x1693, 0x8cb91e82); + let mut x1718: u32 = 0; + let mut x1719: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x1718, &mut x1719, x1717, (0x0 as u32), (0x0 as u32)); + let mut x1720: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1720, x1719, x1694, x1671); + let mut x1721: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1721, x1719, x1696, x1673); + let mut x1722: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1722, x1719, x1698, x1675); + let mut x1723: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1723, x1719, x1700, x1677); + let mut x1724: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1724, x1719, x1702, x1679); + let mut x1725: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1725, x1719, x1704, x1681); + let mut x1726: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1726, x1719, x1706, x1683); + let mut x1727: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1727, x1719, x1708, x1685); + let mut x1728: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1728, x1719, x1710, x1687); + let mut x1729: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1729, x1719, x1712, x1689); + let mut x1730: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1730, x1719, x1714, x1691); + let mut x1731: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1731, x1719, x1716, x1693); + out1[0] = x1720; + out1[1] = x1721; + out1[2] = x1722; + out1[3] = x1723; + out1[4] = x1724; + out1[5] = x1725; + out1[6] = x1726; + out1[7] = x1727; + out1[8] = x1728; + out1[9] = x1729; + out1[10] = x1730; + out1[11] = x1731; +} +/// The function fiat_bp384_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_nonzero(out1: &mut u32, arg1: &[u32; 12]) { + let x1: u32 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) + | ((arg1[3]) + | ((arg1[4]) + | ((arg1[5]) + | ((arg1[6]) + | ((arg1[7]) + | ((arg1[8]) | ((arg1[9]) | ((arg1[10]) | (arg1[11])))))))))))); + *out1 = x1; +} +/// The function fiat_bp384_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_selectznz( + out1: &mut [u32; 12], + arg1: fiat_bp384_u1, + arg2: &[u32; 12], + arg3: &[u32; 12], +) { + let mut x1: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); + let mut x9: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); + let mut x10: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); + let mut x11: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); + let mut x12: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; + out1[8] = x9; + out1[9] = x10; + out1[10] = x11; + out1[11] = x12; +} +/// The function fiat_bp384_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..47] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub const fn fiat_bp384_to_bytes(out1: &mut [u8; 48], arg1: &[u32; 12]) { + let x1: u32 = (arg1[11]); + let x2: u32 = (arg1[10]); + let x3: u32 = (arg1[9]); + let x4: u32 = (arg1[8]); + let x5: u32 = (arg1[7]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[5]); + let x8: u32 = (arg1[4]); + let x9: u32 = (arg1[3]); + let x10: u32 = (arg1[2]); + let x11: u32 = (arg1[1]); + let x12: u32 = (arg1[0]); + let x13: u8 = ((x12 & (0xff as u32)) as u8); + let x14: u32 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u32)) as u8); + let x16: u32 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u32)) as u8); + let x18: u8 = ((x16 >> 8) as u8); + let x19: u8 = ((x11 & (0xff as u32)) as u8); + let x20: u32 = (x11 >> 8); + let x21: u8 = ((x20 & (0xff as u32)) as u8); + let x22: u32 = (x20 >> 8); + let x23: u8 = ((x22 & (0xff as u32)) as u8); + let x24: u8 = ((x22 >> 8) as u8); + let x25: u8 = ((x10 & (0xff as u32)) as u8); + let x26: u32 = (x10 >> 8); + let x27: u8 = ((x26 & (0xff as u32)) as u8); + let x28: u32 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u32)) as u8); + let x30: u8 = ((x28 >> 8) as u8); + let x31: u8 = ((x9 & (0xff as u32)) as u8); + let x32: u32 = (x9 >> 8); + let x33: u8 = ((x32 & (0xff as u32)) as u8); + let x34: u32 = (x32 >> 8); + let x35: u8 = ((x34 & (0xff as u32)) as u8); + let x36: u8 = ((x34 >> 8) as u8); + let x37: u8 = ((x8 & (0xff as u32)) as u8); + let x38: u32 = (x8 >> 8); + let x39: u8 = ((x38 & (0xff as u32)) as u8); + let x40: u32 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u32)) as u8); + let x42: u8 = ((x40 >> 8) as u8); + let x43: u8 = ((x7 & (0xff as u32)) as u8); + let x44: u32 = (x7 >> 8); + let x45: u8 = ((x44 & (0xff as u32)) as u8); + let x46: u32 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u32)) as u8); + let x48: u8 = ((x46 >> 8) as u8); + let x49: u8 = ((x6 & (0xff as u32)) as u8); + let x50: u32 = (x6 >> 8); + let x51: u8 = ((x50 & (0xff as u32)) as u8); + let x52: u32 = (x50 >> 8); + let x53: u8 = ((x52 & (0xff as u32)) as u8); + let x54: u8 = ((x52 >> 8) as u8); + let x55: u8 = ((x5 & (0xff as u32)) as u8); + let x56: u32 = (x5 >> 8); + let x57: u8 = ((x56 & (0xff as u32)) as u8); + let x58: u32 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u32)) as u8); + let x60: u8 = ((x58 >> 8) as u8); + let x61: u8 = ((x4 & (0xff as u32)) as u8); + let x62: u32 = (x4 >> 8); + let x63: u8 = ((x62 & (0xff as u32)) as u8); + let x64: u32 = (x62 >> 8); + let x65: u8 = ((x64 & (0xff as u32)) as u8); + let x66: u8 = ((x64 >> 8) as u8); + let x67: u8 = ((x3 & (0xff as u32)) as u8); + let x68: u32 = (x3 >> 8); + let x69: u8 = ((x68 & (0xff as u32)) as u8); + let x70: u32 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u32)) as u8); + let x72: u8 = ((x70 >> 8) as u8); + let x73: u8 = ((x2 & (0xff as u32)) as u8); + let x74: u32 = (x2 >> 8); + let x75: u8 = ((x74 & (0xff as u32)) as u8); + let x76: u32 = (x74 >> 8); + let x77: u8 = ((x76 & (0xff as u32)) as u8); + let x78: u8 = ((x76 >> 8) as u8); + let x79: u8 = ((x1 & (0xff as u32)) as u8); + let x80: u32 = (x1 >> 8); + let x81: u8 = ((x80 & (0xff as u32)) as u8); + let x82: u32 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u32)) as u8); + let x84: u8 = ((x82 >> 8) as u8); + out1[0] = x13; + out1[1] = x15; + out1[2] = x17; + out1[3] = x18; + out1[4] = x19; + out1[5] = x21; + out1[6] = x23; + out1[7] = x24; + out1[8] = x25; + out1[9] = x27; + out1[10] = x29; + out1[11] = x30; + out1[12] = x31; + out1[13] = x33; + out1[14] = x35; + out1[15] = x36; + out1[16] = x37; + out1[17] = x39; + out1[18] = x41; + out1[19] = x42; + out1[20] = x43; + out1[21] = x45; + out1[22] = x47; + out1[23] = x48; + out1[24] = x49; + out1[25] = x51; + out1[26] = x53; + out1[27] = x54; + out1[28] = x55; + out1[29] = x57; + out1[30] = x59; + out1[31] = x60; + out1[32] = x61; + out1[33] = x63; + out1[34] = x65; + out1[35] = x66; + out1[36] = x67; + out1[37] = x69; + out1[38] = x71; + out1[39] = x72; + out1[40] = x73; + out1[41] = x75; + out1[42] = x77; + out1[43] = x78; + out1[44] = x79; + out1[45] = x81; + out1[46] = x83; + out1[47] = x84; +} +/// The function fiat_bp384_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_from_bytes(out1: &mut [u32; 12], arg1: &[u8; 48]) { + let x1: u32 = (((arg1[47]) as u32) << 24); + let x2: u32 = (((arg1[46]) as u32) << 16); + let x3: u32 = (((arg1[45]) as u32) << 8); + let x4: u8 = (arg1[44]); + let x5: u32 = (((arg1[43]) as u32) << 24); + let x6: u32 = (((arg1[42]) as u32) << 16); + let x7: u32 = (((arg1[41]) as u32) << 8); + let x8: u8 = (arg1[40]); + let x9: u32 = (((arg1[39]) as u32) << 24); + let x10: u32 = (((arg1[38]) as u32) << 16); + let x11: u32 = (((arg1[37]) as u32) << 8); + let x12: u8 = (arg1[36]); + let x13: u32 = (((arg1[35]) as u32) << 24); + let x14: u32 = (((arg1[34]) as u32) << 16); + let x15: u32 = (((arg1[33]) as u32) << 8); + let x16: u8 = (arg1[32]); + let x17: u32 = (((arg1[31]) as u32) << 24); + let x18: u32 = (((arg1[30]) as u32) << 16); + let x19: u32 = (((arg1[29]) as u32) << 8); + let x20: u8 = (arg1[28]); + let x21: u32 = (((arg1[27]) as u32) << 24); + let x22: u32 = (((arg1[26]) as u32) << 16); + let x23: u32 = (((arg1[25]) as u32) << 8); + let x24: u8 = (arg1[24]); + let x25: u32 = (((arg1[23]) as u32) << 24); + let x26: u32 = (((arg1[22]) as u32) << 16); + let x27: u32 = (((arg1[21]) as u32) << 8); + let x28: u8 = (arg1[20]); + let x29: u32 = (((arg1[19]) as u32) << 24); + let x30: u32 = (((arg1[18]) as u32) << 16); + let x31: u32 = (((arg1[17]) as u32) << 8); + let x32: u8 = (arg1[16]); + let x33: u32 = (((arg1[15]) as u32) << 24); + let x34: u32 = (((arg1[14]) as u32) << 16); + let x35: u32 = (((arg1[13]) as u32) << 8); + let x36: u8 = (arg1[12]); + let x37: u32 = (((arg1[11]) as u32) << 24); + let x38: u32 = (((arg1[10]) as u32) << 16); + let x39: u32 = (((arg1[9]) as u32) << 8); + let x40: u8 = (arg1[8]); + let x41: u32 = (((arg1[7]) as u32) << 24); + let x42: u32 = (((arg1[6]) as u32) << 16); + let x43: u32 = (((arg1[5]) as u32) << 8); + let x44: u8 = (arg1[4]); + let x45: u32 = (((arg1[3]) as u32) << 24); + let x46: u32 = (((arg1[2]) as u32) << 16); + let x47: u32 = (((arg1[1]) as u32) << 8); + let x48: u8 = (arg1[0]); + let x49: u32 = (x47 + (x48 as u32)); + let x50: u32 = (x46 + x49); + let x51: u32 = (x45 + x50); + let x52: u32 = (x43 + (x44 as u32)); + let x53: u32 = (x42 + x52); + let x54: u32 = (x41 + x53); + let x55: u32 = (x39 + (x40 as u32)); + let x56: u32 = (x38 + x55); + let x57: u32 = (x37 + x56); + let x58: u32 = (x35 + (x36 as u32)); + let x59: u32 = (x34 + x58); + let x60: u32 = (x33 + x59); + let x61: u32 = (x31 + (x32 as u32)); + let x62: u32 = (x30 + x61); + let x63: u32 = (x29 + x62); + let x64: u32 = (x27 + (x28 as u32)); + let x65: u32 = (x26 + x64); + let x66: u32 = (x25 + x65); + let x67: u32 = (x23 + (x24 as u32)); + let x68: u32 = (x22 + x67); + let x69: u32 = (x21 + x68); + let x70: u32 = (x19 + (x20 as u32)); + let x71: u32 = (x18 + x70); + let x72: u32 = (x17 + x71); + let x73: u32 = (x15 + (x16 as u32)); + let x74: u32 = (x14 + x73); + let x75: u32 = (x13 + x74); + let x76: u32 = (x11 + (x12 as u32)); + let x77: u32 = (x10 + x76); + let x78: u32 = (x9 + x77); + let x79: u32 = (x7 + (x8 as u32)); + let x80: u32 = (x6 + x79); + let x81: u32 = (x5 + x80); + let x82: u32 = (x3 + (x4 as u32)); + let x83: u32 = (x2 + x82); + let x84: u32 = (x1 + x83); + out1[0] = x51; + out1[1] = x54; + out1[2] = x57; + out1[3] = x60; + out1[4] = x63; + out1[5] = x66; + out1[6] = x69; + out1[7] = x72; + out1[8] = x75; + out1[9] = x78; + out1[10] = x81; + out1[11] = x84; +} +/// The function fiat_bp384_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_set_one(out1: &mut fiat_bp384_montgomery_domain_field_element) { + let out1 = &mut out1.0; + out1[0] = 0xcef813ad; + out1[1] = 0x78b8ffec; + out1[2] = 0x6fe2e58e; + out1[3] = 0x532c58d6; + out1[4] = 0x8048eedc; + out1[5] = 0xed4e25e6; + out1[6] = 0x12aba94b; + out1[7] = 0xead08ef6; + out1[8] = 0xaf19be20; + out1[9] = 0xf0a29081; + out1[10] = 0x5cc792d7; + out1[11] = 0x7346e17d; +} +/// The function fiat_bp384_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_msat(out1: &mut [u32; 13]) { + out1[0] = 0x3107ec53; + out1[1] = 0x87470013; + out1[2] = 0x901d1a71; + out1[3] = 0xacd3a729; + out1[4] = 0x7fb71123; + out1[5] = 0x12b1da19; + out1[6] = 0xed5456b4; + out1[7] = 0x152f7109; + out1[8] = 0x50e641df; + out1[9] = 0xf5d6f7e; + out1[10] = 0xa3386d28; + out1[11] = 0x8cb91e82; + out1[12] = (0x0 as u32); +} +/// The function fiat_bp384_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_divstep( + out1: &mut u32, + out2: &mut [u32; 13], + out3: &mut [u32; 13], + out4: &mut [u32; 12], + out5: &mut [u32; 12], + arg1: u32, + arg2: &[u32; 13], + arg3: &[u32; 13], + arg4: &[u32; 12], + arg5: &[u32; 12], +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); + let x3: fiat_bp384_u1 = + (((x1 >> 31) as fiat_bp384_u1) & (((arg3[0]) & (0x1 as u32)) as fiat_bp384_u1)); + let mut x4: u32 = 0; + let mut x5: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); + let mut x6: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x6, x3, arg1, x4); + let mut x7: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); + let mut x17: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); + let mut x18: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); + let mut x19: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); + let mut x20: u32 = 0; + let mut x21: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x20, &mut x21, 0x0, (0x1 as u32), (!(arg2[0]))); + let mut x22: u32 = 0; + let mut x23: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x22, &mut x23, x21, (0x0 as u32), (!(arg2[1]))); + let mut x24: u32 = 0; + let mut x25: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x24, &mut x25, x23, (0x0 as u32), (!(arg2[2]))); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[3]))); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[4]))); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[5]))); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[6]))); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[7]))); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[8]))); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[9]))); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[10]))); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[11]))); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[12]))); + let mut x46: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x46, x3, (arg3[0]), x20); + let mut x47: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x47, x3, (arg3[1]), x22); + let mut x48: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x48, x3, (arg3[2]), x24); + let mut x49: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x49, x3, (arg3[3]), x26); + let mut x50: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x50, x3, (arg3[4]), x28); + let mut x51: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x51, x3, (arg3[5]), x30); + let mut x52: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x52, x3, (arg3[6]), x32); + let mut x53: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x53, x3, (arg3[7]), x34); + let mut x54: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x54, x3, (arg3[8]), x36); + let mut x55: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x55, x3, (arg3[9]), x38); + let mut x56: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x56, x3, (arg3[10]), x40); + let mut x57: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x57, x3, (arg3[11]), x42); + let mut x58: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x58, x3, (arg3[12]), x44); + let mut x59: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x59, x3, (arg4[0]), (arg5[0])); + let mut x60: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x60, x3, (arg4[1]), (arg5[1])); + let mut x61: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x61, x3, (arg4[2]), (arg5[2])); + let mut x62: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x62, x3, (arg4[3]), (arg5[3])); + let mut x63: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x63, x3, (arg4[4]), (arg5[4])); + let mut x64: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x64, x3, (arg4[5]), (arg5[5])); + let mut x65: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x65, x3, (arg4[6]), (arg5[6])); + let mut x66: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x66, x3, (arg4[7]), (arg5[7])); + let mut x67: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x67, x3, (arg4[8]), (arg5[8])); + let mut x68: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x68, x3, (arg4[9]), (arg5[9])); + let mut x69: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x69, x3, (arg4[10]), (arg5[10])); + let mut x70: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x70, x3, (arg4[11]), (arg5[11])); + let mut x71: u32 = 0; + let mut x72: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x71, &mut x72, 0x0, x59, x59); + let mut x73: u32 = 0; + let mut x74: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x73, &mut x74, x72, x60, x60); + let mut x75: u32 = 0; + let mut x76: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x75, &mut x76, x74, x61, x61); + let mut x77: u32 = 0; + let mut x78: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x77, &mut x78, x76, x62, x62); + let mut x79: u32 = 0; + let mut x80: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x79, &mut x80, x78, x63, x63); + let mut x81: u32 = 0; + let mut x82: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x81, &mut x82, x80, x64, x64); + let mut x83: u32 = 0; + let mut x84: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x83, &mut x84, x82, x65, x65); + let mut x85: u32 = 0; + let mut x86: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x85, &mut x86, x84, x66, x66); + let mut x87: u32 = 0; + let mut x88: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x87, &mut x88, x86, x67, x67); + let mut x89: u32 = 0; + let mut x90: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x89, &mut x90, x88, x68, x68); + let mut x91: u32 = 0; + let mut x92: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x91, &mut x92, x90, x69, x69); + let mut x93: u32 = 0; + let mut x94: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x93, &mut x94, x92, x70, x70); + let mut x95: u32 = 0; + let mut x96: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x95, &mut x96, 0x0, x71, 0x3107ec53); + let mut x97: u32 = 0; + let mut x98: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x97, &mut x98, x96, x73, 0x87470013); + let mut x99: u32 = 0; + let mut x100: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x99, &mut x100, x98, x75, 0x901d1a71); + let mut x101: u32 = 0; + let mut x102: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x101, &mut x102, x100, x77, 0xacd3a729); + let mut x103: u32 = 0; + let mut x104: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x103, &mut x104, x102, x79, 0x7fb71123); + let mut x105: u32 = 0; + let mut x106: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x105, &mut x106, x104, x81, 0x12b1da19); + let mut x107: u32 = 0; + let mut x108: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x107, &mut x108, x106, x83, 0xed5456b4); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x109, &mut x110, x108, x85, 0x152f7109); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x111, &mut x112, x110, x87, 0x50e641df); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x113, &mut x114, x112, x89, 0xf5d6f7e); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x115, &mut x116, x114, x91, 0xa3386d28); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x117, &mut x118, x116, x93, 0x8cb91e82); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x119, &mut x120, x118, (x94 as u32), (0x0 as u32)); + let x121: u32 = (arg4[11]); + let x122: u32 = (arg4[10]); + let x123: u32 = (arg4[9]); + let x124: u32 = (arg4[8]); + let x125: u32 = (arg4[7]); + let x126: u32 = (arg4[6]); + let x127: u32 = (arg4[5]); + let x128: u32 = (arg4[4]); + let x129: u32 = (arg4[3]); + let x130: u32 = (arg4[2]); + let x131: u32 = (arg4[1]); + let x132: u32 = (arg4[0]); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x133, &mut x134, 0x0, (0x0 as u32), x132); + let mut x135: u32 = 0; + let mut x136: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x135, &mut x136, x134, (0x0 as u32), x131); + let mut x137: u32 = 0; + let mut x138: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x137, &mut x138, x136, (0x0 as u32), x130); + let mut x139: u32 = 0; + let mut x140: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x139, &mut x140, x138, (0x0 as u32), x129); + let mut x141: u32 = 0; + let mut x142: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x141, &mut x142, x140, (0x0 as u32), x128); + let mut x143: u32 = 0; + let mut x144: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x143, &mut x144, x142, (0x0 as u32), x127); + let mut x145: u32 = 0; + let mut x146: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x145, &mut x146, x144, (0x0 as u32), x126); + let mut x147: u32 = 0; + let mut x148: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x147, &mut x148, x146, (0x0 as u32), x125); + let mut x149: u32 = 0; + let mut x150: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x149, &mut x150, x148, (0x0 as u32), x124); + let mut x151: u32 = 0; + let mut x152: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x151, &mut x152, x150, (0x0 as u32), x123); + let mut x153: u32 = 0; + let mut x154: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x153, &mut x154, x152, (0x0 as u32), x122); + let mut x155: u32 = 0; + let mut x156: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x155, &mut x156, x154, (0x0 as u32), x121); + let mut x157: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x157, x156, (0x0 as u32), 0xffffffff); + let mut x158: u32 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x158, &mut x159, 0x0, x133, (x157 & 0x3107ec53)); + let mut x160: u32 = 0; + let mut x161: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x160, &mut x161, x159, x135, (x157 & 0x87470013)); + let mut x162: u32 = 0; + let mut x163: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x162, &mut x163, x161, x137, (x157 & 0x901d1a71)); + let mut x164: u32 = 0; + let mut x165: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x164, &mut x165, x163, x139, (x157 & 0xacd3a729)); + let mut x166: u32 = 0; + let mut x167: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x166, &mut x167, x165, x141, (x157 & 0x7fb71123)); + let mut x168: u32 = 0; + let mut x169: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x168, &mut x169, x167, x143, (x157 & 0x12b1da19)); + let mut x170: u32 = 0; + let mut x171: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x170, &mut x171, x169, x145, (x157 & 0xed5456b4)); + let mut x172: u32 = 0; + let mut x173: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x172, &mut x173, x171, x147, (x157 & 0x152f7109)); + let mut x174: u32 = 0; + let mut x175: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x174, &mut x175, x173, x149, (x157 & 0x50e641df)); + let mut x176: u32 = 0; + let mut x177: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x176, &mut x177, x175, x151, (x157 & 0xf5d6f7e)); + let mut x178: u32 = 0; + let mut x179: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x178, &mut x179, x177, x153, (x157 & 0xa3386d28)); + let mut x180: u32 = 0; + let mut x181: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x180, &mut x181, x179, x155, (x157 & 0x8cb91e82)); + let mut x182: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x182, x3, (arg5[0]), x158); + let mut x183: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x183, x3, (arg5[1]), x160); + let mut x184: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x184, x3, (arg5[2]), x162); + let mut x185: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x185, x3, (arg5[3]), x164); + let mut x186: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x186, x3, (arg5[4]), x166); + let mut x187: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x187, x3, (arg5[5]), x168); + let mut x188: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x188, x3, (arg5[6]), x170); + let mut x189: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x189, x3, (arg5[7]), x172); + let mut x190: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x190, x3, (arg5[8]), x174); + let mut x191: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x191, x3, (arg5[9]), x176); + let mut x192: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x192, x3, (arg5[10]), x178); + let mut x193: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x193, x3, (arg5[11]), x180); + let x194: fiat_bp384_u1 = ((x46 & (0x1 as u32)) as fiat_bp384_u1); + let mut x195: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x195, x194, (0x0 as u32), x7); + let mut x196: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x196, x194, (0x0 as u32), x8); + let mut x197: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x197, x194, (0x0 as u32), x9); + let mut x198: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x198, x194, (0x0 as u32), x10); + let mut x199: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x199, x194, (0x0 as u32), x11); + let mut x200: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x200, x194, (0x0 as u32), x12); + let mut x201: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x201, x194, (0x0 as u32), x13); + let mut x202: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x202, x194, (0x0 as u32), x14); + let mut x203: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x203, x194, (0x0 as u32), x15); + let mut x204: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x204, x194, (0x0 as u32), x16); + let mut x205: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x205, x194, (0x0 as u32), x17); + let mut x206: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x206, x194, (0x0 as u32), x18); + let mut x207: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x207, x194, (0x0 as u32), x19); + let mut x208: u32 = 0; + let mut x209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x208, &mut x209, 0x0, x46, x195); + let mut x210: u32 = 0; + let mut x211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x210, &mut x211, x209, x47, x196); + let mut x212: u32 = 0; + let mut x213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x212, &mut x213, x211, x48, x197); + let mut x214: u32 = 0; + let mut x215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x214, &mut x215, x213, x49, x198); + let mut x216: u32 = 0; + let mut x217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x216, &mut x217, x215, x50, x199); + let mut x218: u32 = 0; + let mut x219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x218, &mut x219, x217, x51, x200); + let mut x220: u32 = 0; + let mut x221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x220, &mut x221, x219, x52, x201); + let mut x222: u32 = 0; + let mut x223: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x222, &mut x223, x221, x53, x202); + let mut x224: u32 = 0; + let mut x225: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x224, &mut x225, x223, x54, x203); + let mut x226: u32 = 0; + let mut x227: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x226, &mut x227, x225, x55, x204); + let mut x228: u32 = 0; + let mut x229: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x228, &mut x229, x227, x56, x205); + let mut x230: u32 = 0; + let mut x231: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x230, &mut x231, x229, x57, x206); + let mut x232: u32 = 0; + let mut x233: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x232, &mut x233, x231, x58, x207); + let mut x234: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x234, x194, (0x0 as u32), x59); + let mut x235: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x235, x194, (0x0 as u32), x60); + let mut x236: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x236, x194, (0x0 as u32), x61); + let mut x237: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x237, x194, (0x0 as u32), x62); + let mut x238: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x238, x194, (0x0 as u32), x63); + let mut x239: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x239, x194, (0x0 as u32), x64); + let mut x240: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x240, x194, (0x0 as u32), x65); + let mut x241: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x241, x194, (0x0 as u32), x66); + let mut x242: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x242, x194, (0x0 as u32), x67); + let mut x243: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x243, x194, (0x0 as u32), x68); + let mut x244: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x244, x194, (0x0 as u32), x69); + let mut x245: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x245, x194, (0x0 as u32), x70); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x246, &mut x247, 0x0, x182, x234); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x248, &mut x249, x247, x183, x235); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x250, &mut x251, x249, x184, x236); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x252, &mut x253, x251, x185, x237); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x254, &mut x255, x253, x186, x238); + let mut x256: u32 = 0; + let mut x257: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x256, &mut x257, x255, x187, x239); + let mut x258: u32 = 0; + let mut x259: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x258, &mut x259, x257, x188, x240); + let mut x260: u32 = 0; + let mut x261: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x260, &mut x261, x259, x189, x241); + let mut x262: u32 = 0; + let mut x263: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x262, &mut x263, x261, x190, x242); + let mut x264: u32 = 0; + let mut x265: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x264, &mut x265, x263, x191, x243); + let mut x266: u32 = 0; + let mut x267: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x266, &mut x267, x265, x192, x244); + let mut x268: u32 = 0; + let mut x269: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x268, &mut x269, x267, x193, x245); + let mut x270: u32 = 0; + let mut x271: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x270, &mut x271, 0x0, x246, 0x3107ec53); + let mut x272: u32 = 0; + let mut x273: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x272, &mut x273, x271, x248, 0x87470013); + let mut x274: u32 = 0; + let mut x275: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x274, &mut x275, x273, x250, 0x901d1a71); + let mut x276: u32 = 0; + let mut x277: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x276, &mut x277, x275, x252, 0xacd3a729); + let mut x278: u32 = 0; + let mut x279: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x278, &mut x279, x277, x254, 0x7fb71123); + let mut x280: u32 = 0; + let mut x281: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x280, &mut x281, x279, x256, 0x12b1da19); + let mut x282: u32 = 0; + let mut x283: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x282, &mut x283, x281, x258, 0xed5456b4); + let mut x284: u32 = 0; + let mut x285: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x284, &mut x285, x283, x260, 0x152f7109); + let mut x286: u32 = 0; + let mut x287: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x286, &mut x287, x285, x262, 0x50e641df); + let mut x288: u32 = 0; + let mut x289: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x288, &mut x289, x287, x264, 0xf5d6f7e); + let mut x290: u32 = 0; + let mut x291: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x290, &mut x291, x289, x266, 0xa3386d28); + let mut x292: u32 = 0; + let mut x293: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x292, &mut x293, x291, x268, 0x8cb91e82); + let mut x294: u32 = 0; + let mut x295: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u32(&mut x294, &mut x295, x293, (x269 as u32), (0x0 as u32)); + let mut x296: u32 = 0; + let mut x297: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u32(&mut x296, &mut x297, 0x0, x6, (0x1 as u32)); + let x298: u32 = ((x208 >> 1) | ((x210 << 31) & 0xffffffff)); + let x299: u32 = ((x210 >> 1) | ((x212 << 31) & 0xffffffff)); + let x300: u32 = ((x212 >> 1) | ((x214 << 31) & 0xffffffff)); + let x301: u32 = ((x214 >> 1) | ((x216 << 31) & 0xffffffff)); + let x302: u32 = ((x216 >> 1) | ((x218 << 31) & 0xffffffff)); + let x303: u32 = ((x218 >> 1) | ((x220 << 31) & 0xffffffff)); + let x304: u32 = ((x220 >> 1) | ((x222 << 31) & 0xffffffff)); + let x305: u32 = ((x222 >> 1) | ((x224 << 31) & 0xffffffff)); + let x306: u32 = ((x224 >> 1) | ((x226 << 31) & 0xffffffff)); + let x307: u32 = ((x226 >> 1) | ((x228 << 31) & 0xffffffff)); + let x308: u32 = ((x228 >> 1) | ((x230 << 31) & 0xffffffff)); + let x309: u32 = ((x230 >> 1) | ((x232 << 31) & 0xffffffff)); + let x310: u32 = ((x232 & 0x80000000) | (x232 >> 1)); + let mut x311: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x311, x120, x95, x71); + let mut x312: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x312, x120, x97, x73); + let mut x313: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x313, x120, x99, x75); + let mut x314: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x314, x120, x101, x77); + let mut x315: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x315, x120, x103, x79); + let mut x316: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x316, x120, x105, x81); + let mut x317: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x317, x120, x107, x83); + let mut x318: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x318, x120, x109, x85); + let mut x319: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x319, x120, x111, x87); + let mut x320: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x320, x120, x113, x89); + let mut x321: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x321, x120, x115, x91); + let mut x322: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x322, x120, x117, x93); + let mut x323: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x323, x295, x270, x246); + let mut x324: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x324, x295, x272, x248); + let mut x325: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x325, x295, x274, x250); + let mut x326: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x326, x295, x276, x252); + let mut x327: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x327, x295, x278, x254); + let mut x328: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x328, x295, x280, x256); + let mut x329: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x329, x295, x282, x258); + let mut x330: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x330, x295, x284, x260); + let mut x331: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x331, x295, x286, x262); + let mut x332: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x332, x295, x288, x264); + let mut x333: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x333, x295, x290, x266); + let mut x334: u32 = 0; + fiat_bp384_cmovznz_u32(&mut x334, x295, x292, x268); + *out1 = x296; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out2[9] = x16; + out2[10] = x17; + out2[11] = x18; + out2[12] = x19; + out3[0] = x298; + out3[1] = x299; + out3[2] = x300; + out3[3] = x301; + out3[4] = x302; + out3[5] = x303; + out3[6] = x304; + out3[7] = x305; + out3[8] = x306; + out3[9] = x307; + out3[10] = x308; + out3[11] = x309; + out3[12] = x310; + out4[0] = x311; + out4[1] = x312; + out4[2] = x313; + out4[3] = x314; + out4[4] = x315; + out4[5] = x316; + out4[6] = x317; + out4[7] = x318; + out4[8] = x319; + out4[9] = x320; + out4[10] = x321; + out4[11] = x322; + out5[0] = x323; + out5[1] = x324; + out5[2] = x325; + out5[3] = x326; + out5[4] = x327; + out5[5] = x328; + out5[6] = x329; + out5[7] = x330; + out5[8] = x331; + out5[9] = x332; + out5[10] = x333; + out5[11] = x334; +} +/// The function fiat_bp384_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_divstep_precomp(out1: &mut [u32; 12]) { + out1[0] = 0x4698d1e; + out1[1] = 0xed2d6e6e; + out1[2] = 0xc8ebd909; + out1[3] = 0x75c2585; + out1[4] = 0xa0fa043b; + out1[5] = 0x907583f1; + out1[6] = 0x5e0013f3; + out1[7] = 0xe68c5239; + out1[8] = 0xf6636903; + out1[9] = 0x6834d2fc; + out1[10] = 0x63213e3a; + out1[11] = 0x5d2d70cf; +} diff --git a/bp512/src/arithmetic/field/bp384_64.rs b/bp512/src/arithmetic/field/bp384_64.rs new file mode 100644 index 000000000..56eeccacf --- /dev/null +++ b/bp512/src/arithmetic/field/bp384_64.rs @@ -0,0 +1,3724 @@ +//! fiat-crypto output postprocessed by fiat-constify: +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp384 64 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp384 +//! machine_wordsize = 64 (from "64") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53 (from "0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec53") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) in +//! if x1 & (2^384-1) < 2^383 then x1 & (2^384-1) else (x1 & (2^384-1)) - 2^384 +#![allow(unused_parens)] +#![allow(non_camel_case_types)] +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp384_u1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_u1 = u8; +/// fiat_bp384_i1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_i1 = i8; +/// fiat_bp384_u2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_u2 = u8; +/// fiat_bp384_i2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_i2 = i8; +/// The type fiat_bp384_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_montgomery_domain_field_element(pub [u64; 6]); +impl core::ops::Index for fiat_bp384_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The type fiat_bp384_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_non_montgomery_domain_field_element(pub [u64; 6]); +impl core::ops::Index for fiat_bp384_non_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The function fiat_bp384_addcarryx_u64 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^64 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_addcarryx_u64( + out1: &mut u64, + out2: &mut fiat_bp384_u1, + arg1: fiat_bp384_u1, + arg2: u64, + arg3: u64, +) { + let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: fiat_bp384_u1 = ((x1 >> 64) as fiat_bp384_u1); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_subborrowx_u64 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^64 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_subborrowx_u64( + out1: &mut u64, + out2: &mut fiat_bp384_u1, + arg1: fiat_bp384_u1, + arg2: u64, + arg3: u64, +) { + let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); + let x2: fiat_bp384_i1 = ((x1 >> 64) as fiat_bp384_i1); + let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); + *out1 = x3; + *out2 = (((0x0 as fiat_bp384_i2) - (x2 as fiat_bp384_i2)) as fiat_bp384_u1); +} +/// The function fiat_bp384_mulx_u64 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^64 +/// out2 = ⌊arg1 * arg2 / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { + let x1: u128 = ((arg1 as u128) * (arg2 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: u64 = ((x1 >> 64) as u64); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_cmovznz_u64 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_cmovznz_u64(out1: &mut u64, arg1: fiat_bp384_u1, arg2: u64, arg3: u64) { + let x1: fiat_bp384_u1 = (!(!arg1)); + let x2: u64 = ((((((0x0 as fiat_bp384_i2) - (x1 as fiat_bp384_i2)) as fiat_bp384_i1) as i128) + & (0xffffffffffffffff as i128)) as u64); + let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} +/// The function fiat_bp384_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_mul( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_mulx_u64(&mut x7, &mut x8, x6, (arg2[5])); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_mulx_u64(&mut x9, &mut x10, x6, (arg2[4])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_mulx_u64(&mut x11, &mut x12, x6, (arg2[3])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_mulx_u64(&mut x13, &mut x14, x6, (arg2[2])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_mulx_u64(&mut x15, &mut x16, x6, (arg2[1])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_mulx_u64(&mut x17, &mut x18, x6, (arg2[0])); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let x29: u64 = ((x28 as u64) + x8); + let mut x30: u64 = 0; + let mut x31: u64 = 0; + fiat_bp384_mulx_u64(&mut x30, &mut x31, x17, 0x9a6ea96cea9ec825); + let mut x32: u64 = 0; + let mut x33: u64 = 0; + fiat_bp384_mulx_u64(&mut x32, &mut x33, x30, 0x8cb91e82a3386d28); + let mut x34: u64 = 0; + let mut x35: u64 = 0; + fiat_bp384_mulx_u64(&mut x34, &mut x35, x30, 0xf5d6f7e50e641df); + let mut x36: u64 = 0; + let mut x37: u64 = 0; + fiat_bp384_mulx_u64(&mut x36, &mut x37, x30, 0x152f7109ed5456b4); + let mut x38: u64 = 0; + let mut x39: u64 = 0; + fiat_bp384_mulx_u64(&mut x38, &mut x39, x30, 0x12b1da197fb71123); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp384_mulx_u64(&mut x40, &mut x41, x30, 0xacd3a729901d1a71); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp384_mulx_u64(&mut x42, &mut x43, x30, 0x874700133107ec53); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x44, &mut x45, 0x0, x43, x40); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x46, &mut x47, x45, x41, x38); + let mut x48: u64 = 0; + let mut x49: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x48, &mut x49, x47, x39, x36); + let mut x50: u64 = 0; + let mut x51: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x50, &mut x51, x49, x37, x34); + let mut x52: u64 = 0; + let mut x53: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x52, &mut x53, x51, x35, x32); + let x54: u64 = ((x53 as u64) + x33); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x55, &mut x56, 0x0, x17, x42); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x57, &mut x58, x56, x19, x44); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x59, &mut x60, x58, x21, x46); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x61, &mut x62, x60, x23, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x63, &mut x64, x62, x25, x50); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x65, &mut x66, x64, x27, x52); + let mut x67: u64 = 0; + let mut x68: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x67, &mut x68, x66, x29, x54); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_mulx_u64(&mut x69, &mut x70, x1, (arg2[5])); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_mulx_u64(&mut x71, &mut x72, x1, (arg2[4])); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_mulx_u64(&mut x73, &mut x74, x1, (arg2[3])); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_mulx_u64(&mut x75, &mut x76, x1, (arg2[2])); + let mut x77: u64 = 0; + let mut x78: u64 = 0; + fiat_bp384_mulx_u64(&mut x77, &mut x78, x1, (arg2[1])); + let mut x79: u64 = 0; + let mut x80: u64 = 0; + fiat_bp384_mulx_u64(&mut x79, &mut x80, x1, (arg2[0])); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x81, &mut x82, 0x0, x80, x77); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x83, &mut x84, x82, x78, x75); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x85, &mut x86, x84, x76, x73); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x87, &mut x88, x86, x74, x71); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x89, &mut x90, x88, x72, x69); + let x91: u64 = ((x90 as u64) + x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x92, &mut x93, 0x0, x57, x79); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x94, &mut x95, x93, x59, x81); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x96, &mut x97, x95, x61, x83); + let mut x98: u64 = 0; + let mut x99: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x98, &mut x99, x97, x63, x85); + let mut x100: u64 = 0; + let mut x101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x100, &mut x101, x99, x65, x87); + let mut x102: u64 = 0; + let mut x103: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x102, &mut x103, x101, x67, x89); + let mut x104: u64 = 0; + let mut x105: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x104, &mut x105, x103, (x68 as u64), x91); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_mulx_u64(&mut x106, &mut x107, x92, 0x9a6ea96cea9ec825); + let mut x108: u64 = 0; + let mut x109: u64 = 0; + fiat_bp384_mulx_u64(&mut x108, &mut x109, x106, 0x8cb91e82a3386d28); + let mut x110: u64 = 0; + let mut x111: u64 = 0; + fiat_bp384_mulx_u64(&mut x110, &mut x111, x106, 0xf5d6f7e50e641df); + let mut x112: u64 = 0; + let mut x113: u64 = 0; + fiat_bp384_mulx_u64(&mut x112, &mut x113, x106, 0x152f7109ed5456b4); + let mut x114: u64 = 0; + let mut x115: u64 = 0; + fiat_bp384_mulx_u64(&mut x114, &mut x115, x106, 0x12b1da197fb71123); + let mut x116: u64 = 0; + let mut x117: u64 = 0; + fiat_bp384_mulx_u64(&mut x116, &mut x117, x106, 0xacd3a729901d1a71); + let mut x118: u64 = 0; + let mut x119: u64 = 0; + fiat_bp384_mulx_u64(&mut x118, &mut x119, x106, 0x874700133107ec53); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x120, &mut x121, 0x0, x119, x116); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x122, &mut x123, x121, x117, x114); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x124, &mut x125, x123, x115, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x126, &mut x127, x125, x113, x110); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x128, &mut x129, x127, x111, x108); + let x130: u64 = ((x129 as u64) + x109); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x131, &mut x132, 0x0, x92, x118); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x133, &mut x134, x132, x94, x120); + let mut x135: u64 = 0; + let mut x136: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x135, &mut x136, x134, x96, x122); + let mut x137: u64 = 0; + let mut x138: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x137, &mut x138, x136, x98, x124); + let mut x139: u64 = 0; + let mut x140: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x139, &mut x140, x138, x100, x126); + let mut x141: u64 = 0; + let mut x142: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x141, &mut x142, x140, x102, x128); + let mut x143: u64 = 0; + let mut x144: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x143, &mut x144, x142, x104, x130); + let x145: u64 = ((x144 as u64) + (x105 as u64)); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_mulx_u64(&mut x146, &mut x147, x2, (arg2[5])); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_mulx_u64(&mut x148, &mut x149, x2, (arg2[4])); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_mulx_u64(&mut x150, &mut x151, x2, (arg2[3])); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_mulx_u64(&mut x152, &mut x153, x2, (arg2[2])); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp384_mulx_u64(&mut x154, &mut x155, x2, (arg2[1])); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp384_mulx_u64(&mut x156, &mut x157, x2, (arg2[0])); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let x168: u64 = ((x167 as u64) + x147); + let mut x169: u64 = 0; + let mut x170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x169, &mut x170, 0x0, x133, x156); + let mut x171: u64 = 0; + let mut x172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x171, &mut x172, x170, x135, x158); + let mut x173: u64 = 0; + let mut x174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x173, &mut x174, x172, x137, x160); + let mut x175: u64 = 0; + let mut x176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x175, &mut x176, x174, x139, x162); + let mut x177: u64 = 0; + let mut x178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x177, &mut x178, x176, x141, x164); + let mut x179: u64 = 0; + let mut x180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x179, &mut x180, x178, x143, x166); + let mut x181: u64 = 0; + let mut x182: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x181, &mut x182, x180, x145, x168); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp384_mulx_u64(&mut x183, &mut x184, x169, 0x9a6ea96cea9ec825); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp384_mulx_u64(&mut x185, &mut x186, x183, 0x8cb91e82a3386d28); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp384_mulx_u64(&mut x187, &mut x188, x183, 0xf5d6f7e50e641df); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp384_mulx_u64(&mut x189, &mut x190, x183, 0x152f7109ed5456b4); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp384_mulx_u64(&mut x191, &mut x192, x183, 0x12b1da197fb71123); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp384_mulx_u64(&mut x193, &mut x194, x183, 0xacd3a729901d1a71); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp384_mulx_u64(&mut x195, &mut x196, x183, 0x874700133107ec53); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let x207: u64 = ((x206 as u64) + x186); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x208, &mut x209, 0x0, x169, x195); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x210, &mut x211, x209, x171, x197); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x212, &mut x213, x211, x173, x199); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x214, &mut x215, x213, x175, x201); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x216, &mut x217, x215, x177, x203); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x218, &mut x219, x217, x179, x205); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x220, &mut x221, x219, x181, x207); + let x222: u64 = ((x221 as u64) + (x182 as u64)); + let mut x223: u64 = 0; + let mut x224: u64 = 0; + fiat_bp384_mulx_u64(&mut x223, &mut x224, x3, (arg2[5])); + let mut x225: u64 = 0; + let mut x226: u64 = 0; + fiat_bp384_mulx_u64(&mut x225, &mut x226, x3, (arg2[4])); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp384_mulx_u64(&mut x227, &mut x228, x3, (arg2[3])); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp384_mulx_u64(&mut x229, &mut x230, x3, (arg2[2])); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp384_mulx_u64(&mut x231, &mut x232, x3, (arg2[1])); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp384_mulx_u64(&mut x233, &mut x234, x3, (arg2[0])); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x235, &mut x236, 0x0, x234, x231); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x237, &mut x238, x236, x232, x229); + let mut x239: u64 = 0; + let mut x240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x239, &mut x240, x238, x230, x227); + let mut x241: u64 = 0; + let mut x242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x241, &mut x242, x240, x228, x225); + let mut x243: u64 = 0; + let mut x244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x243, &mut x244, x242, x226, x223); + let x245: u64 = ((x244 as u64) + x224); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x246, &mut x247, 0x0, x210, x233); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x248, &mut x249, x247, x212, x235); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x250, &mut x251, x249, x214, x237); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x252, &mut x253, x251, x216, x239); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x254, &mut x255, x253, x218, x241); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x256, &mut x257, x255, x220, x243); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x258, &mut x259, x257, x222, x245); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp384_mulx_u64(&mut x260, &mut x261, x246, 0x9a6ea96cea9ec825); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp384_mulx_u64(&mut x262, &mut x263, x260, 0x8cb91e82a3386d28); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp384_mulx_u64(&mut x264, &mut x265, x260, 0xf5d6f7e50e641df); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp384_mulx_u64(&mut x266, &mut x267, x260, 0x152f7109ed5456b4); + let mut x268: u64 = 0; + let mut x269: u64 = 0; + fiat_bp384_mulx_u64(&mut x268, &mut x269, x260, 0x12b1da197fb71123); + let mut x270: u64 = 0; + let mut x271: u64 = 0; + fiat_bp384_mulx_u64(&mut x270, &mut x271, x260, 0xacd3a729901d1a71); + let mut x272: u64 = 0; + let mut x273: u64 = 0; + fiat_bp384_mulx_u64(&mut x272, &mut x273, x260, 0x874700133107ec53); + let mut x274: u64 = 0; + let mut x275: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x274, &mut x275, 0x0, x273, x270); + let mut x276: u64 = 0; + let mut x277: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x276, &mut x277, x275, x271, x268); + let mut x278: u64 = 0; + let mut x279: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x278, &mut x279, x277, x269, x266); + let mut x280: u64 = 0; + let mut x281: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x280, &mut x281, x279, x267, x264); + let mut x282: u64 = 0; + let mut x283: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x282, &mut x283, x281, x265, x262); + let x284: u64 = ((x283 as u64) + x263); + let mut x285: u64 = 0; + let mut x286: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x285, &mut x286, 0x0, x246, x272); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x287, &mut x288, x286, x248, x274); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x289, &mut x290, x288, x250, x276); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x291, &mut x292, x290, x252, x278); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x293, &mut x294, x292, x254, x280); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x295, &mut x296, x294, x256, x282); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x297, &mut x298, x296, x258, x284); + let x299: u64 = ((x298 as u64) + (x259 as u64)); + let mut x300: u64 = 0; + let mut x301: u64 = 0; + fiat_bp384_mulx_u64(&mut x300, &mut x301, x4, (arg2[5])); + let mut x302: u64 = 0; + let mut x303: u64 = 0; + fiat_bp384_mulx_u64(&mut x302, &mut x303, x4, (arg2[4])); + let mut x304: u64 = 0; + let mut x305: u64 = 0; + fiat_bp384_mulx_u64(&mut x304, &mut x305, x4, (arg2[3])); + let mut x306: u64 = 0; + let mut x307: u64 = 0; + fiat_bp384_mulx_u64(&mut x306, &mut x307, x4, (arg2[2])); + let mut x308: u64 = 0; + let mut x309: u64 = 0; + fiat_bp384_mulx_u64(&mut x308, &mut x309, x4, (arg2[1])); + let mut x310: u64 = 0; + let mut x311: u64 = 0; + fiat_bp384_mulx_u64(&mut x310, &mut x311, x4, (arg2[0])); + let mut x312: u64 = 0; + let mut x313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x312, &mut x313, 0x0, x311, x308); + let mut x314: u64 = 0; + let mut x315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x314, &mut x315, x313, x309, x306); + let mut x316: u64 = 0; + let mut x317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x316, &mut x317, x315, x307, x304); + let mut x318: u64 = 0; + let mut x319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x318, &mut x319, x317, x305, x302); + let mut x320: u64 = 0; + let mut x321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x320, &mut x321, x319, x303, x300); + let x322: u64 = ((x321 as u64) + x301); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x323, &mut x324, 0x0, x287, x310); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x325, &mut x326, x324, x289, x312); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x327, &mut x328, x326, x291, x314); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x329, &mut x330, x328, x293, x316); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x331, &mut x332, x330, x295, x318); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x333, &mut x334, x332, x297, x320); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x335, &mut x336, x334, x299, x322); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp384_mulx_u64(&mut x337, &mut x338, x323, 0x9a6ea96cea9ec825); + let mut x339: u64 = 0; + let mut x340: u64 = 0; + fiat_bp384_mulx_u64(&mut x339, &mut x340, x337, 0x8cb91e82a3386d28); + let mut x341: u64 = 0; + let mut x342: u64 = 0; + fiat_bp384_mulx_u64(&mut x341, &mut x342, x337, 0xf5d6f7e50e641df); + let mut x343: u64 = 0; + let mut x344: u64 = 0; + fiat_bp384_mulx_u64(&mut x343, &mut x344, x337, 0x152f7109ed5456b4); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_mulx_u64(&mut x345, &mut x346, x337, 0x12b1da197fb71123); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_mulx_u64(&mut x347, &mut x348, x337, 0xacd3a729901d1a71); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_mulx_u64(&mut x349, &mut x350, x337, 0x874700133107ec53); + let mut x351: u64 = 0; + let mut x352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x351, &mut x352, 0x0, x350, x347); + let mut x353: u64 = 0; + let mut x354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x353, &mut x354, x352, x348, x345); + let mut x355: u64 = 0; + let mut x356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x355, &mut x356, x354, x346, x343); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x357, &mut x358, x356, x344, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x359, &mut x360, x358, x342, x339); + let x361: u64 = ((x360 as u64) + x340); + let mut x362: u64 = 0; + let mut x363: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x362, &mut x363, 0x0, x323, x349); + let mut x364: u64 = 0; + let mut x365: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x364, &mut x365, x363, x325, x351); + let mut x366: u64 = 0; + let mut x367: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x366, &mut x367, x365, x327, x353); + let mut x368: u64 = 0; + let mut x369: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x368, &mut x369, x367, x329, x355); + let mut x370: u64 = 0; + let mut x371: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x370, &mut x371, x369, x331, x357); + let mut x372: u64 = 0; + let mut x373: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x372, &mut x373, x371, x333, x359); + let mut x374: u64 = 0; + let mut x375: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x374, &mut x375, x373, x335, x361); + let x376: u64 = ((x375 as u64) + (x336 as u64)); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp384_mulx_u64(&mut x377, &mut x378, x5, (arg2[5])); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_mulx_u64(&mut x379, &mut x380, x5, (arg2[4])); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_mulx_u64(&mut x381, &mut x382, x5, (arg2[3])); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_mulx_u64(&mut x383, &mut x384, x5, (arg2[2])); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_mulx_u64(&mut x385, &mut x386, x5, (arg2[1])); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_mulx_u64(&mut x387, &mut x388, x5, (arg2[0])); + let mut x389: u64 = 0; + let mut x390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x389, &mut x390, 0x0, x388, x385); + let mut x391: u64 = 0; + let mut x392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x391, &mut x392, x390, x386, x383); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x393, &mut x394, x392, x384, x381); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x395, &mut x396, x394, x382, x379); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x397, &mut x398, x396, x380, x377); + let x399: u64 = ((x398 as u64) + x378); + let mut x400: u64 = 0; + let mut x401: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x400, &mut x401, 0x0, x364, x387); + let mut x402: u64 = 0; + let mut x403: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x402, &mut x403, x401, x366, x389); + let mut x404: u64 = 0; + let mut x405: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x404, &mut x405, x403, x368, x391); + let mut x406: u64 = 0; + let mut x407: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x406, &mut x407, x405, x370, x393); + let mut x408: u64 = 0; + let mut x409: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x408, &mut x409, x407, x372, x395); + let mut x410: u64 = 0; + let mut x411: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x410, &mut x411, x409, x374, x397); + let mut x412: u64 = 0; + let mut x413: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x412, &mut x413, x411, x376, x399); + let mut x414: u64 = 0; + let mut x415: u64 = 0; + fiat_bp384_mulx_u64(&mut x414, &mut x415, x400, 0x9a6ea96cea9ec825); + let mut x416: u64 = 0; + let mut x417: u64 = 0; + fiat_bp384_mulx_u64(&mut x416, &mut x417, x414, 0x8cb91e82a3386d28); + let mut x418: u64 = 0; + let mut x419: u64 = 0; + fiat_bp384_mulx_u64(&mut x418, &mut x419, x414, 0xf5d6f7e50e641df); + let mut x420: u64 = 0; + let mut x421: u64 = 0; + fiat_bp384_mulx_u64(&mut x420, &mut x421, x414, 0x152f7109ed5456b4); + let mut x422: u64 = 0; + let mut x423: u64 = 0; + fiat_bp384_mulx_u64(&mut x422, &mut x423, x414, 0x12b1da197fb71123); + let mut x424: u64 = 0; + let mut x425: u64 = 0; + fiat_bp384_mulx_u64(&mut x424, &mut x425, x414, 0xacd3a729901d1a71); + let mut x426: u64 = 0; + let mut x427: u64 = 0; + fiat_bp384_mulx_u64(&mut x426, &mut x427, x414, 0x874700133107ec53); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x428, &mut x429, 0x0, x427, x424); + let mut x430: u64 = 0; + let mut x431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x430, &mut x431, x429, x425, x422); + let mut x432: u64 = 0; + let mut x433: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x432, &mut x433, x431, x423, x420); + let mut x434: u64 = 0; + let mut x435: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x434, &mut x435, x433, x421, x418); + let mut x436: u64 = 0; + let mut x437: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x436, &mut x437, x435, x419, x416); + let x438: u64 = ((x437 as u64) + x417); + let mut x439: u64 = 0; + let mut x440: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x439, &mut x440, 0x0, x400, x426); + let mut x441: u64 = 0; + let mut x442: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x441, &mut x442, x440, x402, x428); + let mut x443: u64 = 0; + let mut x444: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x443, &mut x444, x442, x404, x430); + let mut x445: u64 = 0; + let mut x446: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x445, &mut x446, x444, x406, x432); + let mut x447: u64 = 0; + let mut x448: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x447, &mut x448, x446, x408, x434); + let mut x449: u64 = 0; + let mut x450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x449, &mut x450, x448, x410, x436); + let mut x451: u64 = 0; + let mut x452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x451, &mut x452, x450, x412, x438); + let x453: u64 = ((x452 as u64) + (x413 as u64)); + let mut x454: u64 = 0; + let mut x455: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x454, &mut x455, 0x0, x441, 0x874700133107ec53); + let mut x456: u64 = 0; + let mut x457: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x456, &mut x457, x455, x443, 0xacd3a729901d1a71); + let mut x458: u64 = 0; + let mut x459: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x458, &mut x459, x457, x445, 0x12b1da197fb71123); + let mut x460: u64 = 0; + let mut x461: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x460, &mut x461, x459, x447, 0x152f7109ed5456b4); + let mut x462: u64 = 0; + let mut x463: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x462, &mut x463, x461, x449, 0xf5d6f7e50e641df); + let mut x464: u64 = 0; + let mut x465: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x464, &mut x465, x463, x451, 0x8cb91e82a3386d28); + let mut x466: u64 = 0; + let mut x467: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x466, &mut x467, x465, x453, (0x0 as u64)); + let mut x468: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x468, x467, x454, x441); + let mut x469: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x469, x467, x456, x443); + let mut x470: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x470, x467, x458, x445); + let mut x471: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x471, x467, x460, x447); + let mut x472: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x472, x467, x462, x449); + let mut x473: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x473, x467, x464, x451); + out1[0] = x468; + out1[1] = x469; + out1[2] = x470; + out1[3] = x471; + out1[4] = x472; + out1[5] = x473; +} +/// The function fiat_bp384_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_square( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_mulx_u64(&mut x7, &mut x8, x6, (arg1[5])); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_mulx_u64(&mut x9, &mut x10, x6, (arg1[4])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_mulx_u64(&mut x11, &mut x12, x6, (arg1[3])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_mulx_u64(&mut x13, &mut x14, x6, (arg1[2])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_mulx_u64(&mut x15, &mut x16, x6, (arg1[1])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_mulx_u64(&mut x17, &mut x18, x6, (arg1[0])); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let x29: u64 = ((x28 as u64) + x8); + let mut x30: u64 = 0; + let mut x31: u64 = 0; + fiat_bp384_mulx_u64(&mut x30, &mut x31, x17, 0x9a6ea96cea9ec825); + let mut x32: u64 = 0; + let mut x33: u64 = 0; + fiat_bp384_mulx_u64(&mut x32, &mut x33, x30, 0x8cb91e82a3386d28); + let mut x34: u64 = 0; + let mut x35: u64 = 0; + fiat_bp384_mulx_u64(&mut x34, &mut x35, x30, 0xf5d6f7e50e641df); + let mut x36: u64 = 0; + let mut x37: u64 = 0; + fiat_bp384_mulx_u64(&mut x36, &mut x37, x30, 0x152f7109ed5456b4); + let mut x38: u64 = 0; + let mut x39: u64 = 0; + fiat_bp384_mulx_u64(&mut x38, &mut x39, x30, 0x12b1da197fb71123); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp384_mulx_u64(&mut x40, &mut x41, x30, 0xacd3a729901d1a71); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp384_mulx_u64(&mut x42, &mut x43, x30, 0x874700133107ec53); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x44, &mut x45, 0x0, x43, x40); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x46, &mut x47, x45, x41, x38); + let mut x48: u64 = 0; + let mut x49: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x48, &mut x49, x47, x39, x36); + let mut x50: u64 = 0; + let mut x51: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x50, &mut x51, x49, x37, x34); + let mut x52: u64 = 0; + let mut x53: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x52, &mut x53, x51, x35, x32); + let x54: u64 = ((x53 as u64) + x33); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x55, &mut x56, 0x0, x17, x42); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x57, &mut x58, x56, x19, x44); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x59, &mut x60, x58, x21, x46); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x61, &mut x62, x60, x23, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x63, &mut x64, x62, x25, x50); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x65, &mut x66, x64, x27, x52); + let mut x67: u64 = 0; + let mut x68: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x67, &mut x68, x66, x29, x54); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_mulx_u64(&mut x69, &mut x70, x1, (arg1[5])); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_mulx_u64(&mut x71, &mut x72, x1, (arg1[4])); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_mulx_u64(&mut x73, &mut x74, x1, (arg1[3])); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_mulx_u64(&mut x75, &mut x76, x1, (arg1[2])); + let mut x77: u64 = 0; + let mut x78: u64 = 0; + fiat_bp384_mulx_u64(&mut x77, &mut x78, x1, (arg1[1])); + let mut x79: u64 = 0; + let mut x80: u64 = 0; + fiat_bp384_mulx_u64(&mut x79, &mut x80, x1, (arg1[0])); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x81, &mut x82, 0x0, x80, x77); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x83, &mut x84, x82, x78, x75); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x85, &mut x86, x84, x76, x73); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x87, &mut x88, x86, x74, x71); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x89, &mut x90, x88, x72, x69); + let x91: u64 = ((x90 as u64) + x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x92, &mut x93, 0x0, x57, x79); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x94, &mut x95, x93, x59, x81); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x96, &mut x97, x95, x61, x83); + let mut x98: u64 = 0; + let mut x99: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x98, &mut x99, x97, x63, x85); + let mut x100: u64 = 0; + let mut x101: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x100, &mut x101, x99, x65, x87); + let mut x102: u64 = 0; + let mut x103: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x102, &mut x103, x101, x67, x89); + let mut x104: u64 = 0; + let mut x105: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x104, &mut x105, x103, (x68 as u64), x91); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_mulx_u64(&mut x106, &mut x107, x92, 0x9a6ea96cea9ec825); + let mut x108: u64 = 0; + let mut x109: u64 = 0; + fiat_bp384_mulx_u64(&mut x108, &mut x109, x106, 0x8cb91e82a3386d28); + let mut x110: u64 = 0; + let mut x111: u64 = 0; + fiat_bp384_mulx_u64(&mut x110, &mut x111, x106, 0xf5d6f7e50e641df); + let mut x112: u64 = 0; + let mut x113: u64 = 0; + fiat_bp384_mulx_u64(&mut x112, &mut x113, x106, 0x152f7109ed5456b4); + let mut x114: u64 = 0; + let mut x115: u64 = 0; + fiat_bp384_mulx_u64(&mut x114, &mut x115, x106, 0x12b1da197fb71123); + let mut x116: u64 = 0; + let mut x117: u64 = 0; + fiat_bp384_mulx_u64(&mut x116, &mut x117, x106, 0xacd3a729901d1a71); + let mut x118: u64 = 0; + let mut x119: u64 = 0; + fiat_bp384_mulx_u64(&mut x118, &mut x119, x106, 0x874700133107ec53); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x120, &mut x121, 0x0, x119, x116); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x122, &mut x123, x121, x117, x114); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x124, &mut x125, x123, x115, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x126, &mut x127, x125, x113, x110); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x128, &mut x129, x127, x111, x108); + let x130: u64 = ((x129 as u64) + x109); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x131, &mut x132, 0x0, x92, x118); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x133, &mut x134, x132, x94, x120); + let mut x135: u64 = 0; + let mut x136: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x135, &mut x136, x134, x96, x122); + let mut x137: u64 = 0; + let mut x138: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x137, &mut x138, x136, x98, x124); + let mut x139: u64 = 0; + let mut x140: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x139, &mut x140, x138, x100, x126); + let mut x141: u64 = 0; + let mut x142: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x141, &mut x142, x140, x102, x128); + let mut x143: u64 = 0; + let mut x144: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x143, &mut x144, x142, x104, x130); + let x145: u64 = ((x144 as u64) + (x105 as u64)); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_mulx_u64(&mut x146, &mut x147, x2, (arg1[5])); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_mulx_u64(&mut x148, &mut x149, x2, (arg1[4])); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_mulx_u64(&mut x150, &mut x151, x2, (arg1[3])); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_mulx_u64(&mut x152, &mut x153, x2, (arg1[2])); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp384_mulx_u64(&mut x154, &mut x155, x2, (arg1[1])); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp384_mulx_u64(&mut x156, &mut x157, x2, (arg1[0])); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let x168: u64 = ((x167 as u64) + x147); + let mut x169: u64 = 0; + let mut x170: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x169, &mut x170, 0x0, x133, x156); + let mut x171: u64 = 0; + let mut x172: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x171, &mut x172, x170, x135, x158); + let mut x173: u64 = 0; + let mut x174: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x173, &mut x174, x172, x137, x160); + let mut x175: u64 = 0; + let mut x176: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x175, &mut x176, x174, x139, x162); + let mut x177: u64 = 0; + let mut x178: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x177, &mut x178, x176, x141, x164); + let mut x179: u64 = 0; + let mut x180: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x179, &mut x180, x178, x143, x166); + let mut x181: u64 = 0; + let mut x182: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x181, &mut x182, x180, x145, x168); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp384_mulx_u64(&mut x183, &mut x184, x169, 0x9a6ea96cea9ec825); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp384_mulx_u64(&mut x185, &mut x186, x183, 0x8cb91e82a3386d28); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp384_mulx_u64(&mut x187, &mut x188, x183, 0xf5d6f7e50e641df); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp384_mulx_u64(&mut x189, &mut x190, x183, 0x152f7109ed5456b4); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp384_mulx_u64(&mut x191, &mut x192, x183, 0x12b1da197fb71123); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp384_mulx_u64(&mut x193, &mut x194, x183, 0xacd3a729901d1a71); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp384_mulx_u64(&mut x195, &mut x196, x183, 0x874700133107ec53); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let x207: u64 = ((x206 as u64) + x186); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x208, &mut x209, 0x0, x169, x195); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x210, &mut x211, x209, x171, x197); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x212, &mut x213, x211, x173, x199); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x214, &mut x215, x213, x175, x201); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x216, &mut x217, x215, x177, x203); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x218, &mut x219, x217, x179, x205); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x220, &mut x221, x219, x181, x207); + let x222: u64 = ((x221 as u64) + (x182 as u64)); + let mut x223: u64 = 0; + let mut x224: u64 = 0; + fiat_bp384_mulx_u64(&mut x223, &mut x224, x3, (arg1[5])); + let mut x225: u64 = 0; + let mut x226: u64 = 0; + fiat_bp384_mulx_u64(&mut x225, &mut x226, x3, (arg1[4])); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp384_mulx_u64(&mut x227, &mut x228, x3, (arg1[3])); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp384_mulx_u64(&mut x229, &mut x230, x3, (arg1[2])); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp384_mulx_u64(&mut x231, &mut x232, x3, (arg1[1])); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp384_mulx_u64(&mut x233, &mut x234, x3, (arg1[0])); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x235, &mut x236, 0x0, x234, x231); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x237, &mut x238, x236, x232, x229); + let mut x239: u64 = 0; + let mut x240: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x239, &mut x240, x238, x230, x227); + let mut x241: u64 = 0; + let mut x242: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x241, &mut x242, x240, x228, x225); + let mut x243: u64 = 0; + let mut x244: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x243, &mut x244, x242, x226, x223); + let x245: u64 = ((x244 as u64) + x224); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x246, &mut x247, 0x0, x210, x233); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x248, &mut x249, x247, x212, x235); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x250, &mut x251, x249, x214, x237); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x252, &mut x253, x251, x216, x239); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x254, &mut x255, x253, x218, x241); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x256, &mut x257, x255, x220, x243); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x258, &mut x259, x257, x222, x245); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp384_mulx_u64(&mut x260, &mut x261, x246, 0x9a6ea96cea9ec825); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp384_mulx_u64(&mut x262, &mut x263, x260, 0x8cb91e82a3386d28); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp384_mulx_u64(&mut x264, &mut x265, x260, 0xf5d6f7e50e641df); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp384_mulx_u64(&mut x266, &mut x267, x260, 0x152f7109ed5456b4); + let mut x268: u64 = 0; + let mut x269: u64 = 0; + fiat_bp384_mulx_u64(&mut x268, &mut x269, x260, 0x12b1da197fb71123); + let mut x270: u64 = 0; + let mut x271: u64 = 0; + fiat_bp384_mulx_u64(&mut x270, &mut x271, x260, 0xacd3a729901d1a71); + let mut x272: u64 = 0; + let mut x273: u64 = 0; + fiat_bp384_mulx_u64(&mut x272, &mut x273, x260, 0x874700133107ec53); + let mut x274: u64 = 0; + let mut x275: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x274, &mut x275, 0x0, x273, x270); + let mut x276: u64 = 0; + let mut x277: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x276, &mut x277, x275, x271, x268); + let mut x278: u64 = 0; + let mut x279: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x278, &mut x279, x277, x269, x266); + let mut x280: u64 = 0; + let mut x281: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x280, &mut x281, x279, x267, x264); + let mut x282: u64 = 0; + let mut x283: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x282, &mut x283, x281, x265, x262); + let x284: u64 = ((x283 as u64) + x263); + let mut x285: u64 = 0; + let mut x286: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x285, &mut x286, 0x0, x246, x272); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x287, &mut x288, x286, x248, x274); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x289, &mut x290, x288, x250, x276); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x291, &mut x292, x290, x252, x278); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x293, &mut x294, x292, x254, x280); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x295, &mut x296, x294, x256, x282); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x297, &mut x298, x296, x258, x284); + let x299: u64 = ((x298 as u64) + (x259 as u64)); + let mut x300: u64 = 0; + let mut x301: u64 = 0; + fiat_bp384_mulx_u64(&mut x300, &mut x301, x4, (arg1[5])); + let mut x302: u64 = 0; + let mut x303: u64 = 0; + fiat_bp384_mulx_u64(&mut x302, &mut x303, x4, (arg1[4])); + let mut x304: u64 = 0; + let mut x305: u64 = 0; + fiat_bp384_mulx_u64(&mut x304, &mut x305, x4, (arg1[3])); + let mut x306: u64 = 0; + let mut x307: u64 = 0; + fiat_bp384_mulx_u64(&mut x306, &mut x307, x4, (arg1[2])); + let mut x308: u64 = 0; + let mut x309: u64 = 0; + fiat_bp384_mulx_u64(&mut x308, &mut x309, x4, (arg1[1])); + let mut x310: u64 = 0; + let mut x311: u64 = 0; + fiat_bp384_mulx_u64(&mut x310, &mut x311, x4, (arg1[0])); + let mut x312: u64 = 0; + let mut x313: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x312, &mut x313, 0x0, x311, x308); + let mut x314: u64 = 0; + let mut x315: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x314, &mut x315, x313, x309, x306); + let mut x316: u64 = 0; + let mut x317: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x316, &mut x317, x315, x307, x304); + let mut x318: u64 = 0; + let mut x319: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x318, &mut x319, x317, x305, x302); + let mut x320: u64 = 0; + let mut x321: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x320, &mut x321, x319, x303, x300); + let x322: u64 = ((x321 as u64) + x301); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x323, &mut x324, 0x0, x287, x310); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x325, &mut x326, x324, x289, x312); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x327, &mut x328, x326, x291, x314); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x329, &mut x330, x328, x293, x316); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x331, &mut x332, x330, x295, x318); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x333, &mut x334, x332, x297, x320); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x335, &mut x336, x334, x299, x322); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp384_mulx_u64(&mut x337, &mut x338, x323, 0x9a6ea96cea9ec825); + let mut x339: u64 = 0; + let mut x340: u64 = 0; + fiat_bp384_mulx_u64(&mut x339, &mut x340, x337, 0x8cb91e82a3386d28); + let mut x341: u64 = 0; + let mut x342: u64 = 0; + fiat_bp384_mulx_u64(&mut x341, &mut x342, x337, 0xf5d6f7e50e641df); + let mut x343: u64 = 0; + let mut x344: u64 = 0; + fiat_bp384_mulx_u64(&mut x343, &mut x344, x337, 0x152f7109ed5456b4); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_mulx_u64(&mut x345, &mut x346, x337, 0x12b1da197fb71123); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_mulx_u64(&mut x347, &mut x348, x337, 0xacd3a729901d1a71); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_mulx_u64(&mut x349, &mut x350, x337, 0x874700133107ec53); + let mut x351: u64 = 0; + let mut x352: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x351, &mut x352, 0x0, x350, x347); + let mut x353: u64 = 0; + let mut x354: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x353, &mut x354, x352, x348, x345); + let mut x355: u64 = 0; + let mut x356: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x355, &mut x356, x354, x346, x343); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x357, &mut x358, x356, x344, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x359, &mut x360, x358, x342, x339); + let x361: u64 = ((x360 as u64) + x340); + let mut x362: u64 = 0; + let mut x363: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x362, &mut x363, 0x0, x323, x349); + let mut x364: u64 = 0; + let mut x365: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x364, &mut x365, x363, x325, x351); + let mut x366: u64 = 0; + let mut x367: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x366, &mut x367, x365, x327, x353); + let mut x368: u64 = 0; + let mut x369: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x368, &mut x369, x367, x329, x355); + let mut x370: u64 = 0; + let mut x371: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x370, &mut x371, x369, x331, x357); + let mut x372: u64 = 0; + let mut x373: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x372, &mut x373, x371, x333, x359); + let mut x374: u64 = 0; + let mut x375: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x374, &mut x375, x373, x335, x361); + let x376: u64 = ((x375 as u64) + (x336 as u64)); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp384_mulx_u64(&mut x377, &mut x378, x5, (arg1[5])); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_mulx_u64(&mut x379, &mut x380, x5, (arg1[4])); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_mulx_u64(&mut x381, &mut x382, x5, (arg1[3])); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_mulx_u64(&mut x383, &mut x384, x5, (arg1[2])); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_mulx_u64(&mut x385, &mut x386, x5, (arg1[1])); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_mulx_u64(&mut x387, &mut x388, x5, (arg1[0])); + let mut x389: u64 = 0; + let mut x390: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x389, &mut x390, 0x0, x388, x385); + let mut x391: u64 = 0; + let mut x392: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x391, &mut x392, x390, x386, x383); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x393, &mut x394, x392, x384, x381); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x395, &mut x396, x394, x382, x379); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x397, &mut x398, x396, x380, x377); + let x399: u64 = ((x398 as u64) + x378); + let mut x400: u64 = 0; + let mut x401: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x400, &mut x401, 0x0, x364, x387); + let mut x402: u64 = 0; + let mut x403: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x402, &mut x403, x401, x366, x389); + let mut x404: u64 = 0; + let mut x405: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x404, &mut x405, x403, x368, x391); + let mut x406: u64 = 0; + let mut x407: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x406, &mut x407, x405, x370, x393); + let mut x408: u64 = 0; + let mut x409: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x408, &mut x409, x407, x372, x395); + let mut x410: u64 = 0; + let mut x411: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x410, &mut x411, x409, x374, x397); + let mut x412: u64 = 0; + let mut x413: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x412, &mut x413, x411, x376, x399); + let mut x414: u64 = 0; + let mut x415: u64 = 0; + fiat_bp384_mulx_u64(&mut x414, &mut x415, x400, 0x9a6ea96cea9ec825); + let mut x416: u64 = 0; + let mut x417: u64 = 0; + fiat_bp384_mulx_u64(&mut x416, &mut x417, x414, 0x8cb91e82a3386d28); + let mut x418: u64 = 0; + let mut x419: u64 = 0; + fiat_bp384_mulx_u64(&mut x418, &mut x419, x414, 0xf5d6f7e50e641df); + let mut x420: u64 = 0; + let mut x421: u64 = 0; + fiat_bp384_mulx_u64(&mut x420, &mut x421, x414, 0x152f7109ed5456b4); + let mut x422: u64 = 0; + let mut x423: u64 = 0; + fiat_bp384_mulx_u64(&mut x422, &mut x423, x414, 0x12b1da197fb71123); + let mut x424: u64 = 0; + let mut x425: u64 = 0; + fiat_bp384_mulx_u64(&mut x424, &mut x425, x414, 0xacd3a729901d1a71); + let mut x426: u64 = 0; + let mut x427: u64 = 0; + fiat_bp384_mulx_u64(&mut x426, &mut x427, x414, 0x874700133107ec53); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x428, &mut x429, 0x0, x427, x424); + let mut x430: u64 = 0; + let mut x431: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x430, &mut x431, x429, x425, x422); + let mut x432: u64 = 0; + let mut x433: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x432, &mut x433, x431, x423, x420); + let mut x434: u64 = 0; + let mut x435: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x434, &mut x435, x433, x421, x418); + let mut x436: u64 = 0; + let mut x437: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x436, &mut x437, x435, x419, x416); + let x438: u64 = ((x437 as u64) + x417); + let mut x439: u64 = 0; + let mut x440: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x439, &mut x440, 0x0, x400, x426); + let mut x441: u64 = 0; + let mut x442: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x441, &mut x442, x440, x402, x428); + let mut x443: u64 = 0; + let mut x444: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x443, &mut x444, x442, x404, x430); + let mut x445: u64 = 0; + let mut x446: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x445, &mut x446, x444, x406, x432); + let mut x447: u64 = 0; + let mut x448: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x447, &mut x448, x446, x408, x434); + let mut x449: u64 = 0; + let mut x450: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x449, &mut x450, x448, x410, x436); + let mut x451: u64 = 0; + let mut x452: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x451, &mut x452, x450, x412, x438); + let x453: u64 = ((x452 as u64) + (x413 as u64)); + let mut x454: u64 = 0; + let mut x455: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x454, &mut x455, 0x0, x441, 0x874700133107ec53); + let mut x456: u64 = 0; + let mut x457: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x456, &mut x457, x455, x443, 0xacd3a729901d1a71); + let mut x458: u64 = 0; + let mut x459: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x458, &mut x459, x457, x445, 0x12b1da197fb71123); + let mut x460: u64 = 0; + let mut x461: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x460, &mut x461, x459, x447, 0x152f7109ed5456b4); + let mut x462: u64 = 0; + let mut x463: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x462, &mut x463, x461, x449, 0xf5d6f7e50e641df); + let mut x464: u64 = 0; + let mut x465: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x464, &mut x465, x463, x451, 0x8cb91e82a3386d28); + let mut x466: u64 = 0; + let mut x467: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x466, &mut x467, x465, x453, (0x0 as u64)); + let mut x468: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x468, x467, x454, x441); + let mut x469: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x469, x467, x456, x443); + let mut x470: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x470, x467, x458, x445); + let mut x471: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x471, x467, x460, x447); + let mut x472: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x472, x467, x462, x449); + let mut x473: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x473, x467, x464, x451); + out1[0] = x468; + out1[1] = x469; + out1[2] = x470; + out1[3] = x471; + out1[4] = x472; + out1[5] = x473; +} +/// The function fiat_bp384_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_add( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x13, &mut x14, 0x0, x1, 0x874700133107ec53); + let mut x15: u64 = 0; + let mut x16: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x15, &mut x16, x14, x3, 0xacd3a729901d1a71); + let mut x17: u64 = 0; + let mut x18: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x17, &mut x18, x16, x5, 0x12b1da197fb71123); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x19, &mut x20, x18, x7, 0x152f7109ed5456b4); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x21, &mut x22, x20, x9, 0xf5d6f7e50e641df); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x23, &mut x24, x22, x11, 0x8cb91e82a3386d28); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x25, &mut x26, x24, (x12 as u64), (0x0 as u64)); + let mut x27: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x27, x26, x13, x1); + let mut x28: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x28, x26, x15, x3); + let mut x29: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x29, x26, x17, x5); + let mut x30: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x30, x26, x19, x7); + let mut x31: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x31, x26, x21, x9); + let mut x32: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x32, x26, x23, x11); + out1[0] = x27; + out1[1] = x28; + out1[2] = x29; + out1[3] = x30; + out1[4] = x31; + out1[5] = x32; +} +/// The function fiat_bp384_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_sub( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, + arg2: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x13, x12, (0x0 as u64), 0xffffffffffffffff); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x14, &mut x15, 0x0, x1, (x13 & 0x874700133107ec53)); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x16, &mut x17, x15, x3, (x13 & 0xacd3a729901d1a71)); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x18, &mut x19, x17, x5, (x13 & 0x12b1da197fb71123)); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x20, &mut x21, x19, x7, (x13 & 0x152f7109ed5456b4)); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x22, &mut x23, x21, x9, (x13 & 0xf5d6f7e50e641df)); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x24, &mut x25, x23, x11, (x13 & 0x8cb91e82a3386d28)); + out1[0] = x14; + out1[1] = x16; + out1[2] = x18; + out1[3] = x20; + out1[4] = x22; + out1[5] = x24; +} +/// The function fiat_bp384_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_opp( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); + let mut x13: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x13, x12, (0x0 as u64), 0xffffffffffffffff); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x14, &mut x15, 0x0, x1, (x13 & 0x874700133107ec53)); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x16, &mut x17, x15, x3, (x13 & 0xacd3a729901d1a71)); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x18, &mut x19, x17, x5, (x13 & 0x12b1da197fb71123)); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x20, &mut x21, x19, x7, (x13 & 0x152f7109ed5456b4)); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x22, &mut x23, x21, x9, (x13 & 0xf5d6f7e50e641df)); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x24, &mut x25, x23, x11, (x13 & 0x8cb91e82a3386d28)); + out1[0] = x14; + out1[1] = x16; + out1[2] = x18; + out1[3] = x20; + out1[4] = x22; + out1[5] = x24; +} +/// The function fiat_bp384_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^64)⁻¹ mod m)^6) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_from_montgomery( + out1: &mut fiat_bp384_non_montgomery_domain_field_element, + arg1: &fiat_bp384_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[0]); + let mut x2: u64 = 0; + let mut x3: u64 = 0; + fiat_bp384_mulx_u64(&mut x2, &mut x3, x1, 0x9a6ea96cea9ec825); + let mut x4: u64 = 0; + let mut x5: u64 = 0; + fiat_bp384_mulx_u64(&mut x4, &mut x5, x2, 0x8cb91e82a3386d28); + let mut x6: u64 = 0; + let mut x7: u64 = 0; + fiat_bp384_mulx_u64(&mut x6, &mut x7, x2, 0xf5d6f7e50e641df); + let mut x8: u64 = 0; + let mut x9: u64 = 0; + fiat_bp384_mulx_u64(&mut x8, &mut x9, x2, 0x152f7109ed5456b4); + let mut x10: u64 = 0; + let mut x11: u64 = 0; + fiat_bp384_mulx_u64(&mut x10, &mut x11, x2, 0x12b1da197fb71123); + let mut x12: u64 = 0; + let mut x13: u64 = 0; + fiat_bp384_mulx_u64(&mut x12, &mut x13, x2, 0xacd3a729901d1a71); + let mut x14: u64 = 0; + let mut x15: u64 = 0; + fiat_bp384_mulx_u64(&mut x14, &mut x15, x2, 0x874700133107ec53); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x16, &mut x17, 0x0, x15, x12); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x18, &mut x19, x17, x13, x10); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x20, &mut x21, x19, x11, x8); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x22, &mut x23, x21, x9, x6); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x24, &mut x25, x23, x7, x4); + let mut x26: u64 = 0; + let mut x27: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x26, &mut x27, 0x0, x1, x14); + let mut x28: u64 = 0; + let mut x29: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), x16); + let mut x30: u64 = 0; + let mut x31: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), x18); + let mut x32: u64 = 0; + let mut x33: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), x20); + let mut x34: u64 = 0; + let mut x35: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x34, &mut x35, x33, (0x0 as u64), x22); + let mut x36: u64 = 0; + let mut x37: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x24); + let mut x38: u64 = 0; + let mut x39: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x38, &mut x39, 0x0, x28, (arg1[1])); + let mut x40: u64 = 0; + let mut x41: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x40, &mut x41, x39, x30, (0x0 as u64)); + let mut x42: u64 = 0; + let mut x43: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x42, &mut x43, x41, x32, (0x0 as u64)); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x44, &mut x45, x43, x34, (0x0 as u64)); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x46, &mut x47, x45, x36, (0x0 as u64)); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp384_mulx_u64(&mut x48, &mut x49, x38, 0x9a6ea96cea9ec825); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp384_mulx_u64(&mut x50, &mut x51, x48, 0x8cb91e82a3386d28); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp384_mulx_u64(&mut x52, &mut x53, x48, 0xf5d6f7e50e641df); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp384_mulx_u64(&mut x54, &mut x55, x48, 0x152f7109ed5456b4); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp384_mulx_u64(&mut x56, &mut x57, x48, 0x12b1da197fb71123); + let mut x58: u64 = 0; + let mut x59: u64 = 0; + fiat_bp384_mulx_u64(&mut x58, &mut x59, x48, 0xacd3a729901d1a71); + let mut x60: u64 = 0; + let mut x61: u64 = 0; + fiat_bp384_mulx_u64(&mut x60, &mut x61, x48, 0x874700133107ec53); + let mut x62: u64 = 0; + let mut x63: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x62, &mut x63, 0x0, x61, x58); + let mut x64: u64 = 0; + let mut x65: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x64, &mut x65, x63, x59, x56); + let mut x66: u64 = 0; + let mut x67: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x66, &mut x67, x65, x57, x54); + let mut x68: u64 = 0; + let mut x69: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x68, &mut x69, x67, x55, x52); + let mut x70: u64 = 0; + let mut x71: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x70, &mut x71, x69, x53, x50); + let mut x72: u64 = 0; + let mut x73: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x72, &mut x73, 0x0, x38, x60); + let mut x74: u64 = 0; + let mut x75: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x74, &mut x75, x73, x40, x62); + let mut x76: u64 = 0; + let mut x77: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x76, &mut x77, x75, x42, x64); + let mut x78: u64 = 0; + let mut x79: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x78, &mut x79, x77, x44, x66); + let mut x80: u64 = 0; + let mut x81: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x80, &mut x81, x79, x46, x68); + let mut x82: u64 = 0; + let mut x83: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x82, + &mut x83, + x81, + ((x47 as u64) + ((x37 as u64) + ((x25 as u64) + x5))), + x70, + ); + let mut x84: u64 = 0; + let mut x85: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x84, &mut x85, 0x0, x74, (arg1[2])); + let mut x86: u64 = 0; + let mut x87: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x86, &mut x87, x85, x76, (0x0 as u64)); + let mut x88: u64 = 0; + let mut x89: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x88, &mut x89, x87, x78, (0x0 as u64)); + let mut x90: u64 = 0; + let mut x91: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x90, &mut x91, x89, x80, (0x0 as u64)); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x92, &mut x93, x91, x82, (0x0 as u64)); + let mut x94: u64 = 0; + let mut x95: u64 = 0; + fiat_bp384_mulx_u64(&mut x94, &mut x95, x84, 0x9a6ea96cea9ec825); + let mut x96: u64 = 0; + let mut x97: u64 = 0; + fiat_bp384_mulx_u64(&mut x96, &mut x97, x94, 0x8cb91e82a3386d28); + let mut x98: u64 = 0; + let mut x99: u64 = 0; + fiat_bp384_mulx_u64(&mut x98, &mut x99, x94, 0xf5d6f7e50e641df); + let mut x100: u64 = 0; + let mut x101: u64 = 0; + fiat_bp384_mulx_u64(&mut x100, &mut x101, x94, 0x152f7109ed5456b4); + let mut x102: u64 = 0; + let mut x103: u64 = 0; + fiat_bp384_mulx_u64(&mut x102, &mut x103, x94, 0x12b1da197fb71123); + let mut x104: u64 = 0; + let mut x105: u64 = 0; + fiat_bp384_mulx_u64(&mut x104, &mut x105, x94, 0xacd3a729901d1a71); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_mulx_u64(&mut x106, &mut x107, x94, 0x874700133107ec53); + let mut x108: u64 = 0; + let mut x109: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x108, &mut x109, 0x0, x107, x104); + let mut x110: u64 = 0; + let mut x111: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x110, &mut x111, x109, x105, x102); + let mut x112: u64 = 0; + let mut x113: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x112, &mut x113, x111, x103, x100); + let mut x114: u64 = 0; + let mut x115: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x114, &mut x115, x113, x101, x98); + let mut x116: u64 = 0; + let mut x117: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x116, &mut x117, x115, x99, x96); + let mut x118: u64 = 0; + let mut x119: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x118, &mut x119, 0x0, x84, x106); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x120, &mut x121, x119, x86, x108); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x122, &mut x123, x121, x88, x110); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x124, &mut x125, x123, x90, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x126, &mut x127, x125, x92, x114); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x128, + &mut x129, + x127, + ((x93 as u64) + ((x83 as u64) + ((x71 as u64) + x51))), + x116, + ); + let mut x130: u64 = 0; + let mut x131: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x130, &mut x131, 0x0, x120, (arg1[3])); + let mut x132: u64 = 0; + let mut x133: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x132, &mut x133, x131, x122, (0x0 as u64)); + let mut x134: u64 = 0; + let mut x135: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x134, &mut x135, x133, x124, (0x0 as u64)); + let mut x136: u64 = 0; + let mut x137: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x136, &mut x137, x135, x126, (0x0 as u64)); + let mut x138: u64 = 0; + let mut x139: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x138, &mut x139, x137, x128, (0x0 as u64)); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp384_mulx_u64(&mut x140, &mut x141, x130, 0x9a6ea96cea9ec825); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp384_mulx_u64(&mut x142, &mut x143, x140, 0x8cb91e82a3386d28); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp384_mulx_u64(&mut x144, &mut x145, x140, 0xf5d6f7e50e641df); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_mulx_u64(&mut x146, &mut x147, x140, 0x152f7109ed5456b4); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_mulx_u64(&mut x148, &mut x149, x140, 0x12b1da197fb71123); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_mulx_u64(&mut x150, &mut x151, x140, 0xacd3a729901d1a71); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_mulx_u64(&mut x152, &mut x153, x140, 0x874700133107ec53); + let mut x154: u64 = 0; + let mut x155: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x154, &mut x155, 0x0, x153, x150); + let mut x156: u64 = 0; + let mut x157: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x156, &mut x157, x155, x151, x148); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x158, &mut x159, x157, x149, x146); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x160, &mut x161, x159, x147, x144); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x162, &mut x163, x161, x145, x142); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x164, &mut x165, 0x0, x130, x152); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x166, &mut x167, x165, x132, x154); + let mut x168: u64 = 0; + let mut x169: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x168, &mut x169, x167, x134, x156); + let mut x170: u64 = 0; + let mut x171: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x170, &mut x171, x169, x136, x158); + let mut x172: u64 = 0; + let mut x173: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x172, &mut x173, x171, x138, x160); + let mut x174: u64 = 0; + let mut x175: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x174, + &mut x175, + x173, + ((x139 as u64) + ((x129 as u64) + ((x117 as u64) + x97))), + x162, + ); + let mut x176: u64 = 0; + let mut x177: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x176, &mut x177, 0x0, x166, (arg1[4])); + let mut x178: u64 = 0; + let mut x179: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x178, &mut x179, x177, x168, (0x0 as u64)); + let mut x180: u64 = 0; + let mut x181: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x180, &mut x181, x179, x170, (0x0 as u64)); + let mut x182: u64 = 0; + let mut x183: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x182, &mut x183, x181, x172, (0x0 as u64)); + let mut x184: u64 = 0; + let mut x185: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x184, &mut x185, x183, x174, (0x0 as u64)); + let mut x186: u64 = 0; + let mut x187: u64 = 0; + fiat_bp384_mulx_u64(&mut x186, &mut x187, x176, 0x9a6ea96cea9ec825); + let mut x188: u64 = 0; + let mut x189: u64 = 0; + fiat_bp384_mulx_u64(&mut x188, &mut x189, x186, 0x8cb91e82a3386d28); + let mut x190: u64 = 0; + let mut x191: u64 = 0; + fiat_bp384_mulx_u64(&mut x190, &mut x191, x186, 0xf5d6f7e50e641df); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp384_mulx_u64(&mut x192, &mut x193, x186, 0x152f7109ed5456b4); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp384_mulx_u64(&mut x194, &mut x195, x186, 0x12b1da197fb71123); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp384_mulx_u64(&mut x196, &mut x197, x186, 0xacd3a729901d1a71); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp384_mulx_u64(&mut x198, &mut x199, x186, 0x874700133107ec53); + let mut x200: u64 = 0; + let mut x201: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x200, &mut x201, 0x0, x199, x196); + let mut x202: u64 = 0; + let mut x203: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x202, &mut x203, x201, x197, x194); + let mut x204: u64 = 0; + let mut x205: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x204, &mut x205, x203, x195, x192); + let mut x206: u64 = 0; + let mut x207: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x206, &mut x207, x205, x193, x190); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x208, &mut x209, x207, x191, x188); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x210, &mut x211, 0x0, x176, x198); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x212, &mut x213, x211, x178, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x214, &mut x215, x213, x180, x202); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x216, &mut x217, x215, x182, x204); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x218, &mut x219, x217, x184, x206); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x220, + &mut x221, + x219, + ((x185 as u64) + ((x175 as u64) + ((x163 as u64) + x143))), + x208, + ); + let mut x222: u64 = 0; + let mut x223: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x222, &mut x223, 0x0, x212, (arg1[5])); + let mut x224: u64 = 0; + let mut x225: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x224, &mut x225, x223, x214, (0x0 as u64)); + let mut x226: u64 = 0; + let mut x227: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x226, &mut x227, x225, x216, (0x0 as u64)); + let mut x228: u64 = 0; + let mut x229: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x228, &mut x229, x227, x218, (0x0 as u64)); + let mut x230: u64 = 0; + let mut x231: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x230, &mut x231, x229, x220, (0x0 as u64)); + let mut x232: u64 = 0; + let mut x233: u64 = 0; + fiat_bp384_mulx_u64(&mut x232, &mut x233, x222, 0x9a6ea96cea9ec825); + let mut x234: u64 = 0; + let mut x235: u64 = 0; + fiat_bp384_mulx_u64(&mut x234, &mut x235, x232, 0x8cb91e82a3386d28); + let mut x236: u64 = 0; + let mut x237: u64 = 0; + fiat_bp384_mulx_u64(&mut x236, &mut x237, x232, 0xf5d6f7e50e641df); + let mut x238: u64 = 0; + let mut x239: u64 = 0; + fiat_bp384_mulx_u64(&mut x238, &mut x239, x232, 0x152f7109ed5456b4); + let mut x240: u64 = 0; + let mut x241: u64 = 0; + fiat_bp384_mulx_u64(&mut x240, &mut x241, x232, 0x12b1da197fb71123); + let mut x242: u64 = 0; + let mut x243: u64 = 0; + fiat_bp384_mulx_u64(&mut x242, &mut x243, x232, 0xacd3a729901d1a71); + let mut x244: u64 = 0; + let mut x245: u64 = 0; + fiat_bp384_mulx_u64(&mut x244, &mut x245, x232, 0x874700133107ec53); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x246, &mut x247, 0x0, x245, x242); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x248, &mut x249, x247, x243, x240); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x250, &mut x251, x249, x241, x238); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x252, &mut x253, x251, x239, x236); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x254, &mut x255, x253, x237, x234); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x256, &mut x257, 0x0, x222, x244); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x258, &mut x259, x257, x224, x246); + let mut x260: u64 = 0; + let mut x261: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x260, &mut x261, x259, x226, x248); + let mut x262: u64 = 0; + let mut x263: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x262, &mut x263, x261, x228, x250); + let mut x264: u64 = 0; + let mut x265: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x264, &mut x265, x263, x230, x252); + let mut x266: u64 = 0; + let mut x267: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x266, + &mut x267, + x265, + ((x231 as u64) + ((x221 as u64) + ((x209 as u64) + x189))), + x254, + ); + let x268: u64 = ((x267 as u64) + ((x255 as u64) + x235)); + let mut x269: u64 = 0; + let mut x270: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x269, &mut x270, 0x0, x258, 0x874700133107ec53); + let mut x271: u64 = 0; + let mut x272: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x271, &mut x272, x270, x260, 0xacd3a729901d1a71); + let mut x273: u64 = 0; + let mut x274: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x273, &mut x274, x272, x262, 0x12b1da197fb71123); + let mut x275: u64 = 0; + let mut x276: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x275, &mut x276, x274, x264, 0x152f7109ed5456b4); + let mut x277: u64 = 0; + let mut x278: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x277, &mut x278, x276, x266, 0xf5d6f7e50e641df); + let mut x279: u64 = 0; + let mut x280: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x279, &mut x280, x278, x268, 0x8cb91e82a3386d28); + let mut x281: u64 = 0; + let mut x282: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x281, &mut x282, x280, (0x0 as u64), (0x0 as u64)); + let mut x283: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x283, x282, x269, x258); + let mut x284: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x284, x282, x271, x260); + let mut x285: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x285, x282, x273, x262); + let mut x286: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x286, x282, x275, x264); + let mut x287: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x287, x282, x277, x266); + let mut x288: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x288, x282, x279, x268); + out1[0] = x283; + out1[1] = x284; + out1[2] = x285; + out1[3] = x286; + out1[4] = x287; + out1[5] = x288; +} +/// The function fiat_bp384_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_to_montgomery( + out1: &mut fiat_bp384_montgomery_domain_field_element, + arg1: &fiat_bp384_non_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_mulx_u64(&mut x7, &mut x8, x6, 0x36bf6883178df842); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_mulx_u64(&mut x9, &mut x10, x6, 0xd5c6ef3ba57e052c); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_mulx_u64(&mut x11, &mut x12, x6, 0x621401919918d5af); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_mulx_u64(&mut x13, &mut x14, x6, 0x8e28f99cc9940899); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_mulx_u64(&mut x15, &mut x16, x6, 0x535283343d7fd965); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_mulx_u64(&mut x17, &mut x18, x6, 0x87cefff40b64bde); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let mut x29: u64 = 0; + let mut x30: u64 = 0; + fiat_bp384_mulx_u64(&mut x29, &mut x30, x17, 0x9a6ea96cea9ec825); + let mut x31: u64 = 0; + let mut x32: u64 = 0; + fiat_bp384_mulx_u64(&mut x31, &mut x32, x29, 0x8cb91e82a3386d28); + let mut x33: u64 = 0; + let mut x34: u64 = 0; + fiat_bp384_mulx_u64(&mut x33, &mut x34, x29, 0xf5d6f7e50e641df); + let mut x35: u64 = 0; + let mut x36: u64 = 0; + fiat_bp384_mulx_u64(&mut x35, &mut x36, x29, 0x152f7109ed5456b4); + let mut x37: u64 = 0; + let mut x38: u64 = 0; + fiat_bp384_mulx_u64(&mut x37, &mut x38, x29, 0x12b1da197fb71123); + let mut x39: u64 = 0; + let mut x40: u64 = 0; + fiat_bp384_mulx_u64(&mut x39, &mut x40, x29, 0xacd3a729901d1a71); + let mut x41: u64 = 0; + let mut x42: u64 = 0; + fiat_bp384_mulx_u64(&mut x41, &mut x42, x29, 0x874700133107ec53); + let mut x43: u64 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x43, &mut x44, 0x0, x42, x39); + let mut x45: u64 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x45, &mut x46, x44, x40, x37); + let mut x47: u64 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x47, &mut x48, x46, x38, x35); + let mut x49: u64 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x49, &mut x50, x48, x36, x33); + let mut x51: u64 = 0; + let mut x52: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x51, &mut x52, x50, x34, x31); + let mut x53: u64 = 0; + let mut x54: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x53, &mut x54, 0x0, x17, x41); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x55, &mut x56, x54, x19, x43); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x57, &mut x58, x56, x21, x45); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x59, &mut x60, x58, x23, x47); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x61, &mut x62, x60, x25, x49); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x63, &mut x64, x62, x27, x51); + let mut x65: u64 = 0; + let mut x66: u64 = 0; + fiat_bp384_mulx_u64(&mut x65, &mut x66, x1, 0x36bf6883178df842); + let mut x67: u64 = 0; + let mut x68: u64 = 0; + fiat_bp384_mulx_u64(&mut x67, &mut x68, x1, 0xd5c6ef3ba57e052c); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_mulx_u64(&mut x69, &mut x70, x1, 0x621401919918d5af); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_mulx_u64(&mut x71, &mut x72, x1, 0x8e28f99cc9940899); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_mulx_u64(&mut x73, &mut x74, x1, 0x535283343d7fd965); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_mulx_u64(&mut x75, &mut x76, x1, 0x87cefff40b64bde); + let mut x77: u64 = 0; + let mut x78: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x77, &mut x78, 0x0, x76, x73); + let mut x79: u64 = 0; + let mut x80: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x79, &mut x80, x78, x74, x71); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x81, &mut x82, x80, x72, x69); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x83, &mut x84, x82, x70, x67); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x85, &mut x86, x84, x68, x65); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x87, &mut x88, 0x0, x55, x75); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x89, &mut x90, x88, x57, x77); + let mut x91: u64 = 0; + let mut x92: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x91, &mut x92, x90, x59, x79); + let mut x93: u64 = 0; + let mut x94: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x93, &mut x94, x92, x61, x81); + let mut x95: u64 = 0; + let mut x96: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x95, &mut x96, x94, x63, x83); + let mut x97: u64 = 0; + let mut x98: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x97, + &mut x98, + x96, + (((x64 as u64) + ((x28 as u64) + x8)) + ((x52 as u64) + x32)), + x85, + ); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp384_mulx_u64(&mut x99, &mut x100, x87, 0x9a6ea96cea9ec825); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp384_mulx_u64(&mut x101, &mut x102, x99, 0x8cb91e82a3386d28); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp384_mulx_u64(&mut x103, &mut x104, x99, 0xf5d6f7e50e641df); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp384_mulx_u64(&mut x105, &mut x106, x99, 0x152f7109ed5456b4); + let mut x107: u64 = 0; + let mut x108: u64 = 0; + fiat_bp384_mulx_u64(&mut x107, &mut x108, x99, 0x12b1da197fb71123); + let mut x109: u64 = 0; + let mut x110: u64 = 0; + fiat_bp384_mulx_u64(&mut x109, &mut x110, x99, 0xacd3a729901d1a71); + let mut x111: u64 = 0; + let mut x112: u64 = 0; + fiat_bp384_mulx_u64(&mut x111, &mut x112, x99, 0x874700133107ec53); + let mut x113: u64 = 0; + let mut x114: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x113, &mut x114, 0x0, x112, x109); + let mut x115: u64 = 0; + let mut x116: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x115, &mut x116, x114, x110, x107); + let mut x117: u64 = 0; + let mut x118: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x117, &mut x118, x116, x108, x105); + let mut x119: u64 = 0; + let mut x120: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x119, &mut x120, x118, x106, x103); + let mut x121: u64 = 0; + let mut x122: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x121, &mut x122, x120, x104, x101); + let mut x123: u64 = 0; + let mut x124: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x123, &mut x124, 0x0, x87, x111); + let mut x125: u64 = 0; + let mut x126: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x125, &mut x126, x124, x89, x113); + let mut x127: u64 = 0; + let mut x128: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x127, &mut x128, x126, x91, x115); + let mut x129: u64 = 0; + let mut x130: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x129, &mut x130, x128, x93, x117); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x131, &mut x132, x130, x95, x119); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x133, &mut x134, x132, x97, x121); + let mut x135: u64 = 0; + let mut x136: u64 = 0; + fiat_bp384_mulx_u64(&mut x135, &mut x136, x2, 0x36bf6883178df842); + let mut x137: u64 = 0; + let mut x138: u64 = 0; + fiat_bp384_mulx_u64(&mut x137, &mut x138, x2, 0xd5c6ef3ba57e052c); + let mut x139: u64 = 0; + let mut x140: u64 = 0; + fiat_bp384_mulx_u64(&mut x139, &mut x140, x2, 0x621401919918d5af); + let mut x141: u64 = 0; + let mut x142: u64 = 0; + fiat_bp384_mulx_u64(&mut x141, &mut x142, x2, 0x8e28f99cc9940899); + let mut x143: u64 = 0; + let mut x144: u64 = 0; + fiat_bp384_mulx_u64(&mut x143, &mut x144, x2, 0x535283343d7fd965); + let mut x145: u64 = 0; + let mut x146: u64 = 0; + fiat_bp384_mulx_u64(&mut x145, &mut x146, x2, 0x87cefff40b64bde); + let mut x147: u64 = 0; + let mut x148: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x147, &mut x148, 0x0, x146, x143); + let mut x149: u64 = 0; + let mut x150: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x149, &mut x150, x148, x144, x141); + let mut x151: u64 = 0; + let mut x152: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x151, &mut x152, x150, x142, x139); + let mut x153: u64 = 0; + let mut x154: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x153, &mut x154, x152, x140, x137); + let mut x155: u64 = 0; + let mut x156: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x155, &mut x156, x154, x138, x135); + let mut x157: u64 = 0; + let mut x158: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x157, &mut x158, 0x0, x125, x145); + let mut x159: u64 = 0; + let mut x160: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x159, &mut x160, x158, x127, x147); + let mut x161: u64 = 0; + let mut x162: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x161, &mut x162, x160, x129, x149); + let mut x163: u64 = 0; + let mut x164: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x163, &mut x164, x162, x131, x151); + let mut x165: u64 = 0; + let mut x166: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x165, &mut x166, x164, x133, x153); + let mut x167: u64 = 0; + let mut x168: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x167, + &mut x168, + x166, + (((x134 as u64) + ((x98 as u64) + ((x86 as u64) + x66))) + ((x122 as u64) + x102)), + x155, + ); + let mut x169: u64 = 0; + let mut x170: u64 = 0; + fiat_bp384_mulx_u64(&mut x169, &mut x170, x157, 0x9a6ea96cea9ec825); + let mut x171: u64 = 0; + let mut x172: u64 = 0; + fiat_bp384_mulx_u64(&mut x171, &mut x172, x169, 0x8cb91e82a3386d28); + let mut x173: u64 = 0; + let mut x174: u64 = 0; + fiat_bp384_mulx_u64(&mut x173, &mut x174, x169, 0xf5d6f7e50e641df); + let mut x175: u64 = 0; + let mut x176: u64 = 0; + fiat_bp384_mulx_u64(&mut x175, &mut x176, x169, 0x152f7109ed5456b4); + let mut x177: u64 = 0; + let mut x178: u64 = 0; + fiat_bp384_mulx_u64(&mut x177, &mut x178, x169, 0x12b1da197fb71123); + let mut x179: u64 = 0; + let mut x180: u64 = 0; + fiat_bp384_mulx_u64(&mut x179, &mut x180, x169, 0xacd3a729901d1a71); + let mut x181: u64 = 0; + let mut x182: u64 = 0; + fiat_bp384_mulx_u64(&mut x181, &mut x182, x169, 0x874700133107ec53); + let mut x183: u64 = 0; + let mut x184: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x183, &mut x184, 0x0, x182, x179); + let mut x185: u64 = 0; + let mut x186: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x185, &mut x186, x184, x180, x177); + let mut x187: u64 = 0; + let mut x188: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x187, &mut x188, x186, x178, x175); + let mut x189: u64 = 0; + let mut x190: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x189, &mut x190, x188, x176, x173); + let mut x191: u64 = 0; + let mut x192: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x191, &mut x192, x190, x174, x171); + let mut x193: u64 = 0; + let mut x194: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x193, &mut x194, 0x0, x157, x181); + let mut x195: u64 = 0; + let mut x196: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x195, &mut x196, x194, x159, x183); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x197, &mut x198, x196, x161, x185); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x199, &mut x200, x198, x163, x187); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x201, &mut x202, x200, x165, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x203, &mut x204, x202, x167, x191); + let mut x205: u64 = 0; + let mut x206: u64 = 0; + fiat_bp384_mulx_u64(&mut x205, &mut x206, x3, 0x36bf6883178df842); + let mut x207: u64 = 0; + let mut x208: u64 = 0; + fiat_bp384_mulx_u64(&mut x207, &mut x208, x3, 0xd5c6ef3ba57e052c); + let mut x209: u64 = 0; + let mut x210: u64 = 0; + fiat_bp384_mulx_u64(&mut x209, &mut x210, x3, 0x621401919918d5af); + let mut x211: u64 = 0; + let mut x212: u64 = 0; + fiat_bp384_mulx_u64(&mut x211, &mut x212, x3, 0x8e28f99cc9940899); + let mut x213: u64 = 0; + let mut x214: u64 = 0; + fiat_bp384_mulx_u64(&mut x213, &mut x214, x3, 0x535283343d7fd965); + let mut x215: u64 = 0; + let mut x216: u64 = 0; + fiat_bp384_mulx_u64(&mut x215, &mut x216, x3, 0x87cefff40b64bde); + let mut x217: u64 = 0; + let mut x218: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x217, &mut x218, 0x0, x216, x213); + let mut x219: u64 = 0; + let mut x220: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x219, &mut x220, x218, x214, x211); + let mut x221: u64 = 0; + let mut x222: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x221, &mut x222, x220, x212, x209); + let mut x223: u64 = 0; + let mut x224: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x223, &mut x224, x222, x210, x207); + let mut x225: u64 = 0; + let mut x226: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x225, &mut x226, x224, x208, x205); + let mut x227: u64 = 0; + let mut x228: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x227, &mut x228, 0x0, x195, x215); + let mut x229: u64 = 0; + let mut x230: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x229, &mut x230, x228, x197, x217); + let mut x231: u64 = 0; + let mut x232: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x231, &mut x232, x230, x199, x219); + let mut x233: u64 = 0; + let mut x234: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x233, &mut x234, x232, x201, x221); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x235, &mut x236, x234, x203, x223); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x237, + &mut x238, + x236, + (((x204 as u64) + ((x168 as u64) + ((x156 as u64) + x136))) + ((x192 as u64) + x172)), + x225, + ); + let mut x239: u64 = 0; + let mut x240: u64 = 0; + fiat_bp384_mulx_u64(&mut x239, &mut x240, x227, 0x9a6ea96cea9ec825); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp384_mulx_u64(&mut x241, &mut x242, x239, 0x8cb91e82a3386d28); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp384_mulx_u64(&mut x243, &mut x244, x239, 0xf5d6f7e50e641df); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp384_mulx_u64(&mut x245, &mut x246, x239, 0x152f7109ed5456b4); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp384_mulx_u64(&mut x247, &mut x248, x239, 0x12b1da197fb71123); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp384_mulx_u64(&mut x249, &mut x250, x239, 0xacd3a729901d1a71); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp384_mulx_u64(&mut x251, &mut x252, x239, 0x874700133107ec53); + let mut x253: u64 = 0; + let mut x254: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x253, &mut x254, 0x0, x252, x249); + let mut x255: u64 = 0; + let mut x256: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x255, &mut x256, x254, x250, x247); + let mut x257: u64 = 0; + let mut x258: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x257, &mut x258, x256, x248, x245); + let mut x259: u64 = 0; + let mut x260: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x259, &mut x260, x258, x246, x243); + let mut x261: u64 = 0; + let mut x262: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x261, &mut x262, x260, x244, x241); + let mut x263: u64 = 0; + let mut x264: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x263, &mut x264, 0x0, x227, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x265, &mut x266, x264, x229, x253); + let mut x267: u64 = 0; + let mut x268: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x267, &mut x268, x266, x231, x255); + let mut x269: u64 = 0; + let mut x270: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x269, &mut x270, x268, x233, x257); + let mut x271: u64 = 0; + let mut x272: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x271, &mut x272, x270, x235, x259); + let mut x273: u64 = 0; + let mut x274: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x273, &mut x274, x272, x237, x261); + let mut x275: u64 = 0; + let mut x276: u64 = 0; + fiat_bp384_mulx_u64(&mut x275, &mut x276, x4, 0x36bf6883178df842); + let mut x277: u64 = 0; + let mut x278: u64 = 0; + fiat_bp384_mulx_u64(&mut x277, &mut x278, x4, 0xd5c6ef3ba57e052c); + let mut x279: u64 = 0; + let mut x280: u64 = 0; + fiat_bp384_mulx_u64(&mut x279, &mut x280, x4, 0x621401919918d5af); + let mut x281: u64 = 0; + let mut x282: u64 = 0; + fiat_bp384_mulx_u64(&mut x281, &mut x282, x4, 0x8e28f99cc9940899); + let mut x283: u64 = 0; + let mut x284: u64 = 0; + fiat_bp384_mulx_u64(&mut x283, &mut x284, x4, 0x535283343d7fd965); + let mut x285: u64 = 0; + let mut x286: u64 = 0; + fiat_bp384_mulx_u64(&mut x285, &mut x286, x4, 0x87cefff40b64bde); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x287, &mut x288, 0x0, x286, x283); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x289, &mut x290, x288, x284, x281); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x291, &mut x292, x290, x282, x279); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x293, &mut x294, x292, x280, x277); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x295, &mut x296, x294, x278, x275); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x297, &mut x298, 0x0, x265, x285); + let mut x299: u64 = 0; + let mut x300: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x299, &mut x300, x298, x267, x287); + let mut x301: u64 = 0; + let mut x302: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x301, &mut x302, x300, x269, x289); + let mut x303: u64 = 0; + let mut x304: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x303, &mut x304, x302, x271, x291); + let mut x305: u64 = 0; + let mut x306: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x305, &mut x306, x304, x273, x293); + let mut x307: u64 = 0; + let mut x308: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x307, + &mut x308, + x306, + (((x274 as u64) + ((x238 as u64) + ((x226 as u64) + x206))) + ((x262 as u64) + x242)), + x295, + ); + let mut x309: u64 = 0; + let mut x310: u64 = 0; + fiat_bp384_mulx_u64(&mut x309, &mut x310, x297, 0x9a6ea96cea9ec825); + let mut x311: u64 = 0; + let mut x312: u64 = 0; + fiat_bp384_mulx_u64(&mut x311, &mut x312, x309, 0x8cb91e82a3386d28); + let mut x313: u64 = 0; + let mut x314: u64 = 0; + fiat_bp384_mulx_u64(&mut x313, &mut x314, x309, 0xf5d6f7e50e641df); + let mut x315: u64 = 0; + let mut x316: u64 = 0; + fiat_bp384_mulx_u64(&mut x315, &mut x316, x309, 0x152f7109ed5456b4); + let mut x317: u64 = 0; + let mut x318: u64 = 0; + fiat_bp384_mulx_u64(&mut x317, &mut x318, x309, 0x12b1da197fb71123); + let mut x319: u64 = 0; + let mut x320: u64 = 0; + fiat_bp384_mulx_u64(&mut x319, &mut x320, x309, 0xacd3a729901d1a71); + let mut x321: u64 = 0; + let mut x322: u64 = 0; + fiat_bp384_mulx_u64(&mut x321, &mut x322, x309, 0x874700133107ec53); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x323, &mut x324, 0x0, x322, x319); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x325, &mut x326, x324, x320, x317); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x327, &mut x328, x326, x318, x315); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x329, &mut x330, x328, x316, x313); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x331, &mut x332, x330, x314, x311); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x333, &mut x334, 0x0, x297, x321); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x335, &mut x336, x334, x299, x323); + let mut x337: u64 = 0; + let mut x338: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x337, &mut x338, x336, x301, x325); + let mut x339: u64 = 0; + let mut x340: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x339, &mut x340, x338, x303, x327); + let mut x341: u64 = 0; + let mut x342: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x341, &mut x342, x340, x305, x329); + let mut x343: u64 = 0; + let mut x344: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x343, &mut x344, x342, x307, x331); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_mulx_u64(&mut x345, &mut x346, x5, 0x36bf6883178df842); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_mulx_u64(&mut x347, &mut x348, x5, 0xd5c6ef3ba57e052c); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_mulx_u64(&mut x349, &mut x350, x5, 0x621401919918d5af); + let mut x351: u64 = 0; + let mut x352: u64 = 0; + fiat_bp384_mulx_u64(&mut x351, &mut x352, x5, 0x8e28f99cc9940899); + let mut x353: u64 = 0; + let mut x354: u64 = 0; + fiat_bp384_mulx_u64(&mut x353, &mut x354, x5, 0x535283343d7fd965); + let mut x355: u64 = 0; + let mut x356: u64 = 0; + fiat_bp384_mulx_u64(&mut x355, &mut x356, x5, 0x87cefff40b64bde); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x357, &mut x358, 0x0, x356, x353); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x359, &mut x360, x358, x354, x351); + let mut x361: u64 = 0; + let mut x362: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x361, &mut x362, x360, x352, x349); + let mut x363: u64 = 0; + let mut x364: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x363, &mut x364, x362, x350, x347); + let mut x365: u64 = 0; + let mut x366: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x365, &mut x366, x364, x348, x345); + let mut x367: u64 = 0; + let mut x368: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x367, &mut x368, 0x0, x335, x355); + let mut x369: u64 = 0; + let mut x370: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x369, &mut x370, x368, x337, x357); + let mut x371: u64 = 0; + let mut x372: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x371, &mut x372, x370, x339, x359); + let mut x373: u64 = 0; + let mut x374: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x373, &mut x374, x372, x341, x361); + let mut x375: u64 = 0; + let mut x376: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x375, &mut x376, x374, x343, x363); + let mut x377: u64 = 0; + let mut x378: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64( + &mut x377, + &mut x378, + x376, + (((x344 as u64) + ((x308 as u64) + ((x296 as u64) + x276))) + ((x332 as u64) + x312)), + x365, + ); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_mulx_u64(&mut x379, &mut x380, x367, 0x9a6ea96cea9ec825); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_mulx_u64(&mut x381, &mut x382, x379, 0x8cb91e82a3386d28); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_mulx_u64(&mut x383, &mut x384, x379, 0xf5d6f7e50e641df); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_mulx_u64(&mut x385, &mut x386, x379, 0x152f7109ed5456b4); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_mulx_u64(&mut x387, &mut x388, x379, 0x12b1da197fb71123); + let mut x389: u64 = 0; + let mut x390: u64 = 0; + fiat_bp384_mulx_u64(&mut x389, &mut x390, x379, 0xacd3a729901d1a71); + let mut x391: u64 = 0; + let mut x392: u64 = 0; + fiat_bp384_mulx_u64(&mut x391, &mut x392, x379, 0x874700133107ec53); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x393, &mut x394, 0x0, x392, x389); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x395, &mut x396, x394, x390, x387); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x397, &mut x398, x396, x388, x385); + let mut x399: u64 = 0; + let mut x400: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x399, &mut x400, x398, x386, x383); + let mut x401: u64 = 0; + let mut x402: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x401, &mut x402, x400, x384, x381); + let mut x403: u64 = 0; + let mut x404: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x403, &mut x404, 0x0, x367, x391); + let mut x405: u64 = 0; + let mut x406: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x405, &mut x406, x404, x369, x393); + let mut x407: u64 = 0; + let mut x408: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x407, &mut x408, x406, x371, x395); + let mut x409: u64 = 0; + let mut x410: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x409, &mut x410, x408, x373, x397); + let mut x411: u64 = 0; + let mut x412: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x411, &mut x412, x410, x375, x399); + let mut x413: u64 = 0; + let mut x414: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x413, &mut x414, x412, x377, x401); + let x415: u64 = + (((x414 as u64) + ((x378 as u64) + ((x366 as u64) + x346))) + ((x402 as u64) + x382)); + let mut x416: u64 = 0; + let mut x417: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x416, &mut x417, 0x0, x405, 0x874700133107ec53); + let mut x418: u64 = 0; + let mut x419: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x418, &mut x419, x417, x407, 0xacd3a729901d1a71); + let mut x420: u64 = 0; + let mut x421: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x420, &mut x421, x419, x409, 0x12b1da197fb71123); + let mut x422: u64 = 0; + let mut x423: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x422, &mut x423, x421, x411, 0x152f7109ed5456b4); + let mut x424: u64 = 0; + let mut x425: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x424, &mut x425, x423, x413, 0xf5d6f7e50e641df); + let mut x426: u64 = 0; + let mut x427: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x426, &mut x427, x425, x415, 0x8cb91e82a3386d28); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x428, &mut x429, x427, (0x0 as u64), (0x0 as u64)); + let mut x430: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x430, x429, x416, x405); + let mut x431: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x431, x429, x418, x407); + let mut x432: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x432, x429, x420, x409); + let mut x433: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x433, x429, x422, x411); + let mut x434: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x434, x429, x424, x413); + let mut x435: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x435, x429, x426, x415); + out1[0] = x430; + out1[1] = x431; + out1[2] = x432; + out1[3] = x433; + out1[4] = x434; + out1[5] = x435; +} +/// The function fiat_bp384_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_nonzero(out1: &mut u64, arg1: &[u64; 6]) { + let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | (arg1[5])))))); + *out1 = x1; +} +/// The function fiat_bp384_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_selectznz( + out1: &mut [u64; 6], + arg1: fiat_bp384_u1, + arg2: &[u64; 6], + arg3: &[u64; 6], +) { + let mut x1: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; +} +/// The function fiat_bp384_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..47] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub const fn fiat_bp384_to_bytes(out1: &mut [u8; 48], arg1: &[u64; 6]) { + let x1: u64 = (arg1[5]); + let x2: u64 = (arg1[4]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[2]); + let x5: u64 = (arg1[1]); + let x6: u64 = (arg1[0]); + let x7: u8 = ((x6 & (0xff as u64)) as u8); + let x8: u64 = (x6 >> 8); + let x9: u8 = ((x8 & (0xff as u64)) as u8); + let x10: u64 = (x8 >> 8); + let x11: u8 = ((x10 & (0xff as u64)) as u8); + let x12: u64 = (x10 >> 8); + let x13: u8 = ((x12 & (0xff as u64)) as u8); + let x14: u64 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u64)) as u8); + let x16: u64 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u64)) as u8); + let x18: u64 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u64)) as u8); + let x20: u8 = ((x18 >> 8) as u8); + let x21: u8 = ((x5 & (0xff as u64)) as u8); + let x22: u64 = (x5 >> 8); + let x23: u8 = ((x22 & (0xff as u64)) as u8); + let x24: u64 = (x22 >> 8); + let x25: u8 = ((x24 & (0xff as u64)) as u8); + let x26: u64 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u64)) as u8); + let x28: u64 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u64)) as u8); + let x30: u64 = (x28 >> 8); + let x31: u8 = ((x30 & (0xff as u64)) as u8); + let x32: u64 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u64)) as u8); + let x34: u8 = ((x32 >> 8) as u8); + let x35: u8 = ((x4 & (0xff as u64)) as u8); + let x36: u64 = (x4 >> 8); + let x37: u8 = ((x36 & (0xff as u64)) as u8); + let x38: u64 = (x36 >> 8); + let x39: u8 = ((x38 & (0xff as u64)) as u8); + let x40: u64 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u64)) as u8); + let x42: u64 = (x40 >> 8); + let x43: u8 = ((x42 & (0xff as u64)) as u8); + let x44: u64 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u64)) as u8); + let x46: u64 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u64)) as u8); + let x48: u8 = ((x46 >> 8) as u8); + let x49: u8 = ((x3 & (0xff as u64)) as u8); + let x50: u64 = (x3 >> 8); + let x51: u8 = ((x50 & (0xff as u64)) as u8); + let x52: u64 = (x50 >> 8); + let x53: u8 = ((x52 & (0xff as u64)) as u8); + let x54: u64 = (x52 >> 8); + let x55: u8 = ((x54 & (0xff as u64)) as u8); + let x56: u64 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u64)) as u8); + let x58: u64 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u64)) as u8); + let x60: u64 = (x58 >> 8); + let x61: u8 = ((x60 & (0xff as u64)) as u8); + let x62: u8 = ((x60 >> 8) as u8); + let x63: u8 = ((x2 & (0xff as u64)) as u8); + let x64: u64 = (x2 >> 8); + let x65: u8 = ((x64 & (0xff as u64)) as u8); + let x66: u64 = (x64 >> 8); + let x67: u8 = ((x66 & (0xff as u64)) as u8); + let x68: u64 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u64)) as u8); + let x70: u64 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u64)) as u8); + let x72: u64 = (x70 >> 8); + let x73: u8 = ((x72 & (0xff as u64)) as u8); + let x74: u64 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u64)) as u8); + let x76: u8 = ((x74 >> 8) as u8); + let x77: u8 = ((x1 & (0xff as u64)) as u8); + let x78: u64 = (x1 >> 8); + let x79: u8 = ((x78 & (0xff as u64)) as u8); + let x80: u64 = (x78 >> 8); + let x81: u8 = ((x80 & (0xff as u64)) as u8); + let x82: u64 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u64)) as u8); + let x84: u64 = (x82 >> 8); + let x85: u8 = ((x84 & (0xff as u64)) as u8); + let x86: u64 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u64)) as u8); + let x88: u64 = (x86 >> 8); + let x89: u8 = ((x88 & (0xff as u64)) as u8); + let x90: u8 = ((x88 >> 8) as u8); + out1[0] = x7; + out1[1] = x9; + out1[2] = x11; + out1[3] = x13; + out1[4] = x15; + out1[5] = x17; + out1[6] = x19; + out1[7] = x20; + out1[8] = x21; + out1[9] = x23; + out1[10] = x25; + out1[11] = x27; + out1[12] = x29; + out1[13] = x31; + out1[14] = x33; + out1[15] = x34; + out1[16] = x35; + out1[17] = x37; + out1[18] = x39; + out1[19] = x41; + out1[20] = x43; + out1[21] = x45; + out1[22] = x47; + out1[23] = x48; + out1[24] = x49; + out1[25] = x51; + out1[26] = x53; + out1[27] = x55; + out1[28] = x57; + out1[29] = x59; + out1[30] = x61; + out1[31] = x62; + out1[32] = x63; + out1[33] = x65; + out1[34] = x67; + out1[35] = x69; + out1[36] = x71; + out1[37] = x73; + out1[38] = x75; + out1[39] = x76; + out1[40] = x77; + out1[41] = x79; + out1[42] = x81; + out1[43] = x83; + out1[44] = x85; + out1[45] = x87; + out1[46] = x89; + out1[47] = x90; +} +/// The function fiat_bp384_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_from_bytes(out1: &mut [u64; 6], arg1: &[u8; 48]) { + let x1: u64 = (((arg1[47]) as u64) << 56); + let x2: u64 = (((arg1[46]) as u64) << 48); + let x3: u64 = (((arg1[45]) as u64) << 40); + let x4: u64 = (((arg1[44]) as u64) << 32); + let x5: u64 = (((arg1[43]) as u64) << 24); + let x6: u64 = (((arg1[42]) as u64) << 16); + let x7: u64 = (((arg1[41]) as u64) << 8); + let x8: u8 = (arg1[40]); + let x9: u64 = (((arg1[39]) as u64) << 56); + let x10: u64 = (((arg1[38]) as u64) << 48); + let x11: u64 = (((arg1[37]) as u64) << 40); + let x12: u64 = (((arg1[36]) as u64) << 32); + let x13: u64 = (((arg1[35]) as u64) << 24); + let x14: u64 = (((arg1[34]) as u64) << 16); + let x15: u64 = (((arg1[33]) as u64) << 8); + let x16: u8 = (arg1[32]); + let x17: u64 = (((arg1[31]) as u64) << 56); + let x18: u64 = (((arg1[30]) as u64) << 48); + let x19: u64 = (((arg1[29]) as u64) << 40); + let x20: u64 = (((arg1[28]) as u64) << 32); + let x21: u64 = (((arg1[27]) as u64) << 24); + let x22: u64 = (((arg1[26]) as u64) << 16); + let x23: u64 = (((arg1[25]) as u64) << 8); + let x24: u8 = (arg1[24]); + let x25: u64 = (((arg1[23]) as u64) << 56); + let x26: u64 = (((arg1[22]) as u64) << 48); + let x27: u64 = (((arg1[21]) as u64) << 40); + let x28: u64 = (((arg1[20]) as u64) << 32); + let x29: u64 = (((arg1[19]) as u64) << 24); + let x30: u64 = (((arg1[18]) as u64) << 16); + let x31: u64 = (((arg1[17]) as u64) << 8); + let x32: u8 = (arg1[16]); + let x33: u64 = (((arg1[15]) as u64) << 56); + let x34: u64 = (((arg1[14]) as u64) << 48); + let x35: u64 = (((arg1[13]) as u64) << 40); + let x36: u64 = (((arg1[12]) as u64) << 32); + let x37: u64 = (((arg1[11]) as u64) << 24); + let x38: u64 = (((arg1[10]) as u64) << 16); + let x39: u64 = (((arg1[9]) as u64) << 8); + let x40: u8 = (arg1[8]); + let x41: u64 = (((arg1[7]) as u64) << 56); + let x42: u64 = (((arg1[6]) as u64) << 48); + let x43: u64 = (((arg1[5]) as u64) << 40); + let x44: u64 = (((arg1[4]) as u64) << 32); + let x45: u64 = (((arg1[3]) as u64) << 24); + let x46: u64 = (((arg1[2]) as u64) << 16); + let x47: u64 = (((arg1[1]) as u64) << 8); + let x48: u8 = (arg1[0]); + let x49: u64 = (x47 + (x48 as u64)); + let x50: u64 = (x46 + x49); + let x51: u64 = (x45 + x50); + let x52: u64 = (x44 + x51); + let x53: u64 = (x43 + x52); + let x54: u64 = (x42 + x53); + let x55: u64 = (x41 + x54); + let x56: u64 = (x39 + (x40 as u64)); + let x57: u64 = (x38 + x56); + let x58: u64 = (x37 + x57); + let x59: u64 = (x36 + x58); + let x60: u64 = (x35 + x59); + let x61: u64 = (x34 + x60); + let x62: u64 = (x33 + x61); + let x63: u64 = (x31 + (x32 as u64)); + let x64: u64 = (x30 + x63); + let x65: u64 = (x29 + x64); + let x66: u64 = (x28 + x65); + let x67: u64 = (x27 + x66); + let x68: u64 = (x26 + x67); + let x69: u64 = (x25 + x68); + let x70: u64 = (x23 + (x24 as u64)); + let x71: u64 = (x22 + x70); + let x72: u64 = (x21 + x71); + let x73: u64 = (x20 + x72); + let x74: u64 = (x19 + x73); + let x75: u64 = (x18 + x74); + let x76: u64 = (x17 + x75); + let x77: u64 = (x15 + (x16 as u64)); + let x78: u64 = (x14 + x77); + let x79: u64 = (x13 + x78); + let x80: u64 = (x12 + x79); + let x81: u64 = (x11 + x80); + let x82: u64 = (x10 + x81); + let x83: u64 = (x9 + x82); + let x84: u64 = (x7 + (x8 as u64)); + let x85: u64 = (x6 + x84); + let x86: u64 = (x5 + x85); + let x87: u64 = (x4 + x86); + let x88: u64 = (x3 + x87); + let x89: u64 = (x2 + x88); + let x90: u64 = (x1 + x89); + out1[0] = x55; + out1[1] = x62; + out1[2] = x69; + out1[3] = x76; + out1[4] = x83; + out1[5] = x90; +} +/// The function fiat_bp384_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_set_one(out1: &mut fiat_bp384_montgomery_domain_field_element) { + let out1 = &mut out1.0; + out1[0] = 0x78b8ffeccef813ad; + out1[1] = 0x532c58d66fe2e58e; + out1[2] = 0xed4e25e68048eedc; + out1[3] = 0xead08ef612aba94b; + out1[4] = 0xf0a29081af19be20; + out1[5] = 0x7346e17d5cc792d7; +} +/// The function fiat_bp384_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_msat(out1: &mut [u64; 7]) { + out1[0] = 0x874700133107ec53; + out1[1] = 0xacd3a729901d1a71; + out1[2] = 0x12b1da197fb71123; + out1[3] = 0x152f7109ed5456b4; + out1[4] = 0xf5d6f7e50e641df; + out1[5] = 0x8cb91e82a3386d28; + out1[6] = (0x0 as u64); +} +/// The function fiat_bp384_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_divstep( + out1: &mut u64, + out2: &mut [u64; 7], + out3: &mut [u64; 7], + out4: &mut [u64; 6], + out5: &mut [u64; 6], + arg1: u64, + arg2: &[u64; 7], + arg3: &[u64; 7], + arg4: &[u64; 6], + arg5: &[u64; 6], +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); + let x3: fiat_bp384_u1 = + (((x1 >> 63) as fiat_bp384_u1) & (((arg3[0]) & (0x1 as u64)) as fiat_bp384_u1)); + let mut x4: u64 = 0; + let mut x5: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); + let mut x6: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x6, x3, arg1, x4); + let mut x7: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x14, &mut x15, 0x0, (0x1 as u64), (!(arg2[0]))); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x16, &mut x17, x15, (0x0 as u64), (!(arg2[1]))); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[2]))); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[3]))); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[4]))); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[5]))); + let mut x26: u64 = 0; + let mut x27: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[6]))); + let mut x28: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x28, x3, (arg3[0]), x14); + let mut x29: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x29, x3, (arg3[1]), x16); + let mut x30: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x30, x3, (arg3[2]), x18); + let mut x31: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x31, x3, (arg3[3]), x20); + let mut x32: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x32, x3, (arg3[4]), x22); + let mut x33: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x33, x3, (arg3[5]), x24); + let mut x34: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x34, x3, (arg3[6]), x26); + let mut x35: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x35, x3, (arg4[0]), (arg5[0])); + let mut x36: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x36, x3, (arg4[1]), (arg5[1])); + let mut x37: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x37, x3, (arg4[2]), (arg5[2])); + let mut x38: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x38, x3, (arg4[3]), (arg5[3])); + let mut x39: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x39, x3, (arg4[4]), (arg5[4])); + let mut x40: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x40, x3, (arg4[5]), (arg5[5])); + let mut x41: u64 = 0; + let mut x42: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x41, &mut x42, 0x0, x35, x35); + let mut x43: u64 = 0; + let mut x44: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x43, &mut x44, x42, x36, x36); + let mut x45: u64 = 0; + let mut x46: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x45, &mut x46, x44, x37, x37); + let mut x47: u64 = 0; + let mut x48: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x47, &mut x48, x46, x38, x38); + let mut x49: u64 = 0; + let mut x50: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x49, &mut x50, x48, x39, x39); + let mut x51: u64 = 0; + let mut x52: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x51, &mut x52, x50, x40, x40); + let mut x53: u64 = 0; + let mut x54: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x53, &mut x54, 0x0, x41, 0x874700133107ec53); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x55, &mut x56, x54, x43, 0xacd3a729901d1a71); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x57, &mut x58, x56, x45, 0x12b1da197fb71123); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x59, &mut x60, x58, x47, 0x152f7109ed5456b4); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x61, &mut x62, x60, x49, 0xf5d6f7e50e641df); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x63, &mut x64, x62, x51, 0x8cb91e82a3386d28); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x65, &mut x66, x64, (x52 as u64), (0x0 as u64)); + let x67: u64 = (arg4[5]); + let x68: u64 = (arg4[4]); + let x69: u64 = (arg4[3]); + let x70: u64 = (arg4[2]); + let x71: u64 = (arg4[1]); + let x72: u64 = (arg4[0]); + let mut x73: u64 = 0; + let mut x74: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x73, &mut x74, 0x0, (0x0 as u64), x72); + let mut x75: u64 = 0; + let mut x76: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x75, &mut x76, x74, (0x0 as u64), x71); + let mut x77: u64 = 0; + let mut x78: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x77, &mut x78, x76, (0x0 as u64), x70); + let mut x79: u64 = 0; + let mut x80: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x79, &mut x80, x78, (0x0 as u64), x69); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x81, &mut x82, x80, (0x0 as u64), x68); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x83, &mut x84, x82, (0x0 as u64), x67); + let mut x85: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x85, x84, (0x0 as u64), 0xffffffffffffffff); + let mut x86: u64 = 0; + let mut x87: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x86, &mut x87, 0x0, x73, (x85 & 0x874700133107ec53)); + let mut x88: u64 = 0; + let mut x89: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x88, &mut x89, x87, x75, (x85 & 0xacd3a729901d1a71)); + let mut x90: u64 = 0; + let mut x91: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x90, &mut x91, x89, x77, (x85 & 0x12b1da197fb71123)); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x92, &mut x93, x91, x79, (x85 & 0x152f7109ed5456b4)); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x94, &mut x95, x93, x81, (x85 & 0xf5d6f7e50e641df)); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x96, &mut x97, x95, x83, (x85 & 0x8cb91e82a3386d28)); + let mut x98: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x98, x3, (arg5[0]), x86); + let mut x99: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x99, x3, (arg5[1]), x88); + let mut x100: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x100, x3, (arg5[2]), x90); + let mut x101: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x101, x3, (arg5[3]), x92); + let mut x102: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x102, x3, (arg5[4]), x94); + let mut x103: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x103, x3, (arg5[5]), x96); + let x104: fiat_bp384_u1 = ((x28 & (0x1 as u64)) as fiat_bp384_u1); + let mut x105: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x105, x104, (0x0 as u64), x7); + let mut x106: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x106, x104, (0x0 as u64), x8); + let mut x107: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x107, x104, (0x0 as u64), x9); + let mut x108: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x108, x104, (0x0 as u64), x10); + let mut x109: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x109, x104, (0x0 as u64), x11); + let mut x110: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x110, x104, (0x0 as u64), x12); + let mut x111: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x111, x104, (0x0 as u64), x13); + let mut x112: u64 = 0; + let mut x113: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x112, &mut x113, 0x0, x28, x105); + let mut x114: u64 = 0; + let mut x115: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x114, &mut x115, x113, x29, x106); + let mut x116: u64 = 0; + let mut x117: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x116, &mut x117, x115, x30, x107); + let mut x118: u64 = 0; + let mut x119: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x118, &mut x119, x117, x31, x108); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x120, &mut x121, x119, x32, x109); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x122, &mut x123, x121, x33, x110); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x124, &mut x125, x123, x34, x111); + let mut x126: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x126, x104, (0x0 as u64), x35); + let mut x127: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x127, x104, (0x0 as u64), x36); + let mut x128: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x128, x104, (0x0 as u64), x37); + let mut x129: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x129, x104, (0x0 as u64), x38); + let mut x130: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x130, x104, (0x0 as u64), x39); + let mut x131: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x131, x104, (0x0 as u64), x40); + let mut x132: u64 = 0; + let mut x133: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x132, &mut x133, 0x0, x98, x126); + let mut x134: u64 = 0; + let mut x135: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x134, &mut x135, x133, x99, x127); + let mut x136: u64 = 0; + let mut x137: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x136, &mut x137, x135, x100, x128); + let mut x138: u64 = 0; + let mut x139: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x138, &mut x139, x137, x101, x129); + let mut x140: u64 = 0; + let mut x141: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x140, &mut x141, x139, x102, x130); + let mut x142: u64 = 0; + let mut x143: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x142, &mut x143, x141, x103, x131); + let mut x144: u64 = 0; + let mut x145: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x144, &mut x145, 0x0, x132, 0x874700133107ec53); + let mut x146: u64 = 0; + let mut x147: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x146, &mut x147, x145, x134, 0xacd3a729901d1a71); + let mut x148: u64 = 0; + let mut x149: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x148, &mut x149, x147, x136, 0x12b1da197fb71123); + let mut x150: u64 = 0; + let mut x151: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x150, &mut x151, x149, x138, 0x152f7109ed5456b4); + let mut x152: u64 = 0; + let mut x153: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x152, &mut x153, x151, x140, 0xf5d6f7e50e641df); + let mut x154: u64 = 0; + let mut x155: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x154, &mut x155, x153, x142, 0x8cb91e82a3386d28); + let mut x156: u64 = 0; + let mut x157: fiat_bp384_u1 = 0; + fiat_bp384_subborrowx_u64(&mut x156, &mut x157, x155, (x143 as u64), (0x0 as u64)); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_u1 = 0; + fiat_bp384_addcarryx_u64(&mut x158, &mut x159, 0x0, x6, (0x1 as u64)); + let x160: u64 = ((x112 >> 1) | ((x114 << 63) & 0xffffffffffffffff)); + let x161: u64 = ((x114 >> 1) | ((x116 << 63) & 0xffffffffffffffff)); + let x162: u64 = ((x116 >> 1) | ((x118 << 63) & 0xffffffffffffffff)); + let x163: u64 = ((x118 >> 1) | ((x120 << 63) & 0xffffffffffffffff)); + let x164: u64 = ((x120 >> 1) | ((x122 << 63) & 0xffffffffffffffff)); + let x165: u64 = ((x122 >> 1) | ((x124 << 63) & 0xffffffffffffffff)); + let x166: u64 = ((x124 & 0x8000000000000000) | (x124 >> 1)); + let mut x167: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x167, x66, x53, x41); + let mut x168: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x168, x66, x55, x43); + let mut x169: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x169, x66, x57, x45); + let mut x170: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x170, x66, x59, x47); + let mut x171: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x171, x66, x61, x49); + let mut x172: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x172, x66, x63, x51); + let mut x173: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x173, x157, x144, x132); + let mut x174: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x174, x157, x146, x134); + let mut x175: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x175, x157, x148, x136); + let mut x176: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x176, x157, x150, x138); + let mut x177: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x177, x157, x152, x140); + let mut x178: u64 = 0; + fiat_bp384_cmovznz_u64(&mut x178, x157, x154, x142); + *out1 = x158; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out3[0] = x160; + out3[1] = x161; + out3[2] = x162; + out3[3] = x163; + out3[4] = x164; + out3[5] = x165; + out3[6] = x166; + out4[0] = x167; + out4[1] = x168; + out4[2] = x169; + out4[3] = x170; + out4[4] = x171; + out4[5] = x172; + out5[0] = x173; + out5[1] = x174; + out5[2] = x175; + out5[3] = x176; + out5[4] = x177; + out5[5] = x178; +} +/// The function fiat_bp384_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_divstep_precomp(out1: &mut [u64; 6]) { + out1[0] = 0xed2d6e6e04698d1e; + out1[1] = 0x75c2585c8ebd909; + out1[2] = 0x907583f1a0fa043b; + out1[3] = 0xe68c52395e0013f3; + out1[4] = 0x6834d2fcf6636903; + out1[5] = 0x5d2d70cf63213e3a; +} diff --git a/bp512/src/arithmetic/field/bp512_32.rs b/bp512/src/arithmetic/field/bp512_32.rs new file mode 100644 index 000000000..2c945d3a9 --- /dev/null +++ b/bp512/src/arithmetic/field/bp512_32.rs @@ -0,0 +1,19162 @@ +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512 32 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp512 +//! machine_wordsize = 32 (from "32") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 (from "0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) in +//! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 + +#![allow(unused_parens)] +#![allow(non_camel_case_types)] + +/** fiat_bp512_u1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_u1 = u8; +/** fiat_bp512_i1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_i1 = i8; +/** fiat_bp512_u2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_u2 = u8; +/** fiat_bp512_i2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_i2 = i8; + +/** The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_montgomery_domain_field_element(pub [u32; 16]); + +impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/** The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_non_montgomery_domain_field_element(pub [u32; 16]); + +impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + + +/// The function fiat_bp512_addcarryx_u32 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^32 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_addcarryx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { + let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: fiat_bp512_u1 = ((x1 >> 32) as fiat_bp512_u1); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_subborrowx_u32 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^32 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_subborrowx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { + let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); + let x2: fiat_bp512_i1 = ((x1 >> 32) as fiat_bp512_i1); + let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); + *out1 = x3; + *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); +} + +/// The function fiat_bp512_mulx_u32 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^32 +/// out2 = ⌊arg1 * arg2 / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { + let x1: u64 = ((arg1 as u64) * (arg2 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: u32 = ((x1 >> 32) as u32); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_cmovznz_u32 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { + let x1: fiat_bp512_u1 = (!(!arg1)); + let x2: u32 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i64) & (0xffffffff as i64)) as u32); + let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} + +/// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg2[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg2[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg2[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg2[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg2[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg2[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg2[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg2[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg2[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg2[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg2[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg2[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg2[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg2[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg2[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg2[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg2[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg2[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg2[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg2[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg2[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg2[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg2[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg2[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg2[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg2[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg2[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg2[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg2[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg2[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg2[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg2[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg2[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg2[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg2[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg2[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg2[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg2[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg2[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg2[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg2[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg2[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg2[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg2[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg2[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg2[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg2[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg2[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg2[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg2[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg2[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg2[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg2[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg2[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg2[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg2[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg2[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg2[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg2[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg2[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg2[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg2[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg2[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg2[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg2[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg2[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg2[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg2[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg2[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg2[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg2[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg2[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg2[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg2[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg2[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg2[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg2[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg2[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg2[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg2[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg2[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg2[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg2[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg2[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg2[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg2[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg2[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg2[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg2[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg2[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg2[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg2[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg2[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg2[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg2[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg2[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg2[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg2[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg2[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg2[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg2[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg2[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg2[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg2[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg2[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg2[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg2[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg2[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg2[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg2[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg2[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg2[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg2[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg2[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg2[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg2[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg2[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg2[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg2[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg2[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg2[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg2[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg2[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg2[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg2[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg2[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg2[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg2[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg2[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg2[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg2[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg2[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg2[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg2[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg2[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg2[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg2[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg2[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg2[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg2[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg2[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg2[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg2[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg2[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg2[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg2[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg2[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg2[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg2[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg2[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg2[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg2[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg2[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg2[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg2[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg2[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg2[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg2[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg2[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg2[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg2[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg2[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg2[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg2[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg2[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg2[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg2[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg2[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg2[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg2[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg2[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg2[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg2[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg2[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg2[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg2[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg2[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg2[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg2[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg2[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg2[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg2[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg2[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg2[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg2[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg2[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg2[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg2[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg2[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg2[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg2[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg2[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg2[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg2[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg2[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg2[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg2[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg2[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg2[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg2[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg2[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg2[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg2[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg2[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg2[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg2[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg2[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg2[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg2[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg2[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg2[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg2[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg2[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg2[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg2[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg2[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg2[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg2[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg2[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg2[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg2[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg2[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg2[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg2[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg2[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg2[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg2[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg2[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg2[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg2[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg2[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg2[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg2[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg2[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg2[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg2[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg2[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg2[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg2[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg2[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg2[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg2[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg2[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg2[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg2[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg2[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg2[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg2[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg2[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg2[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg2[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg2[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg2[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg2[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg2[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg2[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; +} + +/// The function fiat_bp512_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg1[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg1[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg1[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg1[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg1[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg1[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg1[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg1[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg1[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg1[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg1[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg1[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg1[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg1[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg1[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg1[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg1[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg1[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg1[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg1[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg1[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg1[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg1[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg1[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg1[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg1[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg1[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg1[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg1[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg1[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg1[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg1[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg1[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg1[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg1[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg1[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg1[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg1[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg1[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg1[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg1[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg1[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg1[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg1[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg1[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg1[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg1[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg1[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg1[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg1[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg1[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg1[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg1[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg1[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg1[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg1[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg1[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg1[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg1[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg1[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg1[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg1[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg1[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg1[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg1[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg1[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg1[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg1[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg1[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg1[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg1[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg1[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg1[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg1[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg1[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg1[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg1[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg1[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg1[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg1[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg1[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg1[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg1[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg1[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg1[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg1[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg1[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg1[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg1[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg1[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg1[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg1[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg1[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg1[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg1[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg1[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg1[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg1[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg1[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg1[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg1[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg1[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg1[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg1[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg1[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg1[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg1[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg1[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg1[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg1[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg1[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg1[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg1[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg1[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg1[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg1[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg1[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg1[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg1[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg1[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg1[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg1[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg1[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg1[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg1[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg1[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg1[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg1[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg1[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg1[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg1[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg1[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg1[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg1[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg1[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg1[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg1[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg1[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg1[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg1[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg1[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg1[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg1[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg1[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg1[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg1[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg1[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg1[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg1[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg1[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg1[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg1[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg1[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg1[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg1[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg1[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg1[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg1[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg1[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg1[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg1[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg1[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg1[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg1[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg1[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg1[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg1[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg1[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg1[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg1[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg1[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg1[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg1[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg1[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg1[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg1[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg1[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg1[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg1[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg1[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg1[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg1[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg1[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg1[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg1[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg1[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg1[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg1[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg1[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg1[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg1[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg1[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg1[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg1[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg1[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg1[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg1[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg1[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg1[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg1[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg1[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg1[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg1[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg1[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg1[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg1[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg1[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg1[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg1[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg1[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg1[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg1[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg1[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg1[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg1[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg1[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg1[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg1[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg1[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg1[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg1[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg1[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg1[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg1[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg1[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg1[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg1[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg1[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg1[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg1[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg1[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg1[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg1[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg1[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg1[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg1[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg1[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg1[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg1[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg1[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg1[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg1[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg1[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg1[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg1[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg1[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg1[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg1[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg1[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg1[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg1[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg1[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg1[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg1[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg1[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg1[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; +} + +/// The function fiat_bp512_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x33, &mut x34, 0x0, x1, 0x583a48f3); + let mut x35: u32 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x35, &mut x36, x34, x3, 0x28aa6056); + let mut x37: u32 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x37, &mut x38, x36, x5, 0x2d82c685); + let mut x39: u32 = 0; + let mut x40: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x39, &mut x40, x38, x7, 0x2881ff2f); + let mut x41: u32 = 0; + let mut x42: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x41, &mut x42, x40, x9, 0xe6a380e6); + let mut x43: u32 = 0; + let mut x44: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x43, &mut x44, x42, x11, 0xaecda12a); + let mut x45: u32 = 0; + let mut x46: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x45, &mut x46, x44, x13, 0x9bc66842); + let mut x47: u32 = 0; + let mut x48: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x47, &mut x48, x46, x15, 0x7d4d9b00); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x49, &mut x50, x48, x17, 0x70330871); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x51, &mut x52, x50, x19, 0xd6639cca); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x53, &mut x54, x52, x21, 0xb3c9d20e); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x55, &mut x56, x54, x23, 0xcb308db3); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x57, &mut x58, x56, x25, 0x33c9fc07); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x59, &mut x60, x58, x27, 0x3fd4e6ae); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x61, &mut x62, x60, x29, 0xdbe9c48b); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x63, &mut x64, x62, x31, 0xaadd9db8); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x65, &mut x66, x64, (x32 as u32), (0x0 as u32)); + let mut x67: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x67, x66, x33, x1); + let mut x68: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x68, x66, x35, x3); + let mut x69: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x69, x66, x37, x5); + let mut x70: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x70, x66, x39, x7); + let mut x71: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x71, x66, x41, x9); + let mut x72: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x72, x66, x43, x11); + let mut x73: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x73, x66, x45, x13); + let mut x74: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x74, x66, x47, x15); + let mut x75: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x75, x66, x49, x17); + let mut x76: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x76, x66, x51, x19); + let mut x77: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x77, x66, x53, x21); + let mut x78: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x78, x66, x55, x23); + let mut x79: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x79, x66, x57, x25); + let mut x80: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x80, x66, x59, x27); + let mut x81: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x81, x66, x61, x29); + let mut x82: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x82, x66, x63, x31); + out1[0] = x67; + out1[1] = x68; + out1[2] = x69; + out1[3] = x70; + out1[4] = x71; + out1[5] = x72; + out1[6] = x73; + out1[7] = x74; + out1[8] = x75; + out1[9] = x76; + out1[10] = x77; + out1[11] = x78; + out1[12] = x79; + out1[13] = x80; + out1[14] = x81; + out1[15] = x82; +} + +/// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; +} + +/// The function fiat_bp512_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (0x0 as u32), (arg1[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (0x0 as u32), (arg1[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (0x0 as u32), (arg1[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (0x0 as u32), (arg1[15])); + let mut x33: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; +} + +/// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^32)⁻¹ mod m)^16) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let x1: u32 = (arg1[0]); + let mut x2: u32 = 0; + let mut x3: u32 = 0; + fiat_bp512_mulx_u32(&mut x2, &mut x3, x1, 0x7d89efc5); + let mut x4: u32 = 0; + let mut x5: u32 = 0; + fiat_bp512_mulx_u32(&mut x4, &mut x5, x2, 0xaadd9db8); + let mut x6: u32 = 0; + let mut x7: u32 = 0; + fiat_bp512_mulx_u32(&mut x6, &mut x7, x2, 0xdbe9c48b); + let mut x8: u32 = 0; + let mut x9: u32 = 0; + fiat_bp512_mulx_u32(&mut x8, &mut x9, x2, 0x3fd4e6ae); + let mut x10: u32 = 0; + let mut x11: u32 = 0; + fiat_bp512_mulx_u32(&mut x10, &mut x11, x2, 0x33c9fc07); + let mut x12: u32 = 0; + let mut x13: u32 = 0; + fiat_bp512_mulx_u32(&mut x12, &mut x13, x2, 0xcb308db3); + let mut x14: u32 = 0; + let mut x15: u32 = 0; + fiat_bp512_mulx_u32(&mut x14, &mut x15, x2, 0xb3c9d20e); + let mut x16: u32 = 0; + let mut x17: u32 = 0; + fiat_bp512_mulx_u32(&mut x16, &mut x17, x2, 0xd6639cca); + let mut x18: u32 = 0; + let mut x19: u32 = 0; + fiat_bp512_mulx_u32(&mut x18, &mut x19, x2, 0x70330871); + let mut x20: u32 = 0; + let mut x21: u32 = 0; + fiat_bp512_mulx_u32(&mut x20, &mut x21, x2, 0x7d4d9b00); + let mut x22: u32 = 0; + let mut x23: u32 = 0; + fiat_bp512_mulx_u32(&mut x22, &mut x23, x2, 0x9bc66842); + let mut x24: u32 = 0; + let mut x25: u32 = 0; + fiat_bp512_mulx_u32(&mut x24, &mut x25, x2, 0xaecda12a); + let mut x26: u32 = 0; + let mut x27: u32 = 0; + fiat_bp512_mulx_u32(&mut x26, &mut x27, x2, 0xe6a380e6); + let mut x28: u32 = 0; + let mut x29: u32 = 0; + fiat_bp512_mulx_u32(&mut x28, &mut x29, x2, 0x2881ff2f); + let mut x30: u32 = 0; + let mut x31: u32 = 0; + fiat_bp512_mulx_u32(&mut x30, &mut x31, x2, 0x2d82c685); + let mut x32: u32 = 0; + let mut x33: u32 = 0; + fiat_bp512_mulx_u32(&mut x32, &mut x33, x2, 0x28aa6056); + let mut x34: u32 = 0; + let mut x35: u32 = 0; + fiat_bp512_mulx_u32(&mut x34, &mut x35, x2, 0x583a48f3); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, 0x0, x35, x32); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x33, x30); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x31, x28); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x29, x26); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x27, x24); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x25, x22); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x23, x20); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x21, x18); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, x16); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x17, x14); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x15, x12); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x13, x10); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x11, x8); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x9, x6); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x7, x4); + let mut x66: u32 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x66, &mut x67, 0x0, x1, x34); + let mut x68: u32 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x36); + let mut x70: u32 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x38); + let mut x72: u32 = 0; + let mut x73: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x40); + let mut x74: u32 = 0; + let mut x75: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x74, &mut x75, x73, (0x0 as u32), x42); + let mut x76: u32 = 0; + let mut x77: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x76, &mut x77, x75, (0x0 as u32), x44); + let mut x78: u32 = 0; + let mut x79: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x78, &mut x79, x77, (0x0 as u32), x46); + let mut x80: u32 = 0; + let mut x81: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x80, &mut x81, x79, (0x0 as u32), x48); + let mut x82: u32 = 0; + let mut x83: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x82, &mut x83, x81, (0x0 as u32), x50); + let mut x84: u32 = 0; + let mut x85: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x84, &mut x85, x83, (0x0 as u32), x52); + let mut x86: u32 = 0; + let mut x87: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x86, &mut x87, x85, (0x0 as u32), x54); + let mut x88: u32 = 0; + let mut x89: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x88, &mut x89, x87, (0x0 as u32), x56); + let mut x90: u32 = 0; + let mut x91: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x90, &mut x91, x89, (0x0 as u32), x58); + let mut x92: u32 = 0; + let mut x93: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x92, &mut x93, x91, (0x0 as u32), x60); + let mut x94: u32 = 0; + let mut x95: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x94, &mut x95, x93, (0x0 as u32), x62); + let mut x96: u32 = 0; + let mut x97: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x96, &mut x97, x95, (0x0 as u32), x64); + let mut x98: u32 = 0; + let mut x99: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x98, &mut x99, 0x0, x68, (arg1[1])); + let mut x100: u32 = 0; + let mut x101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x100, &mut x101, x99, x70, (0x0 as u32)); + let mut x102: u32 = 0; + let mut x103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x102, &mut x103, x101, x72, (0x0 as u32)); + let mut x104: u32 = 0; + let mut x105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x104, &mut x105, x103, x74, (0x0 as u32)); + let mut x106: u32 = 0; + let mut x107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x106, &mut x107, x105, x76, (0x0 as u32)); + let mut x108: u32 = 0; + let mut x109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x108, &mut x109, x107, x78, (0x0 as u32)); + let mut x110: u32 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x110, &mut x111, x109, x80, (0x0 as u32)); + let mut x112: u32 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x112, &mut x113, x111, x82, (0x0 as u32)); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, x113, x84, (0x0 as u32)); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x86, (0x0 as u32)); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x88, (0x0 as u32)); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x90, (0x0 as u32)); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x92, (0x0 as u32)); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x94, (0x0 as u32)); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x96, (0x0 as u32)); + let mut x128: u32 = 0; + let mut x129: u32 = 0; + fiat_bp512_mulx_u32(&mut x128, &mut x129, x98, 0x7d89efc5); + let mut x130: u32 = 0; + let mut x131: u32 = 0; + fiat_bp512_mulx_u32(&mut x130, &mut x131, x128, 0xaadd9db8); + let mut x132: u32 = 0; + let mut x133: u32 = 0; + fiat_bp512_mulx_u32(&mut x132, &mut x133, x128, 0xdbe9c48b); + let mut x134: u32 = 0; + let mut x135: u32 = 0; + fiat_bp512_mulx_u32(&mut x134, &mut x135, x128, 0x3fd4e6ae); + let mut x136: u32 = 0; + let mut x137: u32 = 0; + fiat_bp512_mulx_u32(&mut x136, &mut x137, x128, 0x33c9fc07); + let mut x138: u32 = 0; + let mut x139: u32 = 0; + fiat_bp512_mulx_u32(&mut x138, &mut x139, x128, 0xcb308db3); + let mut x140: u32 = 0; + let mut x141: u32 = 0; + fiat_bp512_mulx_u32(&mut x140, &mut x141, x128, 0xb3c9d20e); + let mut x142: u32 = 0; + let mut x143: u32 = 0; + fiat_bp512_mulx_u32(&mut x142, &mut x143, x128, 0xd6639cca); + let mut x144: u32 = 0; + let mut x145: u32 = 0; + fiat_bp512_mulx_u32(&mut x144, &mut x145, x128, 0x70330871); + let mut x146: u32 = 0; + let mut x147: u32 = 0; + fiat_bp512_mulx_u32(&mut x146, &mut x147, x128, 0x7d4d9b00); + let mut x148: u32 = 0; + let mut x149: u32 = 0; + fiat_bp512_mulx_u32(&mut x148, &mut x149, x128, 0x9bc66842); + let mut x150: u32 = 0; + let mut x151: u32 = 0; + fiat_bp512_mulx_u32(&mut x150, &mut x151, x128, 0xaecda12a); + let mut x152: u32 = 0; + let mut x153: u32 = 0; + fiat_bp512_mulx_u32(&mut x152, &mut x153, x128, 0xe6a380e6); + let mut x154: u32 = 0; + let mut x155: u32 = 0; + fiat_bp512_mulx_u32(&mut x154, &mut x155, x128, 0x2881ff2f); + let mut x156: u32 = 0; + let mut x157: u32 = 0; + fiat_bp512_mulx_u32(&mut x156, &mut x157, x128, 0x2d82c685); + let mut x158: u32 = 0; + let mut x159: u32 = 0; + fiat_bp512_mulx_u32(&mut x158, &mut x159, x128, 0x28aa6056); + let mut x160: u32 = 0; + let mut x161: u32 = 0; + fiat_bp512_mulx_u32(&mut x160, &mut x161, x128, 0x583a48f3); + let mut x162: u32 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x162, &mut x163, 0x0, x161, x158); + let mut x164: u32 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x164, &mut x165, x163, x159, x156); + let mut x166: u32 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x166, &mut x167, x165, x157, x154); + let mut x168: u32 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x168, &mut x169, x167, x155, x152); + let mut x170: u32 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x170, &mut x171, x169, x153, x150); + let mut x172: u32 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x172, &mut x173, x171, x151, x148); + let mut x174: u32 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x174, &mut x175, x173, x149, x146); + let mut x176: u32 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x176, &mut x177, x175, x147, x144); + let mut x178: u32 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x178, &mut x179, x177, x145, x142); + let mut x180: u32 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x180, &mut x181, x179, x143, x140); + let mut x182: u32 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x182, &mut x183, x181, x141, x138); + let mut x184: u32 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x184, &mut x185, x183, x139, x136); + let mut x186: u32 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x186, &mut x187, x185, x137, x134); + let mut x188: u32 = 0; + let mut x189: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x188, &mut x189, x187, x135, x132); + let mut x190: u32 = 0; + let mut x191: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x190, &mut x191, x189, x133, x130); + let mut x192: u32 = 0; + let mut x193: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x192, &mut x193, 0x0, x98, x160); + let mut x194: u32 = 0; + let mut x195: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x194, &mut x195, x193, x100, x162); + let mut x196: u32 = 0; + let mut x197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x196, &mut x197, x195, x102, x164); + let mut x198: u32 = 0; + let mut x199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x198, &mut x199, x197, x104, x166); + let mut x200: u32 = 0; + let mut x201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x200, &mut x201, x199, x106, x168); + let mut x202: u32 = 0; + let mut x203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x202, &mut x203, x201, x108, x170); + let mut x204: u32 = 0; + let mut x205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x204, &mut x205, x203, x110, x172); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x206, &mut x207, x205, x112, x174); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x114, x176); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x116, x178); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x118, x180); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x120, x182); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x122, x184); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x124, x186); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x126, x188); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x222, &mut x223, x221, ((x127 as u32) + ((x97 as u32) + ((x65 as u32) + x5))), x190); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x224, &mut x225, 0x0, x194, (arg1[2])); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x196, (0x0 as u32)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x198, (0x0 as u32)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x200, (0x0 as u32)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x202, (0x0 as u32)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x204, (0x0 as u32)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x206, (0x0 as u32)); + let mut x238: u32 = 0; + let mut x239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x238, &mut x239, x237, x208, (0x0 as u32)); + let mut x240: u32 = 0; + let mut x241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x240, &mut x241, x239, x210, (0x0 as u32)); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, x241, x212, (0x0 as u32)); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x214, (0x0 as u32)); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x216, (0x0 as u32)); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x218, (0x0 as u32)); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x220, (0x0 as u32)); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x222, (0x0 as u32)); + let mut x254: u32 = 0; + let mut x255: u32 = 0; + fiat_bp512_mulx_u32(&mut x254, &mut x255, x224, 0x7d89efc5); + let mut x256: u32 = 0; + let mut x257: u32 = 0; + fiat_bp512_mulx_u32(&mut x256, &mut x257, x254, 0xaadd9db8); + let mut x258: u32 = 0; + let mut x259: u32 = 0; + fiat_bp512_mulx_u32(&mut x258, &mut x259, x254, 0xdbe9c48b); + let mut x260: u32 = 0; + let mut x261: u32 = 0; + fiat_bp512_mulx_u32(&mut x260, &mut x261, x254, 0x3fd4e6ae); + let mut x262: u32 = 0; + let mut x263: u32 = 0; + fiat_bp512_mulx_u32(&mut x262, &mut x263, x254, 0x33c9fc07); + let mut x264: u32 = 0; + let mut x265: u32 = 0; + fiat_bp512_mulx_u32(&mut x264, &mut x265, x254, 0xcb308db3); + let mut x266: u32 = 0; + let mut x267: u32 = 0; + fiat_bp512_mulx_u32(&mut x266, &mut x267, x254, 0xb3c9d20e); + let mut x268: u32 = 0; + let mut x269: u32 = 0; + fiat_bp512_mulx_u32(&mut x268, &mut x269, x254, 0xd6639cca); + let mut x270: u32 = 0; + let mut x271: u32 = 0; + fiat_bp512_mulx_u32(&mut x270, &mut x271, x254, 0x70330871); + let mut x272: u32 = 0; + let mut x273: u32 = 0; + fiat_bp512_mulx_u32(&mut x272, &mut x273, x254, 0x7d4d9b00); + let mut x274: u32 = 0; + let mut x275: u32 = 0; + fiat_bp512_mulx_u32(&mut x274, &mut x275, x254, 0x9bc66842); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x254, 0xaecda12a); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x254, 0xe6a380e6); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x254, 0x2881ff2f); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x254, 0x2d82c685); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x254, 0x28aa6056); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x254, 0x583a48f3); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x288, &mut x289, 0x0, x287, x284); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x285, x282); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x283, x280); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x281, x278); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x279, x276); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x277, x274); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x275, x272); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x273, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x271, x268); + let mut x306: u32 = 0; + let mut x307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x306, &mut x307, x305, x269, x266); + let mut x308: u32 = 0; + let mut x309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x308, &mut x309, x307, x267, x264); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, x309, x265, x262); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x263, x260); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x261, x258); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x259, x256); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, 0x0, x224, x286); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x226, x288); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x228, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x230, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x232, x294); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x234, x296); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x236, x298); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x238, x300); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x240, x302); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x242, x304); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x244, x306); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x246, x308); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x310); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x250, x312); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x252, x314); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x348, &mut x349, x347, ((x253 as u32) + ((x223 as u32) + ((x191 as u32) + x131))), x316); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x350, &mut x351, 0x0, x320, (arg1[3])); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x322, (0x0 as u32)); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x354, &mut x355, x353, x324, (0x0 as u32)); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x356, &mut x357, x355, x326, (0x0 as u32)); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x358, &mut x359, x357, x328, (0x0 as u32)); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x360, &mut x361, x359, x330, (0x0 as u32)); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x362, &mut x363, x361, x332, (0x0 as u32)); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x364, &mut x365, x363, x334, (0x0 as u32)); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x366, &mut x367, x365, x336, (0x0 as u32)); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x368, &mut x369, x367, x338, (0x0 as u32)); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x370, &mut x371, x369, x340, (0x0 as u32)); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x372, &mut x373, x371, x342, (0x0 as u32)); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x374, &mut x375, x373, x344, (0x0 as u32)); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x376, &mut x377, x375, x346, (0x0 as u32)); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x378, &mut x379, x377, x348, (0x0 as u32)); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x350, 0x7d89efc5); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x380, 0xaadd9db8); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x380, 0xdbe9c48b); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x380, 0x3fd4e6ae); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x380, 0x33c9fc07); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x380, 0xcb308db3); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x380, 0xb3c9d20e); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x380, 0xd6639cca); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x380, 0x70330871); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x380, 0x7d4d9b00); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x380, 0x9bc66842); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x380, 0xaecda12a); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x380, 0xe6a380e6); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x380, 0x2881ff2f); + let mut x408: u32 = 0; + let mut x409: u32 = 0; + fiat_bp512_mulx_u32(&mut x408, &mut x409, x380, 0x2d82c685); + let mut x410: u32 = 0; + let mut x411: u32 = 0; + fiat_bp512_mulx_u32(&mut x410, &mut x411, x380, 0x28aa6056); + let mut x412: u32 = 0; + let mut x413: u32 = 0; + fiat_bp512_mulx_u32(&mut x412, &mut x413, x380, 0x583a48f3); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, 0x0, x413, x410); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x411, x408); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x409, x406); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x407, x404); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x405, x402); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x403, x400); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x401, x398); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x399, x396); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x397, x394); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x395, x392); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x393, x390); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x391, x388); + let mut x438: u32 = 0; + let mut x439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x438, &mut x439, x437, x389, x386); + let mut x440: u32 = 0; + let mut x441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x440, &mut x441, x439, x387, x384); + let mut x442: u32 = 0; + let mut x443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x442, &mut x443, x441, x385, x382); + let mut x444: u32 = 0; + let mut x445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x444, &mut x445, 0x0, x350, x412); + let mut x446: u32 = 0; + let mut x447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x446, &mut x447, x445, x352, x414); + let mut x448: u32 = 0; + let mut x449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x448, &mut x449, x447, x354, x416); + let mut x450: u32 = 0; + let mut x451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x450, &mut x451, x449, x356, x418); + let mut x452: u32 = 0; + let mut x453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x452, &mut x453, x451, x358, x420); + let mut x454: u32 = 0; + let mut x455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x454, &mut x455, x453, x360, x422); + let mut x456: u32 = 0; + let mut x457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x456, &mut x457, x455, x362, x424); + let mut x458: u32 = 0; + let mut x459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x458, &mut x459, x457, x364, x426); + let mut x460: u32 = 0; + let mut x461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x460, &mut x461, x459, x366, x428); + let mut x462: u32 = 0; + let mut x463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x462, &mut x463, x461, x368, x430); + let mut x464: u32 = 0; + let mut x465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x464, &mut x465, x463, x370, x432); + let mut x466: u32 = 0; + let mut x467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x466, &mut x467, x465, x372, x434); + let mut x468: u32 = 0; + let mut x469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x468, &mut x469, x467, x374, x436); + let mut x470: u32 = 0; + let mut x471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x470, &mut x471, x469, x376, x438); + let mut x472: u32 = 0; + let mut x473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x472, &mut x473, x471, x378, x440); + let mut x474: u32 = 0; + let mut x475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x474, &mut x475, x473, ((x379 as u32) + ((x349 as u32) + ((x317 as u32) + x257))), x442); + let mut x476: u32 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x476, &mut x477, 0x0, x446, (arg1[4])); + let mut x478: u32 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x478, &mut x479, x477, x448, (0x0 as u32)); + let mut x480: u32 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x480, &mut x481, x479, x450, (0x0 as u32)); + let mut x482: u32 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x482, &mut x483, x481, x452, (0x0 as u32)); + let mut x484: u32 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x484, &mut x485, x483, x454, (0x0 as u32)); + let mut x486: u32 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x486, &mut x487, x485, x456, (0x0 as u32)); + let mut x488: u32 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x488, &mut x489, x487, x458, (0x0 as u32)); + let mut x490: u32 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x490, &mut x491, x489, x460, (0x0 as u32)); + let mut x492: u32 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x492, &mut x493, x491, x462, (0x0 as u32)); + let mut x494: u32 = 0; + let mut x495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x494, &mut x495, x493, x464, (0x0 as u32)); + let mut x496: u32 = 0; + let mut x497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x496, &mut x497, x495, x466, (0x0 as u32)); + let mut x498: u32 = 0; + let mut x499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x498, &mut x499, x497, x468, (0x0 as u32)); + let mut x500: u32 = 0; + let mut x501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x500, &mut x501, x499, x470, (0x0 as u32)); + let mut x502: u32 = 0; + let mut x503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x502, &mut x503, x501, x472, (0x0 as u32)); + let mut x504: u32 = 0; + let mut x505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x504, &mut x505, x503, x474, (0x0 as u32)); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp512_mulx_u32(&mut x506, &mut x507, x476, 0x7d89efc5); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp512_mulx_u32(&mut x508, &mut x509, x506, 0xaadd9db8); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp512_mulx_u32(&mut x510, &mut x511, x506, 0xdbe9c48b); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp512_mulx_u32(&mut x512, &mut x513, x506, 0x3fd4e6ae); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp512_mulx_u32(&mut x514, &mut x515, x506, 0x33c9fc07); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp512_mulx_u32(&mut x516, &mut x517, x506, 0xcb308db3); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp512_mulx_u32(&mut x518, &mut x519, x506, 0xb3c9d20e); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp512_mulx_u32(&mut x520, &mut x521, x506, 0xd6639cca); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp512_mulx_u32(&mut x522, &mut x523, x506, 0x70330871); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp512_mulx_u32(&mut x524, &mut x525, x506, 0x7d4d9b00); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp512_mulx_u32(&mut x526, &mut x527, x506, 0x9bc66842); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp512_mulx_u32(&mut x528, &mut x529, x506, 0xaecda12a); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp512_mulx_u32(&mut x530, &mut x531, x506, 0xe6a380e6); + let mut x532: u32 = 0; + let mut x533: u32 = 0; + fiat_bp512_mulx_u32(&mut x532, &mut x533, x506, 0x2881ff2f); + let mut x534: u32 = 0; + let mut x535: u32 = 0; + fiat_bp512_mulx_u32(&mut x534, &mut x535, x506, 0x2d82c685); + let mut x536: u32 = 0; + let mut x537: u32 = 0; + fiat_bp512_mulx_u32(&mut x536, &mut x537, x506, 0x28aa6056); + let mut x538: u32 = 0; + let mut x539: u32 = 0; + fiat_bp512_mulx_u32(&mut x538, &mut x539, x506, 0x583a48f3); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, 0x0, x539, x536); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x537, x534); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x535, x532); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x533, x530); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x531, x528); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x529, x526); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x527, x524); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x525, x522); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x523, x520); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x521, x518); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x519, x516); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x517, x514); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x515, x512); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x513, x510); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x511, x508); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, 0x0, x476, x538); + let mut x572: u32 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x572, &mut x573, x571, x478, x540); + let mut x574: u32 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x574, &mut x575, x573, x480, x542); + let mut x576: u32 = 0; + let mut x577: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x576, &mut x577, x575, x482, x544); + let mut x578: u32 = 0; + let mut x579: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x578, &mut x579, x577, x484, x546); + let mut x580: u32 = 0; + let mut x581: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x580, &mut x581, x579, x486, x548); + let mut x582: u32 = 0; + let mut x583: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x582, &mut x583, x581, x488, x550); + let mut x584: u32 = 0; + let mut x585: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x584, &mut x585, x583, x490, x552); + let mut x586: u32 = 0; + let mut x587: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x586, &mut x587, x585, x492, x554); + let mut x588: u32 = 0; + let mut x589: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x588, &mut x589, x587, x494, x556); + let mut x590: u32 = 0; + let mut x591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x590, &mut x591, x589, x496, x558); + let mut x592: u32 = 0; + let mut x593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x592, &mut x593, x591, x498, x560); + let mut x594: u32 = 0; + let mut x595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x594, &mut x595, x593, x500, x562); + let mut x596: u32 = 0; + let mut x597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x596, &mut x597, x595, x502, x564); + let mut x598: u32 = 0; + let mut x599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x598, &mut x599, x597, x504, x566); + let mut x600: u32 = 0; + let mut x601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x600, &mut x601, x599, ((x505 as u32) + ((x475 as u32) + ((x443 as u32) + x383))), x568); + let mut x602: u32 = 0; + let mut x603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x602, &mut x603, 0x0, x572, (arg1[5])); + let mut x604: u32 = 0; + let mut x605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x604, &mut x605, x603, x574, (0x0 as u32)); + let mut x606: u32 = 0; + let mut x607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x606, &mut x607, x605, x576, (0x0 as u32)); + let mut x608: u32 = 0; + let mut x609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x608, &mut x609, x607, x578, (0x0 as u32)); + let mut x610: u32 = 0; + let mut x611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x610, &mut x611, x609, x580, (0x0 as u32)); + let mut x612: u32 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x612, &mut x613, x611, x582, (0x0 as u32)); + let mut x614: u32 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x614, &mut x615, x613, x584, (0x0 as u32)); + let mut x616: u32 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x616, &mut x617, x615, x586, (0x0 as u32)); + let mut x618: u32 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x618, &mut x619, x617, x588, (0x0 as u32)); + let mut x620: u32 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x620, &mut x621, x619, x590, (0x0 as u32)); + let mut x622: u32 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x622, &mut x623, x621, x592, (0x0 as u32)); + let mut x624: u32 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x624, &mut x625, x623, x594, (0x0 as u32)); + let mut x626: u32 = 0; + let mut x627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x626, &mut x627, x625, x596, (0x0 as u32)); + let mut x628: u32 = 0; + let mut x629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x628, &mut x629, x627, x598, (0x0 as u32)); + let mut x630: u32 = 0; + let mut x631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x630, &mut x631, x629, x600, (0x0 as u32)); + let mut x632: u32 = 0; + let mut x633: u32 = 0; + fiat_bp512_mulx_u32(&mut x632, &mut x633, x602, 0x7d89efc5); + let mut x634: u32 = 0; + let mut x635: u32 = 0; + fiat_bp512_mulx_u32(&mut x634, &mut x635, x632, 0xaadd9db8); + let mut x636: u32 = 0; + let mut x637: u32 = 0; + fiat_bp512_mulx_u32(&mut x636, &mut x637, x632, 0xdbe9c48b); + let mut x638: u32 = 0; + let mut x639: u32 = 0; + fiat_bp512_mulx_u32(&mut x638, &mut x639, x632, 0x3fd4e6ae); + let mut x640: u32 = 0; + let mut x641: u32 = 0; + fiat_bp512_mulx_u32(&mut x640, &mut x641, x632, 0x33c9fc07); + let mut x642: u32 = 0; + let mut x643: u32 = 0; + fiat_bp512_mulx_u32(&mut x642, &mut x643, x632, 0xcb308db3); + let mut x644: u32 = 0; + let mut x645: u32 = 0; + fiat_bp512_mulx_u32(&mut x644, &mut x645, x632, 0xb3c9d20e); + let mut x646: u32 = 0; + let mut x647: u32 = 0; + fiat_bp512_mulx_u32(&mut x646, &mut x647, x632, 0xd6639cca); + let mut x648: u32 = 0; + let mut x649: u32 = 0; + fiat_bp512_mulx_u32(&mut x648, &mut x649, x632, 0x70330871); + let mut x650: u32 = 0; + let mut x651: u32 = 0; + fiat_bp512_mulx_u32(&mut x650, &mut x651, x632, 0x7d4d9b00); + let mut x652: u32 = 0; + let mut x653: u32 = 0; + fiat_bp512_mulx_u32(&mut x652, &mut x653, x632, 0x9bc66842); + let mut x654: u32 = 0; + let mut x655: u32 = 0; + fiat_bp512_mulx_u32(&mut x654, &mut x655, x632, 0xaecda12a); + let mut x656: u32 = 0; + let mut x657: u32 = 0; + fiat_bp512_mulx_u32(&mut x656, &mut x657, x632, 0xe6a380e6); + let mut x658: u32 = 0; + let mut x659: u32 = 0; + fiat_bp512_mulx_u32(&mut x658, &mut x659, x632, 0x2881ff2f); + let mut x660: u32 = 0; + let mut x661: u32 = 0; + fiat_bp512_mulx_u32(&mut x660, &mut x661, x632, 0x2d82c685); + let mut x662: u32 = 0; + let mut x663: u32 = 0; + fiat_bp512_mulx_u32(&mut x662, &mut x663, x632, 0x28aa6056); + let mut x664: u32 = 0; + let mut x665: u32 = 0; + fiat_bp512_mulx_u32(&mut x664, &mut x665, x632, 0x583a48f3); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, 0x0, x665, x662); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x663, x660); + let mut x670: u32 = 0; + let mut x671: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x670, &mut x671, x669, x661, x658); + let mut x672: u32 = 0; + let mut x673: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x672, &mut x673, x671, x659, x656); + let mut x674: u32 = 0; + let mut x675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x674, &mut x675, x673, x657, x654); + let mut x676: u32 = 0; + let mut x677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x676, &mut x677, x675, x655, x652); + let mut x678: u32 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x678, &mut x679, x677, x653, x650); + let mut x680: u32 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x680, &mut x681, x679, x651, x648); + let mut x682: u32 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x682, &mut x683, x681, x649, x646); + let mut x684: u32 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x684, &mut x685, x683, x647, x644); + let mut x686: u32 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x686, &mut x687, x685, x645, x642); + let mut x688: u32 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x688, &mut x689, x687, x643, x640); + let mut x690: u32 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x690, &mut x691, x689, x641, x638); + let mut x692: u32 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x692, &mut x693, x691, x639, x636); + let mut x694: u32 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x694, &mut x695, x693, x637, x634); + let mut x696: u32 = 0; + let mut x697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x696, &mut x697, 0x0, x602, x664); + let mut x698: u32 = 0; + let mut x699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x698, &mut x699, x697, x604, x666); + let mut x700: u32 = 0; + let mut x701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x700, &mut x701, x699, x606, x668); + let mut x702: u32 = 0; + let mut x703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x702, &mut x703, x701, x608, x670); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, x703, x610, x672); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x612, x674); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x614, x676); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x616, x678); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x618, x680); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x620, x682); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x622, x684); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x624, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x626, x688); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x628, x690); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x630, x692); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, ((x631 as u32) + ((x601 as u32) + ((x569 as u32) + x509))), x694); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, 0x0, x698, (arg1[6])); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x700, (0x0 as u32)); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x702, (0x0 as u32)); + let mut x734: u32 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x734, &mut x735, x733, x704, (0x0 as u32)); + let mut x736: u32 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x736, &mut x737, x735, x706, (0x0 as u32)); + let mut x738: u32 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x738, &mut x739, x737, x708, (0x0 as u32)); + let mut x740: u32 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x740, &mut x741, x739, x710, (0x0 as u32)); + let mut x742: u32 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x742, &mut x743, x741, x712, (0x0 as u32)); + let mut x744: u32 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x744, &mut x745, x743, x714, (0x0 as u32)); + let mut x746: u32 = 0; + let mut x747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x746, &mut x747, x745, x716, (0x0 as u32)); + let mut x748: u32 = 0; + let mut x749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x748, &mut x749, x747, x718, (0x0 as u32)); + let mut x750: u32 = 0; + let mut x751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x750, &mut x751, x749, x720, (0x0 as u32)); + let mut x752: u32 = 0; + let mut x753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x752, &mut x753, x751, x722, (0x0 as u32)); + let mut x754: u32 = 0; + let mut x755: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x754, &mut x755, x753, x724, (0x0 as u32)); + let mut x756: u32 = 0; + let mut x757: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x756, &mut x757, x755, x726, (0x0 as u32)); + let mut x758: u32 = 0; + let mut x759: u32 = 0; + fiat_bp512_mulx_u32(&mut x758, &mut x759, x728, 0x7d89efc5); + let mut x760: u32 = 0; + let mut x761: u32 = 0; + fiat_bp512_mulx_u32(&mut x760, &mut x761, x758, 0xaadd9db8); + let mut x762: u32 = 0; + let mut x763: u32 = 0; + fiat_bp512_mulx_u32(&mut x762, &mut x763, x758, 0xdbe9c48b); + let mut x764: u32 = 0; + let mut x765: u32 = 0; + fiat_bp512_mulx_u32(&mut x764, &mut x765, x758, 0x3fd4e6ae); + let mut x766: u32 = 0; + let mut x767: u32 = 0; + fiat_bp512_mulx_u32(&mut x766, &mut x767, x758, 0x33c9fc07); + let mut x768: u32 = 0; + let mut x769: u32 = 0; + fiat_bp512_mulx_u32(&mut x768, &mut x769, x758, 0xcb308db3); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x758, 0xb3c9d20e); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x758, 0xd6639cca); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x758, 0x70330871); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x758, 0x7d4d9b00); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x758, 0x9bc66842); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x758, 0xaecda12a); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x758, 0xe6a380e6); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x758, 0x2881ff2f); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x758, 0x2d82c685); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x758, 0x28aa6056); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x758, 0x583a48f3); + let mut x792: u32 = 0; + let mut x793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x792, &mut x793, 0x0, x791, x788); + let mut x794: u32 = 0; + let mut x795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x794, &mut x795, x793, x789, x786); + let mut x796: u32 = 0; + let mut x797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x796, &mut x797, x795, x787, x784); + let mut x798: u32 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x798, &mut x799, x797, x785, x782); + let mut x800: u32 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x800, &mut x801, x799, x783, x780); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, x801, x781, x778); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x779, x776); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x777, x774); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x775, x772); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x773, x770); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x771, x768); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x769, x766); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x767, x764); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x765, x762); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x763, x760); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, 0x0, x728, x790); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x730, x792); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x732, x794); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x734, x796); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x736, x798); + let mut x832: u32 = 0; + let mut x833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x832, &mut x833, x831, x738, x800); + let mut x834: u32 = 0; + let mut x835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x834, &mut x835, x833, x740, x802); + let mut x836: u32 = 0; + let mut x837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x836, &mut x837, x835, x742, x804); + let mut x838: u32 = 0; + let mut x839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x838, &mut x839, x837, x744, x806); + let mut x840: u32 = 0; + let mut x841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x840, &mut x841, x839, x746, x808); + let mut x842: u32 = 0; + let mut x843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x842, &mut x843, x841, x748, x810); + let mut x844: u32 = 0; + let mut x845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x844, &mut x845, x843, x750, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x846, &mut x847, x845, x752, x814); + let mut x848: u32 = 0; + let mut x849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x848, &mut x849, x847, x754, x816); + let mut x850: u32 = 0; + let mut x851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x850, &mut x851, x849, x756, x818); + let mut x852: u32 = 0; + let mut x853: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x852, &mut x853, x851, ((x757 as u32) + ((x727 as u32) + ((x695 as u32) + x635))), x820); + let mut x854: u32 = 0; + let mut x855: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x854, &mut x855, 0x0, x824, (arg1[7])); + let mut x856: u32 = 0; + let mut x857: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x856, &mut x857, x855, x826, (0x0 as u32)); + let mut x858: u32 = 0; + let mut x859: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x858, &mut x859, x857, x828, (0x0 as u32)); + let mut x860: u32 = 0; + let mut x861: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x860, &mut x861, x859, x830, (0x0 as u32)); + let mut x862: u32 = 0; + let mut x863: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x862, &mut x863, x861, x832, (0x0 as u32)); + let mut x864: u32 = 0; + let mut x865: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x864, &mut x865, x863, x834, (0x0 as u32)); + let mut x866: u32 = 0; + let mut x867: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x866, &mut x867, x865, x836, (0x0 as u32)); + let mut x868: u32 = 0; + let mut x869: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x868, &mut x869, x867, x838, (0x0 as u32)); + let mut x870: u32 = 0; + let mut x871: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x870, &mut x871, x869, x840, (0x0 as u32)); + let mut x872: u32 = 0; + let mut x873: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x872, &mut x873, x871, x842, (0x0 as u32)); + let mut x874: u32 = 0; + let mut x875: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x874, &mut x875, x873, x844, (0x0 as u32)); + let mut x876: u32 = 0; + let mut x877: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x876, &mut x877, x875, x846, (0x0 as u32)); + let mut x878: u32 = 0; + let mut x879: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x878, &mut x879, x877, x848, (0x0 as u32)); + let mut x880: u32 = 0; + let mut x881: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x880, &mut x881, x879, x850, (0x0 as u32)); + let mut x882: u32 = 0; + let mut x883: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x882, &mut x883, x881, x852, (0x0 as u32)); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp512_mulx_u32(&mut x884, &mut x885, x854, 0x7d89efc5); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp512_mulx_u32(&mut x886, &mut x887, x884, 0xaadd9db8); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp512_mulx_u32(&mut x888, &mut x889, x884, 0xdbe9c48b); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp512_mulx_u32(&mut x890, &mut x891, x884, 0x3fd4e6ae); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp512_mulx_u32(&mut x892, &mut x893, x884, 0x33c9fc07); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp512_mulx_u32(&mut x894, &mut x895, x884, 0xcb308db3); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp512_mulx_u32(&mut x896, &mut x897, x884, 0xb3c9d20e); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp512_mulx_u32(&mut x898, &mut x899, x884, 0xd6639cca); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp512_mulx_u32(&mut x900, &mut x901, x884, 0x70330871); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp512_mulx_u32(&mut x902, &mut x903, x884, 0x7d4d9b00); + let mut x904: u32 = 0; + let mut x905: u32 = 0; + fiat_bp512_mulx_u32(&mut x904, &mut x905, x884, 0x9bc66842); + let mut x906: u32 = 0; + let mut x907: u32 = 0; + fiat_bp512_mulx_u32(&mut x906, &mut x907, x884, 0xaecda12a); + let mut x908: u32 = 0; + let mut x909: u32 = 0; + fiat_bp512_mulx_u32(&mut x908, &mut x909, x884, 0xe6a380e6); + let mut x910: u32 = 0; + let mut x911: u32 = 0; + fiat_bp512_mulx_u32(&mut x910, &mut x911, x884, 0x2881ff2f); + let mut x912: u32 = 0; + let mut x913: u32 = 0; + fiat_bp512_mulx_u32(&mut x912, &mut x913, x884, 0x2d82c685); + let mut x914: u32 = 0; + let mut x915: u32 = 0; + fiat_bp512_mulx_u32(&mut x914, &mut x915, x884, 0x28aa6056); + let mut x916: u32 = 0; + let mut x917: u32 = 0; + fiat_bp512_mulx_u32(&mut x916, &mut x917, x884, 0x583a48f3); + let mut x918: u32 = 0; + let mut x919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x918, &mut x919, 0x0, x917, x914); + let mut x920: u32 = 0; + let mut x921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x920, &mut x921, x919, x915, x912); + let mut x922: u32 = 0; + let mut x923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x922, &mut x923, x921, x913, x910); + let mut x924: u32 = 0; + let mut x925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x924, &mut x925, x923, x911, x908); + let mut x926: u32 = 0; + let mut x927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x926, &mut x927, x925, x909, x906); + let mut x928: u32 = 0; + let mut x929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x928, &mut x929, x927, x907, x904); + let mut x930: u32 = 0; + let mut x931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x930, &mut x931, x929, x905, x902); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, x931, x903, x900); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x901, x898); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x899, x896); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x897, x894); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x895, x892); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x893, x890); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x891, x888); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x889, x886); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, 0x0, x854, x916); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x856, x918); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x858, x920); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x860, x922); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x862, x924); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x864, x926); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x866, x928); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x868, x930); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x870, x932); + let mut x966: u32 = 0; + let mut x967: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x966, &mut x967, x965, x872, x934); + let mut x968: u32 = 0; + let mut x969: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x968, &mut x969, x967, x874, x936); + let mut x970: u32 = 0; + let mut x971: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x970, &mut x971, x969, x876, x938); + let mut x972: u32 = 0; + let mut x973: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x972, &mut x973, x971, x878, x940); + let mut x974: u32 = 0; + let mut x975: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x974, &mut x975, x973, x880, x942); + let mut x976: u32 = 0; + let mut x977: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x976, &mut x977, x975, x882, x944); + let mut x978: u32 = 0; + let mut x979: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x978, &mut x979, x977, ((x883 as u32) + ((x853 as u32) + ((x821 as u32) + x761))), x946); + let mut x980: u32 = 0; + let mut x981: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x980, &mut x981, 0x0, x950, (arg1[8])); + let mut x982: u32 = 0; + let mut x983: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x982, &mut x983, x981, x952, (0x0 as u32)); + let mut x984: u32 = 0; + let mut x985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x984, &mut x985, x983, x954, (0x0 as u32)); + let mut x986: u32 = 0; + let mut x987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x986, &mut x987, x985, x956, (0x0 as u32)); + let mut x988: u32 = 0; + let mut x989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x988, &mut x989, x987, x958, (0x0 as u32)); + let mut x990: u32 = 0; + let mut x991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x990, &mut x991, x989, x960, (0x0 as u32)); + let mut x992: u32 = 0; + let mut x993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x992, &mut x993, x991, x962, (0x0 as u32)); + let mut x994: u32 = 0; + let mut x995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x994, &mut x995, x993, x964, (0x0 as u32)); + let mut x996: u32 = 0; + let mut x997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x996, &mut x997, x995, x966, (0x0 as u32)); + let mut x998: u32 = 0; + let mut x999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x998, &mut x999, x997, x968, (0x0 as u32)); + let mut x1000: u32 = 0; + let mut x1001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1000, &mut x1001, x999, x970, (0x0 as u32)); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1002, &mut x1003, x1001, x972, (0x0 as u32)); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1004, &mut x1005, x1003, x974, (0x0 as u32)); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1006, &mut x1007, x1005, x976, (0x0 as u32)); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1008, &mut x1009, x1007, x978, (0x0 as u32)); + let mut x1010: u32 = 0; + let mut x1011: u32 = 0; + fiat_bp512_mulx_u32(&mut x1010, &mut x1011, x980, 0x7d89efc5); + let mut x1012: u32 = 0; + let mut x1013: u32 = 0; + fiat_bp512_mulx_u32(&mut x1012, &mut x1013, x1010, 0xaadd9db8); + let mut x1014: u32 = 0; + let mut x1015: u32 = 0; + fiat_bp512_mulx_u32(&mut x1014, &mut x1015, x1010, 0xdbe9c48b); + let mut x1016: u32 = 0; + let mut x1017: u32 = 0; + fiat_bp512_mulx_u32(&mut x1016, &mut x1017, x1010, 0x3fd4e6ae); + let mut x1018: u32 = 0; + let mut x1019: u32 = 0; + fiat_bp512_mulx_u32(&mut x1018, &mut x1019, x1010, 0x33c9fc07); + let mut x1020: u32 = 0; + let mut x1021: u32 = 0; + fiat_bp512_mulx_u32(&mut x1020, &mut x1021, x1010, 0xcb308db3); + let mut x1022: u32 = 0; + let mut x1023: u32 = 0; + fiat_bp512_mulx_u32(&mut x1022, &mut x1023, x1010, 0xb3c9d20e); + let mut x1024: u32 = 0; + let mut x1025: u32 = 0; + fiat_bp512_mulx_u32(&mut x1024, &mut x1025, x1010, 0xd6639cca); + let mut x1026: u32 = 0; + let mut x1027: u32 = 0; + fiat_bp512_mulx_u32(&mut x1026, &mut x1027, x1010, 0x70330871); + let mut x1028: u32 = 0; + let mut x1029: u32 = 0; + fiat_bp512_mulx_u32(&mut x1028, &mut x1029, x1010, 0x7d4d9b00); + let mut x1030: u32 = 0; + let mut x1031: u32 = 0; + fiat_bp512_mulx_u32(&mut x1030, &mut x1031, x1010, 0x9bc66842); + let mut x1032: u32 = 0; + let mut x1033: u32 = 0; + fiat_bp512_mulx_u32(&mut x1032, &mut x1033, x1010, 0xaecda12a); + let mut x1034: u32 = 0; + let mut x1035: u32 = 0; + fiat_bp512_mulx_u32(&mut x1034, &mut x1035, x1010, 0xe6a380e6); + let mut x1036: u32 = 0; + let mut x1037: u32 = 0; + fiat_bp512_mulx_u32(&mut x1036, &mut x1037, x1010, 0x2881ff2f); + let mut x1038: u32 = 0; + let mut x1039: u32 = 0; + fiat_bp512_mulx_u32(&mut x1038, &mut x1039, x1010, 0x2d82c685); + let mut x1040: u32 = 0; + let mut x1041: u32 = 0; + fiat_bp512_mulx_u32(&mut x1040, &mut x1041, x1010, 0x28aa6056); + let mut x1042: u32 = 0; + let mut x1043: u32 = 0; + fiat_bp512_mulx_u32(&mut x1042, &mut x1043, x1010, 0x583a48f3); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, 0x0, x1043, x1040); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x1041, x1038); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x1039, x1036); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x1037, x1034); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x1035, x1032); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x1033, x1030); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x1031, x1028); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x1029, x1026); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x1027, x1024); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x1025, x1022); + let mut x1064: u32 = 0; + let mut x1065: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1023, x1020); + let mut x1066: u32 = 0; + let mut x1067: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1021, x1018); + let mut x1068: u32 = 0; + let mut x1069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1019, x1016); + let mut x1070: u32 = 0; + let mut x1071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1017, x1014); + let mut x1072: u32 = 0; + let mut x1073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1015, x1012); + let mut x1074: u32 = 0; + let mut x1075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1074, &mut x1075, 0x0, x980, x1042); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1076, &mut x1077, x1075, x982, x1044); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1078, &mut x1079, x1077, x984, x1046); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1080, &mut x1081, x1079, x986, x1048); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1082, &mut x1083, x1081, x988, x1050); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1084, &mut x1085, x1083, x990, x1052); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1086, &mut x1087, x1085, x992, x1054); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1088, &mut x1089, x1087, x994, x1056); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1090, &mut x1091, x1089, x996, x1058); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1092, &mut x1093, x1091, x998, x1060); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1000, x1062); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1002, x1064); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1004, x1066); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1006, x1068); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1008, x1070); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, ((x1009 as u32) + ((x979 as u32) + ((x947 as u32) + x887))), x1072); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, 0x0, x1076, (arg1[9])); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1078, (0x0 as u32)); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1080, (0x0 as u32)); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1082, (0x0 as u32)); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1084, (0x0 as u32)); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1086, (0x0 as u32)); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1088, (0x0 as u32)); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1090, (0x0 as u32)); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1092, (0x0 as u32)); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1094, (0x0 as u32)); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1096, (0x0 as u32)); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1128, &mut x1129, x1127, x1098, (0x0 as u32)); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1100, (0x0 as u32)); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1102, (0x0 as u32)); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1104, (0x0 as u32)); + let mut x1136: u32 = 0; + let mut x1137: u32 = 0; + fiat_bp512_mulx_u32(&mut x1136, &mut x1137, x1106, 0x7d89efc5); + let mut x1138: u32 = 0; + let mut x1139: u32 = 0; + fiat_bp512_mulx_u32(&mut x1138, &mut x1139, x1136, 0xaadd9db8); + let mut x1140: u32 = 0; + let mut x1141: u32 = 0; + fiat_bp512_mulx_u32(&mut x1140, &mut x1141, x1136, 0xdbe9c48b); + let mut x1142: u32 = 0; + let mut x1143: u32 = 0; + fiat_bp512_mulx_u32(&mut x1142, &mut x1143, x1136, 0x3fd4e6ae); + let mut x1144: u32 = 0; + let mut x1145: u32 = 0; + fiat_bp512_mulx_u32(&mut x1144, &mut x1145, x1136, 0x33c9fc07); + let mut x1146: u32 = 0; + let mut x1147: u32 = 0; + fiat_bp512_mulx_u32(&mut x1146, &mut x1147, x1136, 0xcb308db3); + let mut x1148: u32 = 0; + let mut x1149: u32 = 0; + fiat_bp512_mulx_u32(&mut x1148, &mut x1149, x1136, 0xb3c9d20e); + let mut x1150: u32 = 0; + let mut x1151: u32 = 0; + fiat_bp512_mulx_u32(&mut x1150, &mut x1151, x1136, 0xd6639cca); + let mut x1152: u32 = 0; + let mut x1153: u32 = 0; + fiat_bp512_mulx_u32(&mut x1152, &mut x1153, x1136, 0x70330871); + let mut x1154: u32 = 0; + let mut x1155: u32 = 0; + fiat_bp512_mulx_u32(&mut x1154, &mut x1155, x1136, 0x7d4d9b00); + let mut x1156: u32 = 0; + let mut x1157: u32 = 0; + fiat_bp512_mulx_u32(&mut x1156, &mut x1157, x1136, 0x9bc66842); + let mut x1158: u32 = 0; + let mut x1159: u32 = 0; + fiat_bp512_mulx_u32(&mut x1158, &mut x1159, x1136, 0xaecda12a); + let mut x1160: u32 = 0; + let mut x1161: u32 = 0; + fiat_bp512_mulx_u32(&mut x1160, &mut x1161, x1136, 0xe6a380e6); + let mut x1162: u32 = 0; + let mut x1163: u32 = 0; + fiat_bp512_mulx_u32(&mut x1162, &mut x1163, x1136, 0x2881ff2f); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x1136, 0x2d82c685); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x1136, 0x28aa6056); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x1136, 0x583a48f3); + let mut x1170: u32 = 0; + let mut x1171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1170, &mut x1171, 0x0, x1169, x1166); + let mut x1172: u32 = 0; + let mut x1173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1172, &mut x1173, x1171, x1167, x1164); + let mut x1174: u32 = 0; + let mut x1175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1174, &mut x1175, x1173, x1165, x1162); + let mut x1176: u32 = 0; + let mut x1177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1176, &mut x1177, x1175, x1163, x1160); + let mut x1178: u32 = 0; + let mut x1179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1178, &mut x1179, x1177, x1161, x1158); + let mut x1180: u32 = 0; + let mut x1181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1180, &mut x1181, x1179, x1159, x1156); + let mut x1182: u32 = 0; + let mut x1183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1182, &mut x1183, x1181, x1157, x1154); + let mut x1184: u32 = 0; + let mut x1185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1184, &mut x1185, x1183, x1155, x1152); + let mut x1186: u32 = 0; + let mut x1187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1186, &mut x1187, x1185, x1153, x1150); + let mut x1188: u32 = 0; + let mut x1189: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1188, &mut x1189, x1187, x1151, x1148); + let mut x1190: u32 = 0; + let mut x1191: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1190, &mut x1191, x1189, x1149, x1146); + let mut x1192: u32 = 0; + let mut x1193: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1192, &mut x1193, x1191, x1147, x1144); + let mut x1194: u32 = 0; + let mut x1195: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1194, &mut x1195, x1193, x1145, x1142); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, x1195, x1143, x1140); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1141, x1138); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, 0x0, x1106, x1168); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1108, x1170); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1110, x1172); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1112, x1174); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1114, x1176); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1116, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1118, x1180); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1120, x1182); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1122, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1124, x1186); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1126, x1188); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1128, x1190); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1130, x1192); + let mut x1226: u32 = 0; + let mut x1227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1226, &mut x1227, x1225, x1132, x1194); + let mut x1228: u32 = 0; + let mut x1229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1228, &mut x1229, x1227, x1134, x1196); + let mut x1230: u32 = 0; + let mut x1231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1230, &mut x1231, x1229, ((x1135 as u32) + ((x1105 as u32) + ((x1073 as u32) + x1013))), x1198); + let mut x1232: u32 = 0; + let mut x1233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1232, &mut x1233, 0x0, x1202, (arg1[10])); + let mut x1234: u32 = 0; + let mut x1235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1234, &mut x1235, x1233, x1204, (0x0 as u32)); + let mut x1236: u32 = 0; + let mut x1237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1236, &mut x1237, x1235, x1206, (0x0 as u32)); + let mut x1238: u32 = 0; + let mut x1239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1238, &mut x1239, x1237, x1208, (0x0 as u32)); + let mut x1240: u32 = 0; + let mut x1241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1240, &mut x1241, x1239, x1210, (0x0 as u32)); + let mut x1242: u32 = 0; + let mut x1243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1242, &mut x1243, x1241, x1212, (0x0 as u32)); + let mut x1244: u32 = 0; + let mut x1245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1244, &mut x1245, x1243, x1214, (0x0 as u32)); + let mut x1246: u32 = 0; + let mut x1247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1246, &mut x1247, x1245, x1216, (0x0 as u32)); + let mut x1248: u32 = 0; + let mut x1249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1248, &mut x1249, x1247, x1218, (0x0 as u32)); + let mut x1250: u32 = 0; + let mut x1251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1250, &mut x1251, x1249, x1220, (0x0 as u32)); + let mut x1252: u32 = 0; + let mut x1253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1252, &mut x1253, x1251, x1222, (0x0 as u32)); + let mut x1254: u32 = 0; + let mut x1255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1254, &mut x1255, x1253, x1224, (0x0 as u32)); + let mut x1256: u32 = 0; + let mut x1257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1256, &mut x1257, x1255, x1226, (0x0 as u32)); + let mut x1258: u32 = 0; + let mut x1259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1258, &mut x1259, x1257, x1228, (0x0 as u32)); + let mut x1260: u32 = 0; + let mut x1261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1260, &mut x1261, x1259, x1230, (0x0 as u32)); + let mut x1262: u32 = 0; + let mut x1263: u32 = 0; + fiat_bp512_mulx_u32(&mut x1262, &mut x1263, x1232, 0x7d89efc5); + let mut x1264: u32 = 0; + let mut x1265: u32 = 0; + fiat_bp512_mulx_u32(&mut x1264, &mut x1265, x1262, 0xaadd9db8); + let mut x1266: u32 = 0; + let mut x1267: u32 = 0; + fiat_bp512_mulx_u32(&mut x1266, &mut x1267, x1262, 0xdbe9c48b); + let mut x1268: u32 = 0; + let mut x1269: u32 = 0; + fiat_bp512_mulx_u32(&mut x1268, &mut x1269, x1262, 0x3fd4e6ae); + let mut x1270: u32 = 0; + let mut x1271: u32 = 0; + fiat_bp512_mulx_u32(&mut x1270, &mut x1271, x1262, 0x33c9fc07); + let mut x1272: u32 = 0; + let mut x1273: u32 = 0; + fiat_bp512_mulx_u32(&mut x1272, &mut x1273, x1262, 0xcb308db3); + let mut x1274: u32 = 0; + let mut x1275: u32 = 0; + fiat_bp512_mulx_u32(&mut x1274, &mut x1275, x1262, 0xb3c9d20e); + let mut x1276: u32 = 0; + let mut x1277: u32 = 0; + fiat_bp512_mulx_u32(&mut x1276, &mut x1277, x1262, 0xd6639cca); + let mut x1278: u32 = 0; + let mut x1279: u32 = 0; + fiat_bp512_mulx_u32(&mut x1278, &mut x1279, x1262, 0x70330871); + let mut x1280: u32 = 0; + let mut x1281: u32 = 0; + fiat_bp512_mulx_u32(&mut x1280, &mut x1281, x1262, 0x7d4d9b00); + let mut x1282: u32 = 0; + let mut x1283: u32 = 0; + fiat_bp512_mulx_u32(&mut x1282, &mut x1283, x1262, 0x9bc66842); + let mut x1284: u32 = 0; + let mut x1285: u32 = 0; + fiat_bp512_mulx_u32(&mut x1284, &mut x1285, x1262, 0xaecda12a); + let mut x1286: u32 = 0; + let mut x1287: u32 = 0; + fiat_bp512_mulx_u32(&mut x1286, &mut x1287, x1262, 0xe6a380e6); + let mut x1288: u32 = 0; + let mut x1289: u32 = 0; + fiat_bp512_mulx_u32(&mut x1288, &mut x1289, x1262, 0x2881ff2f); + let mut x1290: u32 = 0; + let mut x1291: u32 = 0; + fiat_bp512_mulx_u32(&mut x1290, &mut x1291, x1262, 0x2d82c685); + let mut x1292: u32 = 0; + let mut x1293: u32 = 0; + fiat_bp512_mulx_u32(&mut x1292, &mut x1293, x1262, 0x28aa6056); + let mut x1294: u32 = 0; + let mut x1295: u32 = 0; + fiat_bp512_mulx_u32(&mut x1294, &mut x1295, x1262, 0x583a48f3); + let mut x1296: u32 = 0; + let mut x1297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1296, &mut x1297, 0x0, x1295, x1292); + let mut x1298: u32 = 0; + let mut x1299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1298, &mut x1299, x1297, x1293, x1290); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1300, &mut x1301, x1299, x1291, x1288); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1289, x1286); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1287, x1284); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1285, x1282); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1283, x1280); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1281, x1278); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1279, x1276); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1277, x1274); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1275, x1272); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1273, x1270); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1271, x1268); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1269, x1266); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1267, x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1232, x1294); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1234, x1296); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1236, x1298); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1238, x1300); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1240, x1302); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1242, x1304); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1244, x1306); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1246, x1308); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1248, x1310); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1250, x1312); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1252, x1314); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1254, x1316); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1256, x1318); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1258, x1320); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1260, x1322); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, ((x1261 as u32) + ((x1231 as u32) + ((x1199 as u32) + x1139))), x1324); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, 0x0, x1328, (arg1[11])); + let mut x1360: u32 = 0; + let mut x1361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1360, &mut x1361, x1359, x1330, (0x0 as u32)); + let mut x1362: u32 = 0; + let mut x1363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1362, &mut x1363, x1361, x1332, (0x0 as u32)); + let mut x1364: u32 = 0; + let mut x1365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1364, &mut x1365, x1363, x1334, (0x0 as u32)); + let mut x1366: u32 = 0; + let mut x1367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1366, &mut x1367, x1365, x1336, (0x0 as u32)); + let mut x1368: u32 = 0; + let mut x1369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1368, &mut x1369, x1367, x1338, (0x0 as u32)); + let mut x1370: u32 = 0; + let mut x1371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1370, &mut x1371, x1369, x1340, (0x0 as u32)); + let mut x1372: u32 = 0; + let mut x1373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1372, &mut x1373, x1371, x1342, (0x0 as u32)); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1374, &mut x1375, x1373, x1344, (0x0 as u32)); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1346, (0x0 as u32)); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1348, (0x0 as u32)); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1350, (0x0 as u32)); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1352, (0x0 as u32)); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1354, (0x0 as u32)); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1356, (0x0 as u32)); + let mut x1388: u32 = 0; + let mut x1389: u32 = 0; + fiat_bp512_mulx_u32(&mut x1388, &mut x1389, x1358, 0x7d89efc5); + let mut x1390: u32 = 0; + let mut x1391: u32 = 0; + fiat_bp512_mulx_u32(&mut x1390, &mut x1391, x1388, 0xaadd9db8); + let mut x1392: u32 = 0; + let mut x1393: u32 = 0; + fiat_bp512_mulx_u32(&mut x1392, &mut x1393, x1388, 0xdbe9c48b); + let mut x1394: u32 = 0; + let mut x1395: u32 = 0; + fiat_bp512_mulx_u32(&mut x1394, &mut x1395, x1388, 0x3fd4e6ae); + let mut x1396: u32 = 0; + let mut x1397: u32 = 0; + fiat_bp512_mulx_u32(&mut x1396, &mut x1397, x1388, 0x33c9fc07); + let mut x1398: u32 = 0; + let mut x1399: u32 = 0; + fiat_bp512_mulx_u32(&mut x1398, &mut x1399, x1388, 0xcb308db3); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp512_mulx_u32(&mut x1400, &mut x1401, x1388, 0xb3c9d20e); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp512_mulx_u32(&mut x1402, &mut x1403, x1388, 0xd6639cca); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp512_mulx_u32(&mut x1404, &mut x1405, x1388, 0x70330871); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp512_mulx_u32(&mut x1406, &mut x1407, x1388, 0x7d4d9b00); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp512_mulx_u32(&mut x1408, &mut x1409, x1388, 0x9bc66842); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp512_mulx_u32(&mut x1410, &mut x1411, x1388, 0xaecda12a); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp512_mulx_u32(&mut x1412, &mut x1413, x1388, 0xe6a380e6); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp512_mulx_u32(&mut x1414, &mut x1415, x1388, 0x2881ff2f); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp512_mulx_u32(&mut x1416, &mut x1417, x1388, 0x2d82c685); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp512_mulx_u32(&mut x1418, &mut x1419, x1388, 0x28aa6056); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp512_mulx_u32(&mut x1420, &mut x1421, x1388, 0x583a48f3); + let mut x1422: u32 = 0; + let mut x1423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1422, &mut x1423, 0x0, x1421, x1418); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, x1423, x1419, x1416); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1417, x1414); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1415, x1412); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1413, x1410); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1411, x1408); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1409, x1406); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1407, x1404); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1405, x1402); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1403, x1400); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1401, x1398); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1399, x1396); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1397, x1394); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1395, x1392); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1393, x1390); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, 0x0, x1358, x1420); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1360, x1422); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1362, x1424); + let mut x1458: u32 = 0; + let mut x1459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1458, &mut x1459, x1457, x1364, x1426); + let mut x1460: u32 = 0; + let mut x1461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1460, &mut x1461, x1459, x1366, x1428); + let mut x1462: u32 = 0; + let mut x1463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1462, &mut x1463, x1461, x1368, x1430); + let mut x1464: u32 = 0; + let mut x1465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1464, &mut x1465, x1463, x1370, x1432); + let mut x1466: u32 = 0; + let mut x1467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1466, &mut x1467, x1465, x1372, x1434); + let mut x1468: u32 = 0; + let mut x1469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1468, &mut x1469, x1467, x1374, x1436); + let mut x1470: u32 = 0; + let mut x1471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1470, &mut x1471, x1469, x1376, x1438); + let mut x1472: u32 = 0; + let mut x1473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1472, &mut x1473, x1471, x1378, x1440); + let mut x1474: u32 = 0; + let mut x1475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1474, &mut x1475, x1473, x1380, x1442); + let mut x1476: u32 = 0; + let mut x1477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1476, &mut x1477, x1475, x1382, x1444); + let mut x1478: u32 = 0; + let mut x1479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1478, &mut x1479, x1477, x1384, x1446); + let mut x1480: u32 = 0; + let mut x1481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1480, &mut x1481, x1479, x1386, x1448); + let mut x1482: u32 = 0; + let mut x1483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1482, &mut x1483, x1481, ((x1387 as u32) + ((x1357 as u32) + ((x1325 as u32) + x1265))), x1450); + let mut x1484: u32 = 0; + let mut x1485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1484, &mut x1485, 0x0, x1454, (arg1[12])); + let mut x1486: u32 = 0; + let mut x1487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1486, &mut x1487, x1485, x1456, (0x0 as u32)); + let mut x1488: u32 = 0; + let mut x1489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1488, &mut x1489, x1487, x1458, (0x0 as u32)); + let mut x1490: u32 = 0; + let mut x1491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1490, &mut x1491, x1489, x1460, (0x0 as u32)); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, x1491, x1462, (0x0 as u32)); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1464, (0x0 as u32)); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1466, (0x0 as u32)); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1468, (0x0 as u32)); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1470, (0x0 as u32)); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1472, (0x0 as u32)); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1474, (0x0 as u32)); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1476, (0x0 as u32)); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1478, (0x0 as u32)); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1480, (0x0 as u32)); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1482, (0x0 as u32)); + let mut x1514: u32 = 0; + let mut x1515: u32 = 0; + fiat_bp512_mulx_u32(&mut x1514, &mut x1515, x1484, 0x7d89efc5); + let mut x1516: u32 = 0; + let mut x1517: u32 = 0; + fiat_bp512_mulx_u32(&mut x1516, &mut x1517, x1514, 0xaadd9db8); + let mut x1518: u32 = 0; + let mut x1519: u32 = 0; + fiat_bp512_mulx_u32(&mut x1518, &mut x1519, x1514, 0xdbe9c48b); + let mut x1520: u32 = 0; + let mut x1521: u32 = 0; + fiat_bp512_mulx_u32(&mut x1520, &mut x1521, x1514, 0x3fd4e6ae); + let mut x1522: u32 = 0; + let mut x1523: u32 = 0; + fiat_bp512_mulx_u32(&mut x1522, &mut x1523, x1514, 0x33c9fc07); + let mut x1524: u32 = 0; + let mut x1525: u32 = 0; + fiat_bp512_mulx_u32(&mut x1524, &mut x1525, x1514, 0xcb308db3); + let mut x1526: u32 = 0; + let mut x1527: u32 = 0; + fiat_bp512_mulx_u32(&mut x1526, &mut x1527, x1514, 0xb3c9d20e); + let mut x1528: u32 = 0; + let mut x1529: u32 = 0; + fiat_bp512_mulx_u32(&mut x1528, &mut x1529, x1514, 0xd6639cca); + let mut x1530: u32 = 0; + let mut x1531: u32 = 0; + fiat_bp512_mulx_u32(&mut x1530, &mut x1531, x1514, 0x70330871); + let mut x1532: u32 = 0; + let mut x1533: u32 = 0; + fiat_bp512_mulx_u32(&mut x1532, &mut x1533, x1514, 0x7d4d9b00); + let mut x1534: u32 = 0; + let mut x1535: u32 = 0; + fiat_bp512_mulx_u32(&mut x1534, &mut x1535, x1514, 0x9bc66842); + let mut x1536: u32 = 0; + let mut x1537: u32 = 0; + fiat_bp512_mulx_u32(&mut x1536, &mut x1537, x1514, 0xaecda12a); + let mut x1538: u32 = 0; + let mut x1539: u32 = 0; + fiat_bp512_mulx_u32(&mut x1538, &mut x1539, x1514, 0xe6a380e6); + let mut x1540: u32 = 0; + let mut x1541: u32 = 0; + fiat_bp512_mulx_u32(&mut x1540, &mut x1541, x1514, 0x2881ff2f); + let mut x1542: u32 = 0; + let mut x1543: u32 = 0; + fiat_bp512_mulx_u32(&mut x1542, &mut x1543, x1514, 0x2d82c685); + let mut x1544: u32 = 0; + let mut x1545: u32 = 0; + fiat_bp512_mulx_u32(&mut x1544, &mut x1545, x1514, 0x28aa6056); + let mut x1546: u32 = 0; + let mut x1547: u32 = 0; + fiat_bp512_mulx_u32(&mut x1546, &mut x1547, x1514, 0x583a48f3); + let mut x1548: u32 = 0; + let mut x1549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1548, &mut x1549, 0x0, x1547, x1544); + let mut x1550: u32 = 0; + let mut x1551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1550, &mut x1551, x1549, x1545, x1542); + let mut x1552: u32 = 0; + let mut x1553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1552, &mut x1553, x1551, x1543, x1540); + let mut x1554: u32 = 0; + let mut x1555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1554, &mut x1555, x1553, x1541, x1538); + let mut x1556: u32 = 0; + let mut x1557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1556, &mut x1557, x1555, x1539, x1536); + let mut x1558: u32 = 0; + let mut x1559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1558, &mut x1559, x1557, x1537, x1534); + let mut x1560: u32 = 0; + let mut x1561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1560, &mut x1561, x1559, x1535, x1532); + let mut x1562: u32 = 0; + let mut x1563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1562, &mut x1563, x1561, x1533, x1530); + let mut x1564: u32 = 0; + let mut x1565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1564, &mut x1565, x1563, x1531, x1528); + let mut x1566: u32 = 0; + let mut x1567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1566, &mut x1567, x1565, x1529, x1526); + let mut x1568: u32 = 0; + let mut x1569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1568, &mut x1569, x1567, x1527, x1524); + let mut x1570: u32 = 0; + let mut x1571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1570, &mut x1571, x1569, x1525, x1522); + let mut x1572: u32 = 0; + let mut x1573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1572, &mut x1573, x1571, x1523, x1520); + let mut x1574: u32 = 0; + let mut x1575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1574, &mut x1575, x1573, x1521, x1518); + let mut x1576: u32 = 0; + let mut x1577: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1576, &mut x1577, x1575, x1519, x1516); + let mut x1578: u32 = 0; + let mut x1579: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1578, &mut x1579, 0x0, x1484, x1546); + let mut x1580: u32 = 0; + let mut x1581: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1580, &mut x1581, x1579, x1486, x1548); + let mut x1582: u32 = 0; + let mut x1583: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1582, &mut x1583, x1581, x1488, x1550); + let mut x1584: u32 = 0; + let mut x1585: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1584, &mut x1585, x1583, x1490, x1552); + let mut x1586: u32 = 0; + let mut x1587: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1586, &mut x1587, x1585, x1492, x1554); + let mut x1588: u32 = 0; + let mut x1589: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1588, &mut x1589, x1587, x1494, x1556); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, x1589, x1496, x1558); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1498, x1560); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1500, x1562); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1502, x1564); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1504, x1566); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1506, x1568); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1508, x1570); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1510, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1512, x1574); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, ((x1513 as u32) + ((x1483 as u32) + ((x1451 as u32) + x1391))), x1576); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, 0x0, x1580, (arg1[13])); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1582, (0x0 as u32)); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1584, (0x0 as u32)); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1586, (0x0 as u32)); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1588, (0x0 as u32)); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1590, (0x0 as u32)); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1592, (0x0 as u32)); + let mut x1624: u32 = 0; + let mut x1625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1624, &mut x1625, x1623, x1594, (0x0 as u32)); + let mut x1626: u32 = 0; + let mut x1627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1626, &mut x1627, x1625, x1596, (0x0 as u32)); + let mut x1628: u32 = 0; + let mut x1629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1628, &mut x1629, x1627, x1598, (0x0 as u32)); + let mut x1630: u32 = 0; + let mut x1631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1630, &mut x1631, x1629, x1600, (0x0 as u32)); + let mut x1632: u32 = 0; + let mut x1633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1632, &mut x1633, x1631, x1602, (0x0 as u32)); + let mut x1634: u32 = 0; + let mut x1635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1634, &mut x1635, x1633, x1604, (0x0 as u32)); + let mut x1636: u32 = 0; + let mut x1637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1636, &mut x1637, x1635, x1606, (0x0 as u32)); + let mut x1638: u32 = 0; + let mut x1639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1638, &mut x1639, x1637, x1608, (0x0 as u32)); + let mut x1640: u32 = 0; + let mut x1641: u32 = 0; + fiat_bp512_mulx_u32(&mut x1640, &mut x1641, x1610, 0x7d89efc5); + let mut x1642: u32 = 0; + let mut x1643: u32 = 0; + fiat_bp512_mulx_u32(&mut x1642, &mut x1643, x1640, 0xaadd9db8); + let mut x1644: u32 = 0; + let mut x1645: u32 = 0; + fiat_bp512_mulx_u32(&mut x1644, &mut x1645, x1640, 0xdbe9c48b); + let mut x1646: u32 = 0; + let mut x1647: u32 = 0; + fiat_bp512_mulx_u32(&mut x1646, &mut x1647, x1640, 0x3fd4e6ae); + let mut x1648: u32 = 0; + let mut x1649: u32 = 0; + fiat_bp512_mulx_u32(&mut x1648, &mut x1649, x1640, 0x33c9fc07); + let mut x1650: u32 = 0; + let mut x1651: u32 = 0; + fiat_bp512_mulx_u32(&mut x1650, &mut x1651, x1640, 0xcb308db3); + let mut x1652: u32 = 0; + let mut x1653: u32 = 0; + fiat_bp512_mulx_u32(&mut x1652, &mut x1653, x1640, 0xb3c9d20e); + let mut x1654: u32 = 0; + let mut x1655: u32 = 0; + fiat_bp512_mulx_u32(&mut x1654, &mut x1655, x1640, 0xd6639cca); + let mut x1656: u32 = 0; + let mut x1657: u32 = 0; + fiat_bp512_mulx_u32(&mut x1656, &mut x1657, x1640, 0x70330871); + let mut x1658: u32 = 0; + let mut x1659: u32 = 0; + fiat_bp512_mulx_u32(&mut x1658, &mut x1659, x1640, 0x7d4d9b00); + let mut x1660: u32 = 0; + let mut x1661: u32 = 0; + fiat_bp512_mulx_u32(&mut x1660, &mut x1661, x1640, 0x9bc66842); + let mut x1662: u32 = 0; + let mut x1663: u32 = 0; + fiat_bp512_mulx_u32(&mut x1662, &mut x1663, x1640, 0xaecda12a); + let mut x1664: u32 = 0; + let mut x1665: u32 = 0; + fiat_bp512_mulx_u32(&mut x1664, &mut x1665, x1640, 0xe6a380e6); + let mut x1666: u32 = 0; + let mut x1667: u32 = 0; + fiat_bp512_mulx_u32(&mut x1666, &mut x1667, x1640, 0x2881ff2f); + let mut x1668: u32 = 0; + let mut x1669: u32 = 0; + fiat_bp512_mulx_u32(&mut x1668, &mut x1669, x1640, 0x2d82c685); + let mut x1670: u32 = 0; + let mut x1671: u32 = 0; + fiat_bp512_mulx_u32(&mut x1670, &mut x1671, x1640, 0x28aa6056); + let mut x1672: u32 = 0; + let mut x1673: u32 = 0; + fiat_bp512_mulx_u32(&mut x1672, &mut x1673, x1640, 0x583a48f3); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1674, &mut x1675, 0x0, x1673, x1670); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1671, x1668); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1669, x1666); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1667, x1664); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1665, x1662); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1663, x1660); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1661, x1658); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1659, x1656); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1657, x1654); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1655, x1652); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1653, x1650); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1651, x1648); + let mut x1698: u32 = 0; + let mut x1699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1698, &mut x1699, x1697, x1649, x1646); + let mut x1700: u32 = 0; + let mut x1701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1700, &mut x1701, x1699, x1647, x1644); + let mut x1702: u32 = 0; + let mut x1703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1702, &mut x1703, x1701, x1645, x1642); + let mut x1704: u32 = 0; + let mut x1705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1704, &mut x1705, 0x0, x1610, x1672); + let mut x1706: u32 = 0; + let mut x1707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1706, &mut x1707, x1705, x1612, x1674); + let mut x1708: u32 = 0; + let mut x1709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1708, &mut x1709, x1707, x1614, x1676); + let mut x1710: u32 = 0; + let mut x1711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1710, &mut x1711, x1709, x1616, x1678); + let mut x1712: u32 = 0; + let mut x1713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1712, &mut x1713, x1711, x1618, x1680); + let mut x1714: u32 = 0; + let mut x1715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1714, &mut x1715, x1713, x1620, x1682); + let mut x1716: u32 = 0; + let mut x1717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1716, &mut x1717, x1715, x1622, x1684); + let mut x1718: u32 = 0; + let mut x1719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1718, &mut x1719, x1717, x1624, x1686); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, x1719, x1626, x1688); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1628, x1690); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1630, x1692); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1632, x1694); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1634, x1696); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1636, x1698); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1638, x1700); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, ((x1639 as u32) + ((x1609 as u32) + ((x1577 as u32) + x1517))), x1702); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, 0x0, x1706, (arg1[14])); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1708, (0x0 as u32)); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1710, (0x0 as u32)); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1712, (0x0 as u32)); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1714, (0x0 as u32)); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1716, (0x0 as u32)); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1718, (0x0 as u32)); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1720, (0x0 as u32)); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1722, (0x0 as u32)); + let mut x1754: u32 = 0; + let mut x1755: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1754, &mut x1755, x1753, x1724, (0x0 as u32)); + let mut x1756: u32 = 0; + let mut x1757: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1756, &mut x1757, x1755, x1726, (0x0 as u32)); + let mut x1758: u32 = 0; + let mut x1759: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1758, &mut x1759, x1757, x1728, (0x0 as u32)); + let mut x1760: u32 = 0; + let mut x1761: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1760, &mut x1761, x1759, x1730, (0x0 as u32)); + let mut x1762: u32 = 0; + let mut x1763: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1762, &mut x1763, x1761, x1732, (0x0 as u32)); + let mut x1764: u32 = 0; + let mut x1765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1764, &mut x1765, x1763, x1734, (0x0 as u32)); + let mut x1766: u32 = 0; + let mut x1767: u32 = 0; + fiat_bp512_mulx_u32(&mut x1766, &mut x1767, x1736, 0x7d89efc5); + let mut x1768: u32 = 0; + let mut x1769: u32 = 0; + fiat_bp512_mulx_u32(&mut x1768, &mut x1769, x1766, 0xaadd9db8); + let mut x1770: u32 = 0; + let mut x1771: u32 = 0; + fiat_bp512_mulx_u32(&mut x1770, &mut x1771, x1766, 0xdbe9c48b); + let mut x1772: u32 = 0; + let mut x1773: u32 = 0; + fiat_bp512_mulx_u32(&mut x1772, &mut x1773, x1766, 0x3fd4e6ae); + let mut x1774: u32 = 0; + let mut x1775: u32 = 0; + fiat_bp512_mulx_u32(&mut x1774, &mut x1775, x1766, 0x33c9fc07); + let mut x1776: u32 = 0; + let mut x1777: u32 = 0; + fiat_bp512_mulx_u32(&mut x1776, &mut x1777, x1766, 0xcb308db3); + let mut x1778: u32 = 0; + let mut x1779: u32 = 0; + fiat_bp512_mulx_u32(&mut x1778, &mut x1779, x1766, 0xb3c9d20e); + let mut x1780: u32 = 0; + let mut x1781: u32 = 0; + fiat_bp512_mulx_u32(&mut x1780, &mut x1781, x1766, 0xd6639cca); + let mut x1782: u32 = 0; + let mut x1783: u32 = 0; + fiat_bp512_mulx_u32(&mut x1782, &mut x1783, x1766, 0x70330871); + let mut x1784: u32 = 0; + let mut x1785: u32 = 0; + fiat_bp512_mulx_u32(&mut x1784, &mut x1785, x1766, 0x7d4d9b00); + let mut x1786: u32 = 0; + let mut x1787: u32 = 0; + fiat_bp512_mulx_u32(&mut x1786, &mut x1787, x1766, 0x9bc66842); + let mut x1788: u32 = 0; + let mut x1789: u32 = 0; + fiat_bp512_mulx_u32(&mut x1788, &mut x1789, x1766, 0xaecda12a); + let mut x1790: u32 = 0; + let mut x1791: u32 = 0; + fiat_bp512_mulx_u32(&mut x1790, &mut x1791, x1766, 0xe6a380e6); + let mut x1792: u32 = 0; + let mut x1793: u32 = 0; + fiat_bp512_mulx_u32(&mut x1792, &mut x1793, x1766, 0x2881ff2f); + let mut x1794: u32 = 0; + let mut x1795: u32 = 0; + fiat_bp512_mulx_u32(&mut x1794, &mut x1795, x1766, 0x2d82c685); + let mut x1796: u32 = 0; + let mut x1797: u32 = 0; + fiat_bp512_mulx_u32(&mut x1796, &mut x1797, x1766, 0x28aa6056); + let mut x1798: u32 = 0; + let mut x1799: u32 = 0; + fiat_bp512_mulx_u32(&mut x1798, &mut x1799, x1766, 0x583a48f3); + let mut x1800: u32 = 0; + let mut x1801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1800, &mut x1801, 0x0, x1799, x1796); + let mut x1802: u32 = 0; + let mut x1803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1802, &mut x1803, x1801, x1797, x1794); + let mut x1804: u32 = 0; + let mut x1805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1804, &mut x1805, x1803, x1795, x1792); + let mut x1806: u32 = 0; + let mut x1807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1806, &mut x1807, x1805, x1793, x1790); + let mut x1808: u32 = 0; + let mut x1809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1808, &mut x1809, x1807, x1791, x1788); + let mut x1810: u32 = 0; + let mut x1811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1810, &mut x1811, x1809, x1789, x1786); + let mut x1812: u32 = 0; + let mut x1813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1812, &mut x1813, x1811, x1787, x1784); + let mut x1814: u32 = 0; + let mut x1815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1814, &mut x1815, x1813, x1785, x1782); + let mut x1816: u32 = 0; + let mut x1817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1816, &mut x1817, x1815, x1783, x1780); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, x1817, x1781, x1778); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1779, x1776); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1777, x1774); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1775, x1772); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1773, x1770); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1771, x1768); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, 0x0, x1736, x1798); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1738, x1800); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1740, x1802); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1742, x1804); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1744, x1806); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1746, x1808); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1748, x1810); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1750, x1812); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1752, x1814); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1754, x1816); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1756, x1818); + let mut x1852: u32 = 0; + let mut x1853: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1852, &mut x1853, x1851, x1758, x1820); + let mut x1854: u32 = 0; + let mut x1855: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1854, &mut x1855, x1853, x1760, x1822); + let mut x1856: u32 = 0; + let mut x1857: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1856, &mut x1857, x1855, x1762, x1824); + let mut x1858: u32 = 0; + let mut x1859: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1858, &mut x1859, x1857, x1764, x1826); + let mut x1860: u32 = 0; + let mut x1861: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1860, &mut x1861, x1859, ((x1765 as u32) + ((x1735 as u32) + ((x1703 as u32) + x1643))), x1828); + let mut x1862: u32 = 0; + let mut x1863: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1862, &mut x1863, 0x0, x1832, (arg1[15])); + let mut x1864: u32 = 0; + let mut x1865: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1864, &mut x1865, x1863, x1834, (0x0 as u32)); + let mut x1866: u32 = 0; + let mut x1867: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1866, &mut x1867, x1865, x1836, (0x0 as u32)); + let mut x1868: u32 = 0; + let mut x1869: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1868, &mut x1869, x1867, x1838, (0x0 as u32)); + let mut x1870: u32 = 0; + let mut x1871: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1870, &mut x1871, x1869, x1840, (0x0 as u32)); + let mut x1872: u32 = 0; + let mut x1873: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1872, &mut x1873, x1871, x1842, (0x0 as u32)); + let mut x1874: u32 = 0; + let mut x1875: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1874, &mut x1875, x1873, x1844, (0x0 as u32)); + let mut x1876: u32 = 0; + let mut x1877: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1876, &mut x1877, x1875, x1846, (0x0 as u32)); + let mut x1878: u32 = 0; + let mut x1879: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1878, &mut x1879, x1877, x1848, (0x0 as u32)); + let mut x1880: u32 = 0; + let mut x1881: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1880, &mut x1881, x1879, x1850, (0x0 as u32)); + let mut x1882: u32 = 0; + let mut x1883: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1882, &mut x1883, x1881, x1852, (0x0 as u32)); + let mut x1884: u32 = 0; + let mut x1885: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1884, &mut x1885, x1883, x1854, (0x0 as u32)); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, x1885, x1856, (0x0 as u32)); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1858, (0x0 as u32)); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1860, (0x0 as u32)); + let mut x1892: u32 = 0; + let mut x1893: u32 = 0; + fiat_bp512_mulx_u32(&mut x1892, &mut x1893, x1862, 0x7d89efc5); + let mut x1894: u32 = 0; + let mut x1895: u32 = 0; + fiat_bp512_mulx_u32(&mut x1894, &mut x1895, x1892, 0xaadd9db8); + let mut x1896: u32 = 0; + let mut x1897: u32 = 0; + fiat_bp512_mulx_u32(&mut x1896, &mut x1897, x1892, 0xdbe9c48b); + let mut x1898: u32 = 0; + let mut x1899: u32 = 0; + fiat_bp512_mulx_u32(&mut x1898, &mut x1899, x1892, 0x3fd4e6ae); + let mut x1900: u32 = 0; + let mut x1901: u32 = 0; + fiat_bp512_mulx_u32(&mut x1900, &mut x1901, x1892, 0x33c9fc07); + let mut x1902: u32 = 0; + let mut x1903: u32 = 0; + fiat_bp512_mulx_u32(&mut x1902, &mut x1903, x1892, 0xcb308db3); + let mut x1904: u32 = 0; + let mut x1905: u32 = 0; + fiat_bp512_mulx_u32(&mut x1904, &mut x1905, x1892, 0xb3c9d20e); + let mut x1906: u32 = 0; + let mut x1907: u32 = 0; + fiat_bp512_mulx_u32(&mut x1906, &mut x1907, x1892, 0xd6639cca); + let mut x1908: u32 = 0; + let mut x1909: u32 = 0; + fiat_bp512_mulx_u32(&mut x1908, &mut x1909, x1892, 0x70330871); + let mut x1910: u32 = 0; + let mut x1911: u32 = 0; + fiat_bp512_mulx_u32(&mut x1910, &mut x1911, x1892, 0x7d4d9b00); + let mut x1912: u32 = 0; + let mut x1913: u32 = 0; + fiat_bp512_mulx_u32(&mut x1912, &mut x1913, x1892, 0x9bc66842); + let mut x1914: u32 = 0; + let mut x1915: u32 = 0; + fiat_bp512_mulx_u32(&mut x1914, &mut x1915, x1892, 0xaecda12a); + let mut x1916: u32 = 0; + let mut x1917: u32 = 0; + fiat_bp512_mulx_u32(&mut x1916, &mut x1917, x1892, 0xe6a380e6); + let mut x1918: u32 = 0; + let mut x1919: u32 = 0; + fiat_bp512_mulx_u32(&mut x1918, &mut x1919, x1892, 0x2881ff2f); + let mut x1920: u32 = 0; + let mut x1921: u32 = 0; + fiat_bp512_mulx_u32(&mut x1920, &mut x1921, x1892, 0x2d82c685); + let mut x1922: u32 = 0; + let mut x1923: u32 = 0; + fiat_bp512_mulx_u32(&mut x1922, &mut x1923, x1892, 0x28aa6056); + let mut x1924: u32 = 0; + let mut x1925: u32 = 0; + fiat_bp512_mulx_u32(&mut x1924, &mut x1925, x1892, 0x583a48f3); + let mut x1926: u32 = 0; + let mut x1927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1926, &mut x1927, 0x0, x1925, x1922); + let mut x1928: u32 = 0; + let mut x1929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1928, &mut x1929, x1927, x1923, x1920); + let mut x1930: u32 = 0; + let mut x1931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1930, &mut x1931, x1929, x1921, x1918); + let mut x1932: u32 = 0; + let mut x1933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1932, &mut x1933, x1931, x1919, x1916); + let mut x1934: u32 = 0; + let mut x1935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1934, &mut x1935, x1933, x1917, x1914); + let mut x1936: u32 = 0; + let mut x1937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1936, &mut x1937, x1935, x1915, x1912); + let mut x1938: u32 = 0; + let mut x1939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1938, &mut x1939, x1937, x1913, x1910); + let mut x1940: u32 = 0; + let mut x1941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1940, &mut x1941, x1939, x1911, x1908); + let mut x1942: u32 = 0; + let mut x1943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1942, &mut x1943, x1941, x1909, x1906); + let mut x1944: u32 = 0; + let mut x1945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1944, &mut x1945, x1943, x1907, x1904); + let mut x1946: u32 = 0; + let mut x1947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1946, &mut x1947, x1945, x1905, x1902); + let mut x1948: u32 = 0; + let mut x1949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1948, &mut x1949, x1947, x1903, x1900); + let mut x1950: u32 = 0; + let mut x1951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1950, &mut x1951, x1949, x1901, x1898); + let mut x1952: u32 = 0; + let mut x1953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1952, &mut x1953, x1951, x1899, x1896); + let mut x1954: u32 = 0; + let mut x1955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1954, &mut x1955, x1953, x1897, x1894); + let mut x1956: u32 = 0; + let mut x1957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1956, &mut x1957, 0x0, x1862, x1924); + let mut x1958: u32 = 0; + let mut x1959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1958, &mut x1959, x1957, x1864, x1926); + let mut x1960: u32 = 0; + let mut x1961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1960, &mut x1961, x1959, x1866, x1928); + let mut x1962: u32 = 0; + let mut x1963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1962, &mut x1963, x1961, x1868, x1930); + let mut x1964: u32 = 0; + let mut x1965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1964, &mut x1965, x1963, x1870, x1932); + let mut x1966: u32 = 0; + let mut x1967: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1966, &mut x1967, x1965, x1872, x1934); + let mut x1968: u32 = 0; + let mut x1969: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1968, &mut x1969, x1967, x1874, x1936); + let mut x1970: u32 = 0; + let mut x1971: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1970, &mut x1971, x1969, x1876, x1938); + let mut x1972: u32 = 0; + let mut x1973: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1972, &mut x1973, x1971, x1878, x1940); + let mut x1974: u32 = 0; + let mut x1975: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1974, &mut x1975, x1973, x1880, x1942); + let mut x1976: u32 = 0; + let mut x1977: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1976, &mut x1977, x1975, x1882, x1944); + let mut x1978: u32 = 0; + let mut x1979: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1978, &mut x1979, x1977, x1884, x1946); + let mut x1980: u32 = 0; + let mut x1981: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1980, &mut x1981, x1979, x1886, x1948); + let mut x1982: u32 = 0; + let mut x1983: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1982, &mut x1983, x1981, x1888, x1950); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, x1983, x1890, x1952); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, ((x1891 as u32) + ((x1861 as u32) + ((x1829 as u32) + x1769))), x1954); + let x1988: u32 = ((x1987 as u32) + ((x1955 as u32) + x1895)); + let mut x1989: u32 = 0; + let mut x1990: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1989, &mut x1990, 0x0, x1958, 0x583a48f3); + let mut x1991: u32 = 0; + let mut x1992: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1991, &mut x1992, x1990, x1960, 0x28aa6056); + let mut x1993: u32 = 0; + let mut x1994: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1993, &mut x1994, x1992, x1962, 0x2d82c685); + let mut x1995: u32 = 0; + let mut x1996: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1995, &mut x1996, x1994, x1964, 0x2881ff2f); + let mut x1997: u32 = 0; + let mut x1998: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1997, &mut x1998, x1996, x1966, 0xe6a380e6); + let mut x1999: u32 = 0; + let mut x2000: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1999, &mut x2000, x1998, x1968, 0xaecda12a); + let mut x2001: u32 = 0; + let mut x2002: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2001, &mut x2002, x2000, x1970, 0x9bc66842); + let mut x2003: u32 = 0; + let mut x2004: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2003, &mut x2004, x2002, x1972, 0x7d4d9b00); + let mut x2005: u32 = 0; + let mut x2006: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2005, &mut x2006, x2004, x1974, 0x70330871); + let mut x2007: u32 = 0; + let mut x2008: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2007, &mut x2008, x2006, x1976, 0xd6639cca); + let mut x2009: u32 = 0; + let mut x2010: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2009, &mut x2010, x2008, x1978, 0xb3c9d20e); + let mut x2011: u32 = 0; + let mut x2012: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2011, &mut x2012, x2010, x1980, 0xcb308db3); + let mut x2013: u32 = 0; + let mut x2014: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2013, &mut x2014, x2012, x1982, 0x33c9fc07); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2015, &mut x2016, x2014, x1984, 0x3fd4e6ae); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2017, &mut x2018, x2016, x1986, 0xdbe9c48b); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2019, &mut x2020, x2018, x1988, 0xaadd9db8); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2021, &mut x2022, x2020, (0x0 as u32), (0x0 as u32)); + let mut x2023: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2023, x2022, x1989, x1958); + let mut x2024: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2024, x2022, x1991, x1960); + let mut x2025: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2025, x2022, x1993, x1962); + let mut x2026: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2026, x2022, x1995, x1964); + let mut x2027: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2027, x2022, x1997, x1966); + let mut x2028: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2028, x2022, x1999, x1968); + let mut x2029: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2029, x2022, x2001, x1970); + let mut x2030: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2030, x2022, x2003, x1972); + let mut x2031: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2031, x2022, x2005, x1974); + let mut x2032: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2032, x2022, x2007, x1976); + let mut x2033: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2033, x2022, x2009, x1978); + let mut x2034: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2034, x2022, x2011, x1980); + let mut x2035: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2035, x2022, x2013, x1982); + let mut x2036: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2036, x2022, x2015, x1984); + let mut x2037: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2037, x2022, x2017, x1986); + let mut x2038: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2038, x2022, x2019, x1988); + out1[0] = x2023; + out1[1] = x2024; + out1[2] = x2025; + out1[3] = x2026; + out1[4] = x2027; + out1[5] = x2028; + out1[6] = x2029; + out1[7] = x2030; + out1[8] = x2031; + out1[9] = x2032; + out1[10] = x2033; + out1[11] = x2034; + out1[12] = x2035; + out1[13] = x2036; + out1[14] = x2037; + out1[15] = x2038; +} + +/// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, 0x3c4c9d05); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, 0xa9ff6450); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, 0x202e1940); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, 0x2056eecc); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, 0xa16daa5f); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, 0xd42bff83); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, 0x19486fd8); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, 0xd5898057); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, 0xe0c19a77); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, 0x83514a25); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, 0x53b7f9bc); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, 0x905affd3); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, 0x793fb130); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, 0x27157905); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, 0x49ad144a); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, 0x6158f205); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let mut x79: u32 = 0; + let mut x80: u32 = 0; + fiat_bp512_mulx_u32(&mut x79, &mut x80, x47, 0x7d89efc5); + let mut x81: u32 = 0; + let mut x82: u32 = 0; + fiat_bp512_mulx_u32(&mut x81, &mut x82, x79, 0xaadd9db8); + let mut x83: u32 = 0; + let mut x84: u32 = 0; + fiat_bp512_mulx_u32(&mut x83, &mut x84, x79, 0xdbe9c48b); + let mut x85: u32 = 0; + let mut x86: u32 = 0; + fiat_bp512_mulx_u32(&mut x85, &mut x86, x79, 0x3fd4e6ae); + let mut x87: u32 = 0; + let mut x88: u32 = 0; + fiat_bp512_mulx_u32(&mut x87, &mut x88, x79, 0x33c9fc07); + let mut x89: u32 = 0; + let mut x90: u32 = 0; + fiat_bp512_mulx_u32(&mut x89, &mut x90, x79, 0xcb308db3); + let mut x91: u32 = 0; + let mut x92: u32 = 0; + fiat_bp512_mulx_u32(&mut x91, &mut x92, x79, 0xb3c9d20e); + let mut x93: u32 = 0; + let mut x94: u32 = 0; + fiat_bp512_mulx_u32(&mut x93, &mut x94, x79, 0xd6639cca); + let mut x95: u32 = 0; + let mut x96: u32 = 0; + fiat_bp512_mulx_u32(&mut x95, &mut x96, x79, 0x70330871); + let mut x97: u32 = 0; + let mut x98: u32 = 0; + fiat_bp512_mulx_u32(&mut x97, &mut x98, x79, 0x7d4d9b00); + let mut x99: u32 = 0; + let mut x100: u32 = 0; + fiat_bp512_mulx_u32(&mut x99, &mut x100, x79, 0x9bc66842); + let mut x101: u32 = 0; + let mut x102: u32 = 0; + fiat_bp512_mulx_u32(&mut x101, &mut x102, x79, 0xaecda12a); + let mut x103: u32 = 0; + let mut x104: u32 = 0; + fiat_bp512_mulx_u32(&mut x103, &mut x104, x79, 0xe6a380e6); + let mut x105: u32 = 0; + let mut x106: u32 = 0; + fiat_bp512_mulx_u32(&mut x105, &mut x106, x79, 0x2881ff2f); + let mut x107: u32 = 0; + let mut x108: u32 = 0; + fiat_bp512_mulx_u32(&mut x107, &mut x108, x79, 0x2d82c685); + let mut x109: u32 = 0; + let mut x110: u32 = 0; + fiat_bp512_mulx_u32(&mut x109, &mut x110, x79, 0x28aa6056); + let mut x111: u32 = 0; + let mut x112: u32 = 0; + fiat_bp512_mulx_u32(&mut x111, &mut x112, x79, 0x583a48f3); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x113, &mut x114, 0x0, x112, x109); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x110, x107); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x108, x105); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x106, x103); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x104, x101); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x123, &mut x124, x122, x102, x99); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x125, &mut x126, x124, x100, x97); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x127, &mut x128, x126, x98, x95); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x129, &mut x130, x128, x96, x93); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x131, &mut x132, x130, x94, x91); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x133, &mut x134, x132, x92, x89); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x135, &mut x136, x134, x90, x87); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x137, &mut x138, x136, x88, x85); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x139, &mut x140, x138, x86, x83); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x141, &mut x142, x140, x84, x81); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x143, &mut x144, 0x0, x47, x111); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, x144, x49, x113); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x51, x115); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x53, x117); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x55, x119); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x57, x121); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x59, x123); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x61, x125); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x63, x127); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x65, x129); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x67, x131); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x69, x133); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x71, x135); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x73, x137); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x75, x139); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x77, x141); + let mut x175: u32 = 0; + let mut x176: u32 = 0; + fiat_bp512_mulx_u32(&mut x175, &mut x176, x1, 0x3c4c9d05); + let mut x177: u32 = 0; + let mut x178: u32 = 0; + fiat_bp512_mulx_u32(&mut x177, &mut x178, x1, 0xa9ff6450); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, 0x202e1940); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, 0x2056eecc); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, 0xa16daa5f); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, 0xd42bff83); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, 0x19486fd8); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, 0xd5898057); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, 0xe0c19a77); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, 0x83514a25); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, 0x53b7f9bc); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, 0x905affd3); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, 0x793fb130); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, 0x27157905); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, 0x49ad144a); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, 0x6158f205); + let mut x207: u32 = 0; + let mut x208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x207, &mut x208, 0x0, x206, x203); + let mut x209: u32 = 0; + let mut x210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x209, &mut x210, x208, x204, x201); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, x210, x202, x199); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x200, x197); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x198, x195); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x196, x193); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x194, x191); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x192, x189); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x190, x187); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x188, x185); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x186, x183); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x184, x181); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x182, x179); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x180, x177); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x178, x175); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, 0x0, x145, x205); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x147, x207); + let mut x241: u32 = 0; + let mut x242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x241, &mut x242, x240, x149, x209); + let mut x243: u32 = 0; + let mut x244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x243, &mut x244, x242, x151, x211); + let mut x245: u32 = 0; + let mut x246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x245, &mut x246, x244, x153, x213); + let mut x247: u32 = 0; + let mut x248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x247, &mut x248, x246, x155, x215); + let mut x249: u32 = 0; + let mut x250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x249, &mut x250, x248, x157, x217); + let mut x251: u32 = 0; + let mut x252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x251, &mut x252, x250, x159, x219); + let mut x253: u32 = 0; + let mut x254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x253, &mut x254, x252, x161, x221); + let mut x255: u32 = 0; + let mut x256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x255, &mut x256, x254, x163, x223); + let mut x257: u32 = 0; + let mut x258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x257, &mut x258, x256, x165, x225); + let mut x259: u32 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x259, &mut x260, x258, x167, x227); + let mut x261: u32 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x261, &mut x262, x260, x169, x229); + let mut x263: u32 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x263, &mut x264, x262, x171, x231); + let mut x265: u32 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x265, &mut x266, x264, x173, x233); + let mut x267: u32 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x267, &mut x268, x266, (((x174 as u32) + ((x78 as u32) + x18)) + ((x142 as u32) + x82)), x235); + let mut x269: u32 = 0; + let mut x270: u32 = 0; + fiat_bp512_mulx_u32(&mut x269, &mut x270, x237, 0x7d89efc5); + let mut x271: u32 = 0; + let mut x272: u32 = 0; + fiat_bp512_mulx_u32(&mut x271, &mut x272, x269, 0xaadd9db8); + let mut x273: u32 = 0; + let mut x274: u32 = 0; + fiat_bp512_mulx_u32(&mut x273, &mut x274, x269, 0xdbe9c48b); + let mut x275: u32 = 0; + let mut x276: u32 = 0; + fiat_bp512_mulx_u32(&mut x275, &mut x276, x269, 0x3fd4e6ae); + let mut x277: u32 = 0; + let mut x278: u32 = 0; + fiat_bp512_mulx_u32(&mut x277, &mut x278, x269, 0x33c9fc07); + let mut x279: u32 = 0; + let mut x280: u32 = 0; + fiat_bp512_mulx_u32(&mut x279, &mut x280, x269, 0xcb308db3); + let mut x281: u32 = 0; + let mut x282: u32 = 0; + fiat_bp512_mulx_u32(&mut x281, &mut x282, x269, 0xb3c9d20e); + let mut x283: u32 = 0; + let mut x284: u32 = 0; + fiat_bp512_mulx_u32(&mut x283, &mut x284, x269, 0xd6639cca); + let mut x285: u32 = 0; + let mut x286: u32 = 0; + fiat_bp512_mulx_u32(&mut x285, &mut x286, x269, 0x70330871); + let mut x287: u32 = 0; + let mut x288: u32 = 0; + fiat_bp512_mulx_u32(&mut x287, &mut x288, x269, 0x7d4d9b00); + let mut x289: u32 = 0; + let mut x290: u32 = 0; + fiat_bp512_mulx_u32(&mut x289, &mut x290, x269, 0x9bc66842); + let mut x291: u32 = 0; + let mut x292: u32 = 0; + fiat_bp512_mulx_u32(&mut x291, &mut x292, x269, 0xaecda12a); + let mut x293: u32 = 0; + let mut x294: u32 = 0; + fiat_bp512_mulx_u32(&mut x293, &mut x294, x269, 0xe6a380e6); + let mut x295: u32 = 0; + let mut x296: u32 = 0; + fiat_bp512_mulx_u32(&mut x295, &mut x296, x269, 0x2881ff2f); + let mut x297: u32 = 0; + let mut x298: u32 = 0; + fiat_bp512_mulx_u32(&mut x297, &mut x298, x269, 0x2d82c685); + let mut x299: u32 = 0; + let mut x300: u32 = 0; + fiat_bp512_mulx_u32(&mut x299, &mut x300, x269, 0x28aa6056); + let mut x301: u32 = 0; + let mut x302: u32 = 0; + fiat_bp512_mulx_u32(&mut x301, &mut x302, x269, 0x583a48f3); + let mut x303: u32 = 0; + let mut x304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x303, &mut x304, 0x0, x302, x299); + let mut x305: u32 = 0; + let mut x306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x305, &mut x306, x304, x300, x297); + let mut x307: u32 = 0; + let mut x308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x307, &mut x308, x306, x298, x295); + let mut x309: u32 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x309, &mut x310, x308, x296, x293); + let mut x311: u32 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x311, &mut x312, x310, x294, x291); + let mut x313: u32 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x313, &mut x314, x312, x292, x289); + let mut x315: u32 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x315, &mut x316, x314, x290, x287); + let mut x317: u32 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x317, &mut x318, x316, x288, x285); + let mut x319: u32 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x319, &mut x320, x318, x286, x283); + let mut x321: u32 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x321, &mut x322, x320, x284, x281); + let mut x323: u32 = 0; + let mut x324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x323, &mut x324, x322, x282, x279); + let mut x325: u32 = 0; + let mut x326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x325, &mut x326, x324, x280, x277); + let mut x327: u32 = 0; + let mut x328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x327, &mut x328, x326, x278, x275); + let mut x329: u32 = 0; + let mut x330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x329, &mut x330, x328, x276, x273); + let mut x331: u32 = 0; + let mut x332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x331, &mut x332, x330, x274, x271); + let mut x333: u32 = 0; + let mut x334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x333, &mut x334, 0x0, x237, x301); + let mut x335: u32 = 0; + let mut x336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x335, &mut x336, x334, x239, x303); + let mut x337: u32 = 0; + let mut x338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x337, &mut x338, x336, x241, x305); + let mut x339: u32 = 0; + let mut x340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x339, &mut x340, x338, x243, x307); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, x340, x245, x309); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x247, x311); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x249, x313); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x251, x315); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x253, x317); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x255, x319); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x257, x321); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x259, x323); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x261, x325); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x263, x327); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x265, x329); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x267, x331); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp512_mulx_u32(&mut x365, &mut x366, x2, 0x3c4c9d05); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp512_mulx_u32(&mut x367, &mut x368, x2, 0xa9ff6450); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp512_mulx_u32(&mut x369, &mut x370, x2, 0x202e1940); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp512_mulx_u32(&mut x371, &mut x372, x2, 0x2056eecc); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp512_mulx_u32(&mut x373, &mut x374, x2, 0xa16daa5f); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp512_mulx_u32(&mut x375, &mut x376, x2, 0xd42bff83); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp512_mulx_u32(&mut x377, &mut x378, x2, 0x19486fd8); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp512_mulx_u32(&mut x379, &mut x380, x2, 0xd5898057); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp512_mulx_u32(&mut x381, &mut x382, x2, 0xe0c19a77); + let mut x383: u32 = 0; + let mut x384: u32 = 0; + fiat_bp512_mulx_u32(&mut x383, &mut x384, x2, 0x83514a25); + let mut x385: u32 = 0; + let mut x386: u32 = 0; + fiat_bp512_mulx_u32(&mut x385, &mut x386, x2, 0x53b7f9bc); + let mut x387: u32 = 0; + let mut x388: u32 = 0; + fiat_bp512_mulx_u32(&mut x387, &mut x388, x2, 0x905affd3); + let mut x389: u32 = 0; + let mut x390: u32 = 0; + fiat_bp512_mulx_u32(&mut x389, &mut x390, x2, 0x793fb130); + let mut x391: u32 = 0; + let mut x392: u32 = 0; + fiat_bp512_mulx_u32(&mut x391, &mut x392, x2, 0x27157905); + let mut x393: u32 = 0; + let mut x394: u32 = 0; + fiat_bp512_mulx_u32(&mut x393, &mut x394, x2, 0x49ad144a); + let mut x395: u32 = 0; + let mut x396: u32 = 0; + fiat_bp512_mulx_u32(&mut x395, &mut x396, x2, 0x6158f205); + let mut x397: u32 = 0; + let mut x398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x397, &mut x398, 0x0, x396, x393); + let mut x399: u32 = 0; + let mut x400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x399, &mut x400, x398, x394, x391); + let mut x401: u32 = 0; + let mut x402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x401, &mut x402, x400, x392, x389); + let mut x403: u32 = 0; + let mut x404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x403, &mut x404, x402, x390, x387); + let mut x405: u32 = 0; + let mut x406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x405, &mut x406, x404, x388, x385); + let mut x407: u32 = 0; + let mut x408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x407, &mut x408, x406, x386, x383); + let mut x409: u32 = 0; + let mut x410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x409, &mut x410, x408, x384, x381); + let mut x411: u32 = 0; + let mut x412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x411, &mut x412, x410, x382, x379); + let mut x413: u32 = 0; + let mut x414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x413, &mut x414, x412, x380, x377); + let mut x415: u32 = 0; + let mut x416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x415, &mut x416, x414, x378, x375); + let mut x417: u32 = 0; + let mut x418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x417, &mut x418, x416, x376, x373); + let mut x419: u32 = 0; + let mut x420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x419, &mut x420, x418, x374, x371); + let mut x421: u32 = 0; + let mut x422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x421, &mut x422, x420, x372, x369); + let mut x423: u32 = 0; + let mut x424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x423, &mut x424, x422, x370, x367); + let mut x425: u32 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x425, &mut x426, x424, x368, x365); + let mut x427: u32 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x427, &mut x428, 0x0, x335, x395); + let mut x429: u32 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x429, &mut x430, x428, x337, x397); + let mut x431: u32 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x431, &mut x432, x430, x339, x399); + let mut x433: u32 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x433, &mut x434, x432, x341, x401); + let mut x435: u32 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x435, &mut x436, x434, x343, x403); + let mut x437: u32 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x437, &mut x438, x436, x345, x405); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, x438, x347, x407); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x349, x409); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x351, x411); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x353, x413); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x355, x415); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x357, x417); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x359, x419); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x361, x421); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x363, x423); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, (((x364 as u32) + ((x268 as u32) + ((x236 as u32) + x176))) + ((x332 as u32) + x272)), x425); + let mut x459: u32 = 0; + let mut x460: u32 = 0; + fiat_bp512_mulx_u32(&mut x459, &mut x460, x427, 0x7d89efc5); + let mut x461: u32 = 0; + let mut x462: u32 = 0; + fiat_bp512_mulx_u32(&mut x461, &mut x462, x459, 0xaadd9db8); + let mut x463: u32 = 0; + let mut x464: u32 = 0; + fiat_bp512_mulx_u32(&mut x463, &mut x464, x459, 0xdbe9c48b); + let mut x465: u32 = 0; + let mut x466: u32 = 0; + fiat_bp512_mulx_u32(&mut x465, &mut x466, x459, 0x3fd4e6ae); + let mut x467: u32 = 0; + let mut x468: u32 = 0; + fiat_bp512_mulx_u32(&mut x467, &mut x468, x459, 0x33c9fc07); + let mut x469: u32 = 0; + let mut x470: u32 = 0; + fiat_bp512_mulx_u32(&mut x469, &mut x470, x459, 0xcb308db3); + let mut x471: u32 = 0; + let mut x472: u32 = 0; + fiat_bp512_mulx_u32(&mut x471, &mut x472, x459, 0xb3c9d20e); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x459, 0xd6639cca); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x459, 0x70330871); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x459, 0x7d4d9b00); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x459, 0x9bc66842); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x459, 0xaecda12a); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x459, 0xe6a380e6); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x459, 0x2881ff2f); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x459, 0x2d82c685); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x459, 0x28aa6056); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x459, 0x583a48f3); + let mut x493: u32 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x493, &mut x494, 0x0, x492, x489); + let mut x495: u32 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x495, &mut x496, x494, x490, x487); + let mut x497: u32 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x497, &mut x498, x496, x488, x485); + let mut x499: u32 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x499, &mut x500, x498, x486, x483); + let mut x501: u32 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x501, &mut x502, x500, x484, x481); + let mut x503: u32 = 0; + let mut x504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x503, &mut x504, x502, x482, x479); + let mut x505: u32 = 0; + let mut x506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x505, &mut x506, x504, x480, x477); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, x506, x478, x475); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x476, x473); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x474, x471); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x472, x469); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x470, x467); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x468, x465); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x466, x463); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x464, x461); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, 0x0, x427, x491); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x429, x493); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x431, x495); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x433, x497); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x435, x499); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x437, x501); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x439, x503); + let mut x537: u32 = 0; + let mut x538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x537, &mut x538, x536, x441, x505); + let mut x539: u32 = 0; + let mut x540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x539, &mut x540, x538, x443, x507); + let mut x541: u32 = 0; + let mut x542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x541, &mut x542, x540, x445, x509); + let mut x543: u32 = 0; + let mut x544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x543, &mut x544, x542, x447, x511); + let mut x545: u32 = 0; + let mut x546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x545, &mut x546, x544, x449, x513); + let mut x547: u32 = 0; + let mut x548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x547, &mut x548, x546, x451, x515); + let mut x549: u32 = 0; + let mut x550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x549, &mut x550, x548, x453, x517); + let mut x551: u32 = 0; + let mut x552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x551, &mut x552, x550, x455, x519); + let mut x553: u32 = 0; + let mut x554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x553, &mut x554, x552, x457, x521); + let mut x555: u32 = 0; + let mut x556: u32 = 0; + fiat_bp512_mulx_u32(&mut x555, &mut x556, x3, 0x3c4c9d05); + let mut x557: u32 = 0; + let mut x558: u32 = 0; + fiat_bp512_mulx_u32(&mut x557, &mut x558, x3, 0xa9ff6450); + let mut x559: u32 = 0; + let mut x560: u32 = 0; + fiat_bp512_mulx_u32(&mut x559, &mut x560, x3, 0x202e1940); + let mut x561: u32 = 0; + let mut x562: u32 = 0; + fiat_bp512_mulx_u32(&mut x561, &mut x562, x3, 0x2056eecc); + let mut x563: u32 = 0; + let mut x564: u32 = 0; + fiat_bp512_mulx_u32(&mut x563, &mut x564, x3, 0xa16daa5f); + let mut x565: u32 = 0; + let mut x566: u32 = 0; + fiat_bp512_mulx_u32(&mut x565, &mut x566, x3, 0xd42bff83); + let mut x567: u32 = 0; + let mut x568: u32 = 0; + fiat_bp512_mulx_u32(&mut x567, &mut x568, x3, 0x19486fd8); + let mut x569: u32 = 0; + let mut x570: u32 = 0; + fiat_bp512_mulx_u32(&mut x569, &mut x570, x3, 0xd5898057); + let mut x571: u32 = 0; + let mut x572: u32 = 0; + fiat_bp512_mulx_u32(&mut x571, &mut x572, x3, 0xe0c19a77); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, 0x83514a25); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, 0x53b7f9bc); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, 0x905affd3); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, 0x793fb130); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, 0x27157905); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, 0x49ad144a); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, 0x6158f205); + let mut x587: u32 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x587, &mut x588, 0x0, x586, x583); + let mut x589: u32 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x589, &mut x590, x588, x584, x581); + let mut x591: u32 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x591, &mut x592, x590, x582, x579); + let mut x593: u32 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x593, &mut x594, x592, x580, x577); + let mut x595: u32 = 0; + let mut x596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x595, &mut x596, x594, x578, x575); + let mut x597: u32 = 0; + let mut x598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x597, &mut x598, x596, x576, x573); + let mut x599: u32 = 0; + let mut x600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x599, &mut x600, x598, x574, x571); + let mut x601: u32 = 0; + let mut x602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x601, &mut x602, x600, x572, x569); + let mut x603: u32 = 0; + let mut x604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x603, &mut x604, x602, x570, x567); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, x604, x568, x565); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x566, x563); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x564, x561); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x562, x559); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x560, x557); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x558, x555); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, 0x0, x525, x585); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x527, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x529, x589); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x531, x591); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x533, x593); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x535, x595); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x537, x597); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x539, x599); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x541, x601); + let mut x635: u32 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x635, &mut x636, x634, x543, x603); + let mut x637: u32 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x637, &mut x638, x636, x545, x605); + let mut x639: u32 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x639, &mut x640, x638, x547, x607); + let mut x641: u32 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x641, &mut x642, x640, x549, x609); + let mut x643: u32 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x643, &mut x644, x642, x551, x611); + let mut x645: u32 = 0; + let mut x646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x645, &mut x646, x644, x553, x613); + let mut x647: u32 = 0; + let mut x648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x647, &mut x648, x646, (((x554 as u32) + ((x458 as u32) + ((x426 as u32) + x366))) + ((x522 as u32) + x462)), x615); + let mut x649: u32 = 0; + let mut x650: u32 = 0; + fiat_bp512_mulx_u32(&mut x649, &mut x650, x617, 0x7d89efc5); + let mut x651: u32 = 0; + let mut x652: u32 = 0; + fiat_bp512_mulx_u32(&mut x651, &mut x652, x649, 0xaadd9db8); + let mut x653: u32 = 0; + let mut x654: u32 = 0; + fiat_bp512_mulx_u32(&mut x653, &mut x654, x649, 0xdbe9c48b); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp512_mulx_u32(&mut x655, &mut x656, x649, 0x3fd4e6ae); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp512_mulx_u32(&mut x657, &mut x658, x649, 0x33c9fc07); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp512_mulx_u32(&mut x659, &mut x660, x649, 0xcb308db3); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp512_mulx_u32(&mut x661, &mut x662, x649, 0xb3c9d20e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp512_mulx_u32(&mut x663, &mut x664, x649, 0xd6639cca); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp512_mulx_u32(&mut x665, &mut x666, x649, 0x70330871); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp512_mulx_u32(&mut x667, &mut x668, x649, 0x7d4d9b00); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp512_mulx_u32(&mut x669, &mut x670, x649, 0x9bc66842); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp512_mulx_u32(&mut x671, &mut x672, x649, 0xaecda12a); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp512_mulx_u32(&mut x673, &mut x674, x649, 0xe6a380e6); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp512_mulx_u32(&mut x675, &mut x676, x649, 0x2881ff2f); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp512_mulx_u32(&mut x677, &mut x678, x649, 0x2d82c685); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp512_mulx_u32(&mut x679, &mut x680, x649, 0x28aa6056); + let mut x681: u32 = 0; + let mut x682: u32 = 0; + fiat_bp512_mulx_u32(&mut x681, &mut x682, x649, 0x583a48f3); + let mut x683: u32 = 0; + let mut x684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x683, &mut x684, 0x0, x682, x679); + let mut x685: u32 = 0; + let mut x686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x685, &mut x686, x684, x680, x677); + let mut x687: u32 = 0; + let mut x688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x687, &mut x688, x686, x678, x675); + let mut x689: u32 = 0; + let mut x690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x689, &mut x690, x688, x676, x673); + let mut x691: u32 = 0; + let mut x692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x691, &mut x692, x690, x674, x671); + let mut x693: u32 = 0; + let mut x694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x693, &mut x694, x692, x672, x669); + let mut x695: u32 = 0; + let mut x696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x695, &mut x696, x694, x670, x667); + let mut x697: u32 = 0; + let mut x698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x697, &mut x698, x696, x668, x665); + let mut x699: u32 = 0; + let mut x700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x699, &mut x700, x698, x666, x663); + let mut x701: u32 = 0; + let mut x702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x701, &mut x702, x700, x664, x661); + let mut x703: u32 = 0; + let mut x704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x703, &mut x704, x702, x662, x659); + let mut x705: u32 = 0; + let mut x706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x705, &mut x706, x704, x660, x657); + let mut x707: u32 = 0; + let mut x708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x707, &mut x708, x706, x658, x655); + let mut x709: u32 = 0; + let mut x710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x709, &mut x710, x708, x656, x653); + let mut x711: u32 = 0; + let mut x712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x711, &mut x712, x710, x654, x651); + let mut x713: u32 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x713, &mut x714, 0x0, x617, x681); + let mut x715: u32 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x715, &mut x716, x714, x619, x683); + let mut x717: u32 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x717, &mut x718, x716, x621, x685); + let mut x719: u32 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x719, &mut x720, x718, x623, x687); + let mut x721: u32 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x721, &mut x722, x720, x625, x689); + let mut x723: u32 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x723, &mut x724, x722, x627, x691); + let mut x725: u32 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x725, &mut x726, x724, x629, x693); + let mut x727: u32 = 0; + let mut x728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x727, &mut x728, x726, x631, x695); + let mut x729: u32 = 0; + let mut x730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x729, &mut x730, x728, x633, x697); + let mut x731: u32 = 0; + let mut x732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x731, &mut x732, x730, x635, x699); + let mut x733: u32 = 0; + let mut x734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x733, &mut x734, x732, x637, x701); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, x734, x639, x703); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x641, x705); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x643, x707); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x645, x709); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x647, x711); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp512_mulx_u32(&mut x745, &mut x746, x4, 0x3c4c9d05); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp512_mulx_u32(&mut x747, &mut x748, x4, 0xa9ff6450); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp512_mulx_u32(&mut x749, &mut x750, x4, 0x202e1940); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp512_mulx_u32(&mut x751, &mut x752, x4, 0x2056eecc); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp512_mulx_u32(&mut x753, &mut x754, x4, 0xa16daa5f); + let mut x755: u32 = 0; + let mut x756: u32 = 0; + fiat_bp512_mulx_u32(&mut x755, &mut x756, x4, 0xd42bff83); + let mut x757: u32 = 0; + let mut x758: u32 = 0; + fiat_bp512_mulx_u32(&mut x757, &mut x758, x4, 0x19486fd8); + let mut x759: u32 = 0; + let mut x760: u32 = 0; + fiat_bp512_mulx_u32(&mut x759, &mut x760, x4, 0xd5898057); + let mut x761: u32 = 0; + let mut x762: u32 = 0; + fiat_bp512_mulx_u32(&mut x761, &mut x762, x4, 0xe0c19a77); + let mut x763: u32 = 0; + let mut x764: u32 = 0; + fiat_bp512_mulx_u32(&mut x763, &mut x764, x4, 0x83514a25); + let mut x765: u32 = 0; + let mut x766: u32 = 0; + fiat_bp512_mulx_u32(&mut x765, &mut x766, x4, 0x53b7f9bc); + let mut x767: u32 = 0; + let mut x768: u32 = 0; + fiat_bp512_mulx_u32(&mut x767, &mut x768, x4, 0x905affd3); + let mut x769: u32 = 0; + let mut x770: u32 = 0; + fiat_bp512_mulx_u32(&mut x769, &mut x770, x4, 0x793fb130); + let mut x771: u32 = 0; + let mut x772: u32 = 0; + fiat_bp512_mulx_u32(&mut x771, &mut x772, x4, 0x27157905); + let mut x773: u32 = 0; + let mut x774: u32 = 0; + fiat_bp512_mulx_u32(&mut x773, &mut x774, x4, 0x49ad144a); + let mut x775: u32 = 0; + let mut x776: u32 = 0; + fiat_bp512_mulx_u32(&mut x775, &mut x776, x4, 0x6158f205); + let mut x777: u32 = 0; + let mut x778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x777, &mut x778, 0x0, x776, x773); + let mut x779: u32 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x779, &mut x780, x778, x774, x771); + let mut x781: u32 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x781, &mut x782, x780, x772, x769); + let mut x783: u32 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x783, &mut x784, x782, x770, x767); + let mut x785: u32 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x785, &mut x786, x784, x768, x765); + let mut x787: u32 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x787, &mut x788, x786, x766, x763); + let mut x789: u32 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x789, &mut x790, x788, x764, x761); + let mut x791: u32 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x791, &mut x792, x790, x762, x759); + let mut x793: u32 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x793, &mut x794, x792, x760, x757); + let mut x795: u32 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x795, &mut x796, x794, x758, x755); + let mut x797: u32 = 0; + let mut x798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x797, &mut x798, x796, x756, x753); + let mut x799: u32 = 0; + let mut x800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x799, &mut x800, x798, x754, x751); + let mut x801: u32 = 0; + let mut x802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x801, &mut x802, x800, x752, x749); + let mut x803: u32 = 0; + let mut x804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x803, &mut x804, x802, x750, x747); + let mut x805: u32 = 0; + let mut x806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x805, &mut x806, x804, x748, x745); + let mut x807: u32 = 0; + let mut x808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x807, &mut x808, 0x0, x715, x775); + let mut x809: u32 = 0; + let mut x810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x809, &mut x810, x808, x717, x777); + let mut x811: u32 = 0; + let mut x812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x811, &mut x812, x810, x719, x779); + let mut x813: u32 = 0; + let mut x814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x813, &mut x814, x812, x721, x781); + let mut x815: u32 = 0; + let mut x816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x815, &mut x816, x814, x723, x783); + let mut x817: u32 = 0; + let mut x818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x817, &mut x818, x816, x725, x785); + let mut x819: u32 = 0; + let mut x820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x819, &mut x820, x818, x727, x787); + let mut x821: u32 = 0; + let mut x822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x821, &mut x822, x820, x729, x789); + let mut x823: u32 = 0; + let mut x824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x823, &mut x824, x822, x731, x791); + let mut x825: u32 = 0; + let mut x826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x825, &mut x826, x824, x733, x793); + let mut x827: u32 = 0; + let mut x828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x827, &mut x828, x826, x735, x795); + let mut x829: u32 = 0; + let mut x830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x829, &mut x830, x828, x737, x797); + let mut x831: u32 = 0; + let mut x832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x831, &mut x832, x830, x739, x799); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, x832, x741, x801); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x743, x803); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, (((x744 as u32) + ((x648 as u32) + ((x616 as u32) + x556))) + ((x712 as u32) + x652)), x805); + let mut x839: u32 = 0; + let mut x840: u32 = 0; + fiat_bp512_mulx_u32(&mut x839, &mut x840, x807, 0x7d89efc5); + let mut x841: u32 = 0; + let mut x842: u32 = 0; + fiat_bp512_mulx_u32(&mut x841, &mut x842, x839, 0xaadd9db8); + let mut x843: u32 = 0; + let mut x844: u32 = 0; + fiat_bp512_mulx_u32(&mut x843, &mut x844, x839, 0xdbe9c48b); + let mut x845: u32 = 0; + let mut x846: u32 = 0; + fiat_bp512_mulx_u32(&mut x845, &mut x846, x839, 0x3fd4e6ae); + let mut x847: u32 = 0; + let mut x848: u32 = 0; + fiat_bp512_mulx_u32(&mut x847, &mut x848, x839, 0x33c9fc07); + let mut x849: u32 = 0; + let mut x850: u32 = 0; + fiat_bp512_mulx_u32(&mut x849, &mut x850, x839, 0xcb308db3); + let mut x851: u32 = 0; + let mut x852: u32 = 0; + fiat_bp512_mulx_u32(&mut x851, &mut x852, x839, 0xb3c9d20e); + let mut x853: u32 = 0; + let mut x854: u32 = 0; + fiat_bp512_mulx_u32(&mut x853, &mut x854, x839, 0xd6639cca); + let mut x855: u32 = 0; + let mut x856: u32 = 0; + fiat_bp512_mulx_u32(&mut x855, &mut x856, x839, 0x70330871); + let mut x857: u32 = 0; + let mut x858: u32 = 0; + fiat_bp512_mulx_u32(&mut x857, &mut x858, x839, 0x7d4d9b00); + let mut x859: u32 = 0; + let mut x860: u32 = 0; + fiat_bp512_mulx_u32(&mut x859, &mut x860, x839, 0x9bc66842); + let mut x861: u32 = 0; + let mut x862: u32 = 0; + fiat_bp512_mulx_u32(&mut x861, &mut x862, x839, 0xaecda12a); + let mut x863: u32 = 0; + let mut x864: u32 = 0; + fiat_bp512_mulx_u32(&mut x863, &mut x864, x839, 0xe6a380e6); + let mut x865: u32 = 0; + let mut x866: u32 = 0; + fiat_bp512_mulx_u32(&mut x865, &mut x866, x839, 0x2881ff2f); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x839, 0x2d82c685); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x839, 0x28aa6056); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x839, 0x583a48f3); + let mut x873: u32 = 0; + let mut x874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x873, &mut x874, 0x0, x872, x869); + let mut x875: u32 = 0; + let mut x876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x875, &mut x876, x874, x870, x867); + let mut x877: u32 = 0; + let mut x878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x877, &mut x878, x876, x868, x865); + let mut x879: u32 = 0; + let mut x880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x879, &mut x880, x878, x866, x863); + let mut x881: u32 = 0; + let mut x882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x881, &mut x882, x880, x864, x861); + let mut x883: u32 = 0; + let mut x884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x883, &mut x884, x882, x862, x859); + let mut x885: u32 = 0; + let mut x886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x885, &mut x886, x884, x860, x857); + let mut x887: u32 = 0; + let mut x888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x887, &mut x888, x886, x858, x855); + let mut x889: u32 = 0; + let mut x890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x889, &mut x890, x888, x856, x853); + let mut x891: u32 = 0; + let mut x892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x891, &mut x892, x890, x854, x851); + let mut x893: u32 = 0; + let mut x894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x893, &mut x894, x892, x852, x849); + let mut x895: u32 = 0; + let mut x896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x895, &mut x896, x894, x850, x847); + let mut x897: u32 = 0; + let mut x898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x897, &mut x898, x896, x848, x845); + let mut x899: u32 = 0; + let mut x900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x899, &mut x900, x898, x846, x843); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, x900, x844, x841); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, 0x0, x807, x871); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x809, x873); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x811, x875); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x813, x877); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x815, x879); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x817, x881); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x819, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x821, x885); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x823, x887); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x825, x889); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x827, x891); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x829, x893); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x831, x895); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x833, x897); + let mut x931: u32 = 0; + let mut x932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x931, &mut x932, x930, x835, x899); + let mut x933: u32 = 0; + let mut x934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x933, &mut x934, x932, x837, x901); + let mut x935: u32 = 0; + let mut x936: u32 = 0; + fiat_bp512_mulx_u32(&mut x935, &mut x936, x5, 0x3c4c9d05); + let mut x937: u32 = 0; + let mut x938: u32 = 0; + fiat_bp512_mulx_u32(&mut x937, &mut x938, x5, 0xa9ff6450); + let mut x939: u32 = 0; + let mut x940: u32 = 0; + fiat_bp512_mulx_u32(&mut x939, &mut x940, x5, 0x202e1940); + let mut x941: u32 = 0; + let mut x942: u32 = 0; + fiat_bp512_mulx_u32(&mut x941, &mut x942, x5, 0x2056eecc); + let mut x943: u32 = 0; + let mut x944: u32 = 0; + fiat_bp512_mulx_u32(&mut x943, &mut x944, x5, 0xa16daa5f); + let mut x945: u32 = 0; + let mut x946: u32 = 0; + fiat_bp512_mulx_u32(&mut x945, &mut x946, x5, 0xd42bff83); + let mut x947: u32 = 0; + let mut x948: u32 = 0; + fiat_bp512_mulx_u32(&mut x947, &mut x948, x5, 0x19486fd8); + let mut x949: u32 = 0; + let mut x950: u32 = 0; + fiat_bp512_mulx_u32(&mut x949, &mut x950, x5, 0xd5898057); + let mut x951: u32 = 0; + let mut x952: u32 = 0; + fiat_bp512_mulx_u32(&mut x951, &mut x952, x5, 0xe0c19a77); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp512_mulx_u32(&mut x953, &mut x954, x5, 0x83514a25); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp512_mulx_u32(&mut x955, &mut x956, x5, 0x53b7f9bc); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp512_mulx_u32(&mut x957, &mut x958, x5, 0x905affd3); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp512_mulx_u32(&mut x959, &mut x960, x5, 0x793fb130); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp512_mulx_u32(&mut x961, &mut x962, x5, 0x27157905); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp512_mulx_u32(&mut x963, &mut x964, x5, 0x49ad144a); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp512_mulx_u32(&mut x965, &mut x966, x5, 0x6158f205); + let mut x967: u32 = 0; + let mut x968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x967, &mut x968, 0x0, x966, x963); + let mut x969: u32 = 0; + let mut x970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x969, &mut x970, x968, x964, x961); + let mut x971: u32 = 0; + let mut x972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x971, &mut x972, x970, x962, x959); + let mut x973: u32 = 0; + let mut x974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x973, &mut x974, x972, x960, x957); + let mut x975: u32 = 0; + let mut x976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x975, &mut x976, x974, x958, x955); + let mut x977: u32 = 0; + let mut x978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x977, &mut x978, x976, x956, x953); + let mut x979: u32 = 0; + let mut x980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x979, &mut x980, x978, x954, x951); + let mut x981: u32 = 0; + let mut x982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x981, &mut x982, x980, x952, x949); + let mut x983: u32 = 0; + let mut x984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x983, &mut x984, x982, x950, x947); + let mut x985: u32 = 0; + let mut x986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x985, &mut x986, x984, x948, x945); + let mut x987: u32 = 0; + let mut x988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x987, &mut x988, x986, x946, x943); + let mut x989: u32 = 0; + let mut x990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x989, &mut x990, x988, x944, x941); + let mut x991: u32 = 0; + let mut x992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x991, &mut x992, x990, x942, x939); + let mut x993: u32 = 0; + let mut x994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x993, &mut x994, x992, x940, x937); + let mut x995: u32 = 0; + let mut x996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x995, &mut x996, x994, x938, x935); + let mut x997: u32 = 0; + let mut x998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x997, &mut x998, 0x0, x905, x965); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, x998, x907, x967); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x909, x969); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x911, x971); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x913, x973); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x915, x975); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x917, x977); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x919, x979); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x921, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x923, x983); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x925, x985); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x927, x987); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x929, x989); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x931, x991); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x933, x993); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, (((x934 as u32) + ((x838 as u32) + ((x806 as u32) + x746))) + ((x902 as u32) + x842)), x995); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp512_mulx_u32(&mut x1029, &mut x1030, x997, 0x7d89efc5); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp512_mulx_u32(&mut x1031, &mut x1032, x1029, 0xaadd9db8); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp512_mulx_u32(&mut x1033, &mut x1034, x1029, 0xdbe9c48b); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp512_mulx_u32(&mut x1035, &mut x1036, x1029, 0x3fd4e6ae); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp512_mulx_u32(&mut x1037, &mut x1038, x1029, 0x33c9fc07); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp512_mulx_u32(&mut x1039, &mut x1040, x1029, 0xcb308db3); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp512_mulx_u32(&mut x1041, &mut x1042, x1029, 0xb3c9d20e); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp512_mulx_u32(&mut x1043, &mut x1044, x1029, 0xd6639cca); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp512_mulx_u32(&mut x1045, &mut x1046, x1029, 0x70330871); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp512_mulx_u32(&mut x1047, &mut x1048, x1029, 0x7d4d9b00); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp512_mulx_u32(&mut x1049, &mut x1050, x1029, 0x9bc66842); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp512_mulx_u32(&mut x1051, &mut x1052, x1029, 0xaecda12a); + let mut x1053: u32 = 0; + let mut x1054: u32 = 0; + fiat_bp512_mulx_u32(&mut x1053, &mut x1054, x1029, 0xe6a380e6); + let mut x1055: u32 = 0; + let mut x1056: u32 = 0; + fiat_bp512_mulx_u32(&mut x1055, &mut x1056, x1029, 0x2881ff2f); + let mut x1057: u32 = 0; + let mut x1058: u32 = 0; + fiat_bp512_mulx_u32(&mut x1057, &mut x1058, x1029, 0x2d82c685); + let mut x1059: u32 = 0; + let mut x1060: u32 = 0; + fiat_bp512_mulx_u32(&mut x1059, &mut x1060, x1029, 0x28aa6056); + let mut x1061: u32 = 0; + let mut x1062: u32 = 0; + fiat_bp512_mulx_u32(&mut x1061, &mut x1062, x1029, 0x583a48f3); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1063, &mut x1064, 0x0, x1062, x1059); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1060, x1057); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1058, x1055); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1056, x1053); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1054, x1051); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1052, x1049); + let mut x1075: u32 = 0; + let mut x1076: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1075, &mut x1076, x1074, x1050, x1047); + let mut x1077: u32 = 0; + let mut x1078: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1077, &mut x1078, x1076, x1048, x1045); + let mut x1079: u32 = 0; + let mut x1080: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1079, &mut x1080, x1078, x1046, x1043); + let mut x1081: u32 = 0; + let mut x1082: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1044, x1041); + let mut x1083: u32 = 0; + let mut x1084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1042, x1039); + let mut x1085: u32 = 0; + let mut x1086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1040, x1037); + let mut x1087: u32 = 0; + let mut x1088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1038, x1035); + let mut x1089: u32 = 0; + let mut x1090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1036, x1033); + let mut x1091: u32 = 0; + let mut x1092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1034, x1031); + let mut x1093: u32 = 0; + let mut x1094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1093, &mut x1094, 0x0, x997, x1061); + let mut x1095: u32 = 0; + let mut x1096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1095, &mut x1096, x1094, x999, x1063); + let mut x1097: u32 = 0; + let mut x1098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1001, x1065); + let mut x1099: u32 = 0; + let mut x1100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1003, x1067); + let mut x1101: u32 = 0; + let mut x1102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1101, &mut x1102, x1100, x1005, x1069); + let mut x1103: u32 = 0; + let mut x1104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1103, &mut x1104, x1102, x1007, x1071); + let mut x1105: u32 = 0; + let mut x1106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1009, x1073); + let mut x1107: u32 = 0; + let mut x1108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1011, x1075); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1013, x1077); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1015, x1079); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1017, x1081); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1019, x1083); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1021, x1085); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1023, x1087); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1025, x1089); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1027, x1091); + let mut x1125: u32 = 0; + let mut x1126: u32 = 0; + fiat_bp512_mulx_u32(&mut x1125, &mut x1126, x6, 0x3c4c9d05); + let mut x1127: u32 = 0; + let mut x1128: u32 = 0; + fiat_bp512_mulx_u32(&mut x1127, &mut x1128, x6, 0xa9ff6450); + let mut x1129: u32 = 0; + let mut x1130: u32 = 0; + fiat_bp512_mulx_u32(&mut x1129, &mut x1130, x6, 0x202e1940); + let mut x1131: u32 = 0; + let mut x1132: u32 = 0; + fiat_bp512_mulx_u32(&mut x1131, &mut x1132, x6, 0x2056eecc); + let mut x1133: u32 = 0; + let mut x1134: u32 = 0; + fiat_bp512_mulx_u32(&mut x1133, &mut x1134, x6, 0xa16daa5f); + let mut x1135: u32 = 0; + let mut x1136: u32 = 0; + fiat_bp512_mulx_u32(&mut x1135, &mut x1136, x6, 0xd42bff83); + let mut x1137: u32 = 0; + let mut x1138: u32 = 0; + fiat_bp512_mulx_u32(&mut x1137, &mut x1138, x6, 0x19486fd8); + let mut x1139: u32 = 0; + let mut x1140: u32 = 0; + fiat_bp512_mulx_u32(&mut x1139, &mut x1140, x6, 0xd5898057); + let mut x1141: u32 = 0; + let mut x1142: u32 = 0; + fiat_bp512_mulx_u32(&mut x1141, &mut x1142, x6, 0xe0c19a77); + let mut x1143: u32 = 0; + let mut x1144: u32 = 0; + fiat_bp512_mulx_u32(&mut x1143, &mut x1144, x6, 0x83514a25); + let mut x1145: u32 = 0; + let mut x1146: u32 = 0; + fiat_bp512_mulx_u32(&mut x1145, &mut x1146, x6, 0x53b7f9bc); + let mut x1147: u32 = 0; + let mut x1148: u32 = 0; + fiat_bp512_mulx_u32(&mut x1147, &mut x1148, x6, 0x905affd3); + let mut x1149: u32 = 0; + let mut x1150: u32 = 0; + fiat_bp512_mulx_u32(&mut x1149, &mut x1150, x6, 0x793fb130); + let mut x1151: u32 = 0; + let mut x1152: u32 = 0; + fiat_bp512_mulx_u32(&mut x1151, &mut x1152, x6, 0x27157905); + let mut x1153: u32 = 0; + let mut x1154: u32 = 0; + fiat_bp512_mulx_u32(&mut x1153, &mut x1154, x6, 0x49ad144a); + let mut x1155: u32 = 0; + let mut x1156: u32 = 0; + fiat_bp512_mulx_u32(&mut x1155, &mut x1156, x6, 0x6158f205); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, 0x0, x1156, x1153); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1154, x1151); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1152, x1149); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1150, x1147); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1148, x1145); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1146, x1143); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1144, x1141); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1142, x1139); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1140, x1137); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1138, x1135); + let mut x1177: u32 = 0; + let mut x1178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1136, x1133); + let mut x1179: u32 = 0; + let mut x1180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1134, x1131); + let mut x1181: u32 = 0; + let mut x1182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1132, x1129); + let mut x1183: u32 = 0; + let mut x1184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1130, x1127); + let mut x1185: u32 = 0; + let mut x1186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1128, x1125); + let mut x1187: u32 = 0; + let mut x1188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1187, &mut x1188, 0x0, x1095, x1155); + let mut x1189: u32 = 0; + let mut x1190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1097, x1157); + let mut x1191: u32 = 0; + let mut x1192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1099, x1159); + let mut x1193: u32 = 0; + let mut x1194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1193, &mut x1194, x1192, x1101, x1161); + let mut x1195: u32 = 0; + let mut x1196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1195, &mut x1196, x1194, x1103, x1163); + let mut x1197: u32 = 0; + let mut x1198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1197, &mut x1198, x1196, x1105, x1165); + let mut x1199: u32 = 0; + let mut x1200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1199, &mut x1200, x1198, x1107, x1167); + let mut x1201: u32 = 0; + let mut x1202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1201, &mut x1202, x1200, x1109, x1169); + let mut x1203: u32 = 0; + let mut x1204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1203, &mut x1204, x1202, x1111, x1171); + let mut x1205: u32 = 0; + let mut x1206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1205, &mut x1206, x1204, x1113, x1173); + let mut x1207: u32 = 0; + let mut x1208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1207, &mut x1208, x1206, x1115, x1175); + let mut x1209: u32 = 0; + let mut x1210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1209, &mut x1210, x1208, x1117, x1177); + let mut x1211: u32 = 0; + let mut x1212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1211, &mut x1212, x1210, x1119, x1179); + let mut x1213: u32 = 0; + let mut x1214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1213, &mut x1214, x1212, x1121, x1181); + let mut x1215: u32 = 0; + let mut x1216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1215, &mut x1216, x1214, x1123, x1183); + let mut x1217: u32 = 0; + let mut x1218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1217, &mut x1218, x1216, (((x1124 as u32) + ((x1028 as u32) + ((x996 as u32) + x936))) + ((x1092 as u32) + x1032)), x1185); + let mut x1219: u32 = 0; + let mut x1220: u32 = 0; + fiat_bp512_mulx_u32(&mut x1219, &mut x1220, x1187, 0x7d89efc5); + let mut x1221: u32 = 0; + let mut x1222: u32 = 0; + fiat_bp512_mulx_u32(&mut x1221, &mut x1222, x1219, 0xaadd9db8); + let mut x1223: u32 = 0; + let mut x1224: u32 = 0; + fiat_bp512_mulx_u32(&mut x1223, &mut x1224, x1219, 0xdbe9c48b); + let mut x1225: u32 = 0; + let mut x1226: u32 = 0; + fiat_bp512_mulx_u32(&mut x1225, &mut x1226, x1219, 0x3fd4e6ae); + let mut x1227: u32 = 0; + let mut x1228: u32 = 0; + fiat_bp512_mulx_u32(&mut x1227, &mut x1228, x1219, 0x33c9fc07); + let mut x1229: u32 = 0; + let mut x1230: u32 = 0; + fiat_bp512_mulx_u32(&mut x1229, &mut x1230, x1219, 0xcb308db3); + let mut x1231: u32 = 0; + let mut x1232: u32 = 0; + fiat_bp512_mulx_u32(&mut x1231, &mut x1232, x1219, 0xb3c9d20e); + let mut x1233: u32 = 0; + let mut x1234: u32 = 0; + fiat_bp512_mulx_u32(&mut x1233, &mut x1234, x1219, 0xd6639cca); + let mut x1235: u32 = 0; + let mut x1236: u32 = 0; + fiat_bp512_mulx_u32(&mut x1235, &mut x1236, x1219, 0x70330871); + let mut x1237: u32 = 0; + let mut x1238: u32 = 0; + fiat_bp512_mulx_u32(&mut x1237, &mut x1238, x1219, 0x7d4d9b00); + let mut x1239: u32 = 0; + let mut x1240: u32 = 0; + fiat_bp512_mulx_u32(&mut x1239, &mut x1240, x1219, 0x9bc66842); + let mut x1241: u32 = 0; + let mut x1242: u32 = 0; + fiat_bp512_mulx_u32(&mut x1241, &mut x1242, x1219, 0xaecda12a); + let mut x1243: u32 = 0; + let mut x1244: u32 = 0; + fiat_bp512_mulx_u32(&mut x1243, &mut x1244, x1219, 0xe6a380e6); + let mut x1245: u32 = 0; + let mut x1246: u32 = 0; + fiat_bp512_mulx_u32(&mut x1245, &mut x1246, x1219, 0x2881ff2f); + let mut x1247: u32 = 0; + let mut x1248: u32 = 0; + fiat_bp512_mulx_u32(&mut x1247, &mut x1248, x1219, 0x2d82c685); + let mut x1249: u32 = 0; + let mut x1250: u32 = 0; + fiat_bp512_mulx_u32(&mut x1249, &mut x1250, x1219, 0x28aa6056); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp512_mulx_u32(&mut x1251, &mut x1252, x1219, 0x583a48f3); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, 0x0, x1252, x1249); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1250, x1247); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1248, x1245); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1246, x1243); + let mut x1261: u32 = 0; + let mut x1262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1261, &mut x1262, x1260, x1244, x1241); + let mut x1263: u32 = 0; + let mut x1264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1263, &mut x1264, x1262, x1242, x1239); + let mut x1265: u32 = 0; + let mut x1266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1265, &mut x1266, x1264, x1240, x1237); + let mut x1267: u32 = 0; + let mut x1268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1267, &mut x1268, x1266, x1238, x1235); + let mut x1269: u32 = 0; + let mut x1270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1269, &mut x1270, x1268, x1236, x1233); + let mut x1271: u32 = 0; + let mut x1272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1271, &mut x1272, x1270, x1234, x1231); + let mut x1273: u32 = 0; + let mut x1274: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1273, &mut x1274, x1272, x1232, x1229); + let mut x1275: u32 = 0; + let mut x1276: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1275, &mut x1276, x1274, x1230, x1227); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1277, &mut x1278, x1276, x1228, x1225); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1226, x1223); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1224, x1221); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1283, &mut x1284, 0x0, x1187, x1251); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1189, x1253); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1191, x1255); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1193, x1257); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1195, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1197, x1261); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1199, x1263); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1201, x1265); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1203, x1267); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1205, x1269); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1207, x1271); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1209, x1273); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1211, x1275); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1213, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1215, x1279); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1217, x1281); + let mut x1315: u32 = 0; + let mut x1316: u32 = 0; + fiat_bp512_mulx_u32(&mut x1315, &mut x1316, x7, 0x3c4c9d05); + let mut x1317: u32 = 0; + let mut x1318: u32 = 0; + fiat_bp512_mulx_u32(&mut x1317, &mut x1318, x7, 0xa9ff6450); + let mut x1319: u32 = 0; + let mut x1320: u32 = 0; + fiat_bp512_mulx_u32(&mut x1319, &mut x1320, x7, 0x202e1940); + let mut x1321: u32 = 0; + let mut x1322: u32 = 0; + fiat_bp512_mulx_u32(&mut x1321, &mut x1322, x7, 0x2056eecc); + let mut x1323: u32 = 0; + let mut x1324: u32 = 0; + fiat_bp512_mulx_u32(&mut x1323, &mut x1324, x7, 0xa16daa5f); + let mut x1325: u32 = 0; + let mut x1326: u32 = 0; + fiat_bp512_mulx_u32(&mut x1325, &mut x1326, x7, 0xd42bff83); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp512_mulx_u32(&mut x1327, &mut x1328, x7, 0x19486fd8); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp512_mulx_u32(&mut x1329, &mut x1330, x7, 0xd5898057); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp512_mulx_u32(&mut x1331, &mut x1332, x7, 0xe0c19a77); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp512_mulx_u32(&mut x1333, &mut x1334, x7, 0x83514a25); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp512_mulx_u32(&mut x1335, &mut x1336, x7, 0x53b7f9bc); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp512_mulx_u32(&mut x1337, &mut x1338, x7, 0x905affd3); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp512_mulx_u32(&mut x1339, &mut x1340, x7, 0x793fb130); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp512_mulx_u32(&mut x1341, &mut x1342, x7, 0x27157905); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp512_mulx_u32(&mut x1343, &mut x1344, x7, 0x49ad144a); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp512_mulx_u32(&mut x1345, &mut x1346, x7, 0x6158f205); + let mut x1347: u32 = 0; + let mut x1348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1347, &mut x1348, 0x0, x1346, x1343); + let mut x1349: u32 = 0; + let mut x1350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1349, &mut x1350, x1348, x1344, x1341); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1351, &mut x1352, x1350, x1342, x1339); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1340, x1337); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1338, x1335); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1336, x1333); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1334, x1331); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1332, x1329); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1330, x1327); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1328, x1325); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1326, x1323); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1324, x1321); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1322, x1319); + let mut x1373: u32 = 0; + let mut x1374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1320, x1317); + let mut x1375: u32 = 0; + let mut x1376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1318, x1315); + let mut x1377: u32 = 0; + let mut x1378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1377, &mut x1378, 0x0, x1285, x1345); + let mut x1379: u32 = 0; + let mut x1380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1287, x1347); + let mut x1381: u32 = 0; + let mut x1382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1289, x1349); + let mut x1383: u32 = 0; + let mut x1384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1291, x1351); + let mut x1385: u32 = 0; + let mut x1386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1385, &mut x1386, x1384, x1293, x1353); + let mut x1387: u32 = 0; + let mut x1388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1295, x1355); + let mut x1389: u32 = 0; + let mut x1390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1297, x1357); + let mut x1391: u32 = 0; + let mut x1392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1391, &mut x1392, x1390, x1299, x1359); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1301, x1361); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1303, x1363); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1305, x1365); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1307, x1367); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1309, x1369); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1311, x1371); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1313, x1373); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, (((x1314 as u32) + ((x1218 as u32) + ((x1186 as u32) + x1126))) + ((x1282 as u32) + x1222)), x1375); + let mut x1409: u32 = 0; + let mut x1410: u32 = 0; + fiat_bp512_mulx_u32(&mut x1409, &mut x1410, x1377, 0x7d89efc5); + let mut x1411: u32 = 0; + let mut x1412: u32 = 0; + fiat_bp512_mulx_u32(&mut x1411, &mut x1412, x1409, 0xaadd9db8); + let mut x1413: u32 = 0; + let mut x1414: u32 = 0; + fiat_bp512_mulx_u32(&mut x1413, &mut x1414, x1409, 0xdbe9c48b); + let mut x1415: u32 = 0; + let mut x1416: u32 = 0; + fiat_bp512_mulx_u32(&mut x1415, &mut x1416, x1409, 0x3fd4e6ae); + let mut x1417: u32 = 0; + let mut x1418: u32 = 0; + fiat_bp512_mulx_u32(&mut x1417, &mut x1418, x1409, 0x33c9fc07); + let mut x1419: u32 = 0; + let mut x1420: u32 = 0; + fiat_bp512_mulx_u32(&mut x1419, &mut x1420, x1409, 0xcb308db3); + let mut x1421: u32 = 0; + let mut x1422: u32 = 0; + fiat_bp512_mulx_u32(&mut x1421, &mut x1422, x1409, 0xb3c9d20e); + let mut x1423: u32 = 0; + let mut x1424: u32 = 0; + fiat_bp512_mulx_u32(&mut x1423, &mut x1424, x1409, 0xd6639cca); + let mut x1425: u32 = 0; + let mut x1426: u32 = 0; + fiat_bp512_mulx_u32(&mut x1425, &mut x1426, x1409, 0x70330871); + let mut x1427: u32 = 0; + let mut x1428: u32 = 0; + fiat_bp512_mulx_u32(&mut x1427, &mut x1428, x1409, 0x7d4d9b00); + let mut x1429: u32 = 0; + let mut x1430: u32 = 0; + fiat_bp512_mulx_u32(&mut x1429, &mut x1430, x1409, 0x9bc66842); + let mut x1431: u32 = 0; + let mut x1432: u32 = 0; + fiat_bp512_mulx_u32(&mut x1431, &mut x1432, x1409, 0xaecda12a); + let mut x1433: u32 = 0; + let mut x1434: u32 = 0; + fiat_bp512_mulx_u32(&mut x1433, &mut x1434, x1409, 0xe6a380e6); + let mut x1435: u32 = 0; + let mut x1436: u32 = 0; + fiat_bp512_mulx_u32(&mut x1435, &mut x1436, x1409, 0x2881ff2f); + let mut x1437: u32 = 0; + let mut x1438: u32 = 0; + fiat_bp512_mulx_u32(&mut x1437, &mut x1438, x1409, 0x2d82c685); + let mut x1439: u32 = 0; + let mut x1440: u32 = 0; + fiat_bp512_mulx_u32(&mut x1439, &mut x1440, x1409, 0x28aa6056); + let mut x1441: u32 = 0; + let mut x1442: u32 = 0; + fiat_bp512_mulx_u32(&mut x1441, &mut x1442, x1409, 0x583a48f3); + let mut x1443: u32 = 0; + let mut x1444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1443, &mut x1444, 0x0, x1442, x1439); + let mut x1445: u32 = 0; + let mut x1446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1445, &mut x1446, x1444, x1440, x1437); + let mut x1447: u32 = 0; + let mut x1448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1447, &mut x1448, x1446, x1438, x1435); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1449, &mut x1450, x1448, x1436, x1433); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1434, x1431); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1432, x1429); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1430, x1427); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1428, x1425); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1426, x1423); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1424, x1421); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1422, x1419); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1420, x1417); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1418, x1415); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1416, x1413); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1414, x1411); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1473, &mut x1474, 0x0, x1377, x1441); + let mut x1475: u32 = 0; + let mut x1476: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1379, x1443); + let mut x1477: u32 = 0; + let mut x1478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1477, &mut x1478, x1476, x1381, x1445); + let mut x1479: u32 = 0; + let mut x1480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1479, &mut x1480, x1478, x1383, x1447); + let mut x1481: u32 = 0; + let mut x1482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1481, &mut x1482, x1480, x1385, x1449); + let mut x1483: u32 = 0; + let mut x1484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1483, &mut x1484, x1482, x1387, x1451); + let mut x1485: u32 = 0; + let mut x1486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1485, &mut x1486, x1484, x1389, x1453); + let mut x1487: u32 = 0; + let mut x1488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1487, &mut x1488, x1486, x1391, x1455); + let mut x1489: u32 = 0; + let mut x1490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1489, &mut x1490, x1488, x1393, x1457); + let mut x1491: u32 = 0; + let mut x1492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1491, &mut x1492, x1490, x1395, x1459); + let mut x1493: u32 = 0; + let mut x1494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1493, &mut x1494, x1492, x1397, x1461); + let mut x1495: u32 = 0; + let mut x1496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1495, &mut x1496, x1494, x1399, x1463); + let mut x1497: u32 = 0; + let mut x1498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1497, &mut x1498, x1496, x1401, x1465); + let mut x1499: u32 = 0; + let mut x1500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1499, &mut x1500, x1498, x1403, x1467); + let mut x1501: u32 = 0; + let mut x1502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1501, &mut x1502, x1500, x1405, x1469); + let mut x1503: u32 = 0; + let mut x1504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1503, &mut x1504, x1502, x1407, x1471); + let mut x1505: u32 = 0; + let mut x1506: u32 = 0; + fiat_bp512_mulx_u32(&mut x1505, &mut x1506, x8, 0x3c4c9d05); + let mut x1507: u32 = 0; + let mut x1508: u32 = 0; + fiat_bp512_mulx_u32(&mut x1507, &mut x1508, x8, 0xa9ff6450); + let mut x1509: u32 = 0; + let mut x1510: u32 = 0; + fiat_bp512_mulx_u32(&mut x1509, &mut x1510, x8, 0x202e1940); + let mut x1511: u32 = 0; + let mut x1512: u32 = 0; + fiat_bp512_mulx_u32(&mut x1511, &mut x1512, x8, 0x2056eecc); + let mut x1513: u32 = 0; + let mut x1514: u32 = 0; + fiat_bp512_mulx_u32(&mut x1513, &mut x1514, x8, 0xa16daa5f); + let mut x1515: u32 = 0; + let mut x1516: u32 = 0; + fiat_bp512_mulx_u32(&mut x1515, &mut x1516, x8, 0xd42bff83); + let mut x1517: u32 = 0; + let mut x1518: u32 = 0; + fiat_bp512_mulx_u32(&mut x1517, &mut x1518, x8, 0x19486fd8); + let mut x1519: u32 = 0; + let mut x1520: u32 = 0; + fiat_bp512_mulx_u32(&mut x1519, &mut x1520, x8, 0xd5898057); + let mut x1521: u32 = 0; + let mut x1522: u32 = 0; + fiat_bp512_mulx_u32(&mut x1521, &mut x1522, x8, 0xe0c19a77); + let mut x1523: u32 = 0; + let mut x1524: u32 = 0; + fiat_bp512_mulx_u32(&mut x1523, &mut x1524, x8, 0x83514a25); + let mut x1525: u32 = 0; + let mut x1526: u32 = 0; + fiat_bp512_mulx_u32(&mut x1525, &mut x1526, x8, 0x53b7f9bc); + let mut x1527: u32 = 0; + let mut x1528: u32 = 0; + fiat_bp512_mulx_u32(&mut x1527, &mut x1528, x8, 0x905affd3); + let mut x1529: u32 = 0; + let mut x1530: u32 = 0; + fiat_bp512_mulx_u32(&mut x1529, &mut x1530, x8, 0x793fb130); + let mut x1531: u32 = 0; + let mut x1532: u32 = 0; + fiat_bp512_mulx_u32(&mut x1531, &mut x1532, x8, 0x27157905); + let mut x1533: u32 = 0; + let mut x1534: u32 = 0; + fiat_bp512_mulx_u32(&mut x1533, &mut x1534, x8, 0x49ad144a); + let mut x1535: u32 = 0; + let mut x1536: u32 = 0; + fiat_bp512_mulx_u32(&mut x1535, &mut x1536, x8, 0x6158f205); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, 0x0, x1536, x1533); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1534, x1531); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1532, x1529); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1530, x1527); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1528, x1525); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1526, x1523); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1524, x1521); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1522, x1519); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1520, x1517); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1518, x1515); + let mut x1557: u32 = 0; + let mut x1558: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1557, &mut x1558, x1556, x1516, x1513); + let mut x1559: u32 = 0; + let mut x1560: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1559, &mut x1560, x1558, x1514, x1511); + let mut x1561: u32 = 0; + let mut x1562: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1561, &mut x1562, x1560, x1512, x1509); + let mut x1563: u32 = 0; + let mut x1564: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1563, &mut x1564, x1562, x1510, x1507); + let mut x1565: u32 = 0; + let mut x1566: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1565, &mut x1566, x1564, x1508, x1505); + let mut x1567: u32 = 0; + let mut x1568: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1567, &mut x1568, 0x0, x1475, x1535); + let mut x1569: u32 = 0; + let mut x1570: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1569, &mut x1570, x1568, x1477, x1537); + let mut x1571: u32 = 0; + let mut x1572: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1571, &mut x1572, x1570, x1479, x1539); + let mut x1573: u32 = 0; + let mut x1574: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1573, &mut x1574, x1572, x1481, x1541); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1575, &mut x1576, x1574, x1483, x1543); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1485, x1545); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1487, x1547); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1489, x1549); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1491, x1551); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1493, x1553); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1495, x1555); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1497, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1499, x1559); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1501, x1561); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1503, x1563); + let mut x1597: u32 = 0; + let mut x1598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1597, &mut x1598, x1596, (((x1504 as u32) + ((x1408 as u32) + ((x1376 as u32) + x1316))) + ((x1472 as u32) + x1412)), x1565); + let mut x1599: u32 = 0; + let mut x1600: u32 = 0; + fiat_bp512_mulx_u32(&mut x1599, &mut x1600, x1567, 0x7d89efc5); + let mut x1601: u32 = 0; + let mut x1602: u32 = 0; + fiat_bp512_mulx_u32(&mut x1601, &mut x1602, x1599, 0xaadd9db8); + let mut x1603: u32 = 0; + let mut x1604: u32 = 0; + fiat_bp512_mulx_u32(&mut x1603, &mut x1604, x1599, 0xdbe9c48b); + let mut x1605: u32 = 0; + let mut x1606: u32 = 0; + fiat_bp512_mulx_u32(&mut x1605, &mut x1606, x1599, 0x3fd4e6ae); + let mut x1607: u32 = 0; + let mut x1608: u32 = 0; + fiat_bp512_mulx_u32(&mut x1607, &mut x1608, x1599, 0x33c9fc07); + let mut x1609: u32 = 0; + let mut x1610: u32 = 0; + fiat_bp512_mulx_u32(&mut x1609, &mut x1610, x1599, 0xcb308db3); + let mut x1611: u32 = 0; + let mut x1612: u32 = 0; + fiat_bp512_mulx_u32(&mut x1611, &mut x1612, x1599, 0xb3c9d20e); + let mut x1613: u32 = 0; + let mut x1614: u32 = 0; + fiat_bp512_mulx_u32(&mut x1613, &mut x1614, x1599, 0xd6639cca); + let mut x1615: u32 = 0; + let mut x1616: u32 = 0; + fiat_bp512_mulx_u32(&mut x1615, &mut x1616, x1599, 0x70330871); + let mut x1617: u32 = 0; + let mut x1618: u32 = 0; + fiat_bp512_mulx_u32(&mut x1617, &mut x1618, x1599, 0x7d4d9b00); + let mut x1619: u32 = 0; + let mut x1620: u32 = 0; + fiat_bp512_mulx_u32(&mut x1619, &mut x1620, x1599, 0x9bc66842); + let mut x1621: u32 = 0; + let mut x1622: u32 = 0; + fiat_bp512_mulx_u32(&mut x1621, &mut x1622, x1599, 0xaecda12a); + let mut x1623: u32 = 0; + let mut x1624: u32 = 0; + fiat_bp512_mulx_u32(&mut x1623, &mut x1624, x1599, 0xe6a380e6); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp512_mulx_u32(&mut x1625, &mut x1626, x1599, 0x2881ff2f); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp512_mulx_u32(&mut x1627, &mut x1628, x1599, 0x2d82c685); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp512_mulx_u32(&mut x1629, &mut x1630, x1599, 0x28aa6056); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp512_mulx_u32(&mut x1631, &mut x1632, x1599, 0x583a48f3); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, 0x0, x1632, x1629); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1630, x1627); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1628, x1625); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1626, x1623); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1624, x1621); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1622, x1619); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1620, x1617); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1618, x1615); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1616, x1613); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1614, x1611); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1612, x1609); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1610, x1607); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1608, x1605); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1606, x1603); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1604, x1601); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1663, &mut x1664, 0x0, x1567, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1569, x1633); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1571, x1635); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1573, x1637); + let mut x1671: u32 = 0; + let mut x1672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1575, x1639); + let mut x1673: u32 = 0; + let mut x1674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1577, x1641); + let mut x1675: u32 = 0; + let mut x1676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1579, x1643); + let mut x1677: u32 = 0; + let mut x1678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1581, x1645); + let mut x1679: u32 = 0; + let mut x1680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1679, &mut x1680, x1678, x1583, x1647); + let mut x1681: u32 = 0; + let mut x1682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1585, x1649); + let mut x1683: u32 = 0; + let mut x1684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1587, x1651); + let mut x1685: u32 = 0; + let mut x1686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1589, x1653); + let mut x1687: u32 = 0; + let mut x1688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1591, x1655); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1593, x1657); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1595, x1659); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1597, x1661); + let mut x1695: u32 = 0; + let mut x1696: u32 = 0; + fiat_bp512_mulx_u32(&mut x1695, &mut x1696, x9, 0x3c4c9d05); + let mut x1697: u32 = 0; + let mut x1698: u32 = 0; + fiat_bp512_mulx_u32(&mut x1697, &mut x1698, x9, 0xa9ff6450); + let mut x1699: u32 = 0; + let mut x1700: u32 = 0; + fiat_bp512_mulx_u32(&mut x1699, &mut x1700, x9, 0x202e1940); + let mut x1701: u32 = 0; + let mut x1702: u32 = 0; + fiat_bp512_mulx_u32(&mut x1701, &mut x1702, x9, 0x2056eecc); + let mut x1703: u32 = 0; + let mut x1704: u32 = 0; + fiat_bp512_mulx_u32(&mut x1703, &mut x1704, x9, 0xa16daa5f); + let mut x1705: u32 = 0; + let mut x1706: u32 = 0; + fiat_bp512_mulx_u32(&mut x1705, &mut x1706, x9, 0xd42bff83); + let mut x1707: u32 = 0; + let mut x1708: u32 = 0; + fiat_bp512_mulx_u32(&mut x1707, &mut x1708, x9, 0x19486fd8); + let mut x1709: u32 = 0; + let mut x1710: u32 = 0; + fiat_bp512_mulx_u32(&mut x1709, &mut x1710, x9, 0xd5898057); + let mut x1711: u32 = 0; + let mut x1712: u32 = 0; + fiat_bp512_mulx_u32(&mut x1711, &mut x1712, x9, 0xe0c19a77); + let mut x1713: u32 = 0; + let mut x1714: u32 = 0; + fiat_bp512_mulx_u32(&mut x1713, &mut x1714, x9, 0x83514a25); + let mut x1715: u32 = 0; + let mut x1716: u32 = 0; + fiat_bp512_mulx_u32(&mut x1715, &mut x1716, x9, 0x53b7f9bc); + let mut x1717: u32 = 0; + let mut x1718: u32 = 0; + fiat_bp512_mulx_u32(&mut x1717, &mut x1718, x9, 0x905affd3); + let mut x1719: u32 = 0; + let mut x1720: u32 = 0; + fiat_bp512_mulx_u32(&mut x1719, &mut x1720, x9, 0x793fb130); + let mut x1721: u32 = 0; + let mut x1722: u32 = 0; + fiat_bp512_mulx_u32(&mut x1721, &mut x1722, x9, 0x27157905); + let mut x1723: u32 = 0; + let mut x1724: u32 = 0; + fiat_bp512_mulx_u32(&mut x1723, &mut x1724, x9, 0x49ad144a); + let mut x1725: u32 = 0; + let mut x1726: u32 = 0; + fiat_bp512_mulx_u32(&mut x1725, &mut x1726, x9, 0x6158f205); + let mut x1727: u32 = 0; + let mut x1728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1727, &mut x1728, 0x0, x1726, x1723); + let mut x1729: u32 = 0; + let mut x1730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1729, &mut x1730, x1728, x1724, x1721); + let mut x1731: u32 = 0; + let mut x1732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1731, &mut x1732, x1730, x1722, x1719); + let mut x1733: u32 = 0; + let mut x1734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1733, &mut x1734, x1732, x1720, x1717); + let mut x1735: u32 = 0; + let mut x1736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1735, &mut x1736, x1734, x1718, x1715); + let mut x1737: u32 = 0; + let mut x1738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1737, &mut x1738, x1736, x1716, x1713); + let mut x1739: u32 = 0; + let mut x1740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1739, &mut x1740, x1738, x1714, x1711); + let mut x1741: u32 = 0; + let mut x1742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1741, &mut x1742, x1740, x1712, x1709); + let mut x1743: u32 = 0; + let mut x1744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1743, &mut x1744, x1742, x1710, x1707); + let mut x1745: u32 = 0; + let mut x1746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1745, &mut x1746, x1744, x1708, x1705); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1747, &mut x1748, x1746, x1706, x1703); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1704, x1701); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1702, x1699); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1700, x1697); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1698, x1695); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1757, &mut x1758, 0x0, x1665, x1725); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1667, x1727); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1669, x1729); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1671, x1731); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1673, x1733); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1675, x1735); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1677, x1737); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1679, x1739); + let mut x1773: u32 = 0; + let mut x1774: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1773, &mut x1774, x1772, x1681, x1741); + let mut x1775: u32 = 0; + let mut x1776: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1775, &mut x1776, x1774, x1683, x1743); + let mut x1777: u32 = 0; + let mut x1778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1777, &mut x1778, x1776, x1685, x1745); + let mut x1779: u32 = 0; + let mut x1780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1779, &mut x1780, x1778, x1687, x1747); + let mut x1781: u32 = 0; + let mut x1782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1781, &mut x1782, x1780, x1689, x1749); + let mut x1783: u32 = 0; + let mut x1784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1783, &mut x1784, x1782, x1691, x1751); + let mut x1785: u32 = 0; + let mut x1786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1785, &mut x1786, x1784, x1693, x1753); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, x1786, (((x1694 as u32) + ((x1598 as u32) + ((x1566 as u32) + x1506))) + ((x1662 as u32) + x1602)), x1755); + let mut x1789: u32 = 0; + let mut x1790: u32 = 0; + fiat_bp512_mulx_u32(&mut x1789, &mut x1790, x1757, 0x7d89efc5); + let mut x1791: u32 = 0; + let mut x1792: u32 = 0; + fiat_bp512_mulx_u32(&mut x1791, &mut x1792, x1789, 0xaadd9db8); + let mut x1793: u32 = 0; + let mut x1794: u32 = 0; + fiat_bp512_mulx_u32(&mut x1793, &mut x1794, x1789, 0xdbe9c48b); + let mut x1795: u32 = 0; + let mut x1796: u32 = 0; + fiat_bp512_mulx_u32(&mut x1795, &mut x1796, x1789, 0x3fd4e6ae); + let mut x1797: u32 = 0; + let mut x1798: u32 = 0; + fiat_bp512_mulx_u32(&mut x1797, &mut x1798, x1789, 0x33c9fc07); + let mut x1799: u32 = 0; + let mut x1800: u32 = 0; + fiat_bp512_mulx_u32(&mut x1799, &mut x1800, x1789, 0xcb308db3); + let mut x1801: u32 = 0; + let mut x1802: u32 = 0; + fiat_bp512_mulx_u32(&mut x1801, &mut x1802, x1789, 0xb3c9d20e); + let mut x1803: u32 = 0; + let mut x1804: u32 = 0; + fiat_bp512_mulx_u32(&mut x1803, &mut x1804, x1789, 0xd6639cca); + let mut x1805: u32 = 0; + let mut x1806: u32 = 0; + fiat_bp512_mulx_u32(&mut x1805, &mut x1806, x1789, 0x70330871); + let mut x1807: u32 = 0; + let mut x1808: u32 = 0; + fiat_bp512_mulx_u32(&mut x1807, &mut x1808, x1789, 0x7d4d9b00); + let mut x1809: u32 = 0; + let mut x1810: u32 = 0; + fiat_bp512_mulx_u32(&mut x1809, &mut x1810, x1789, 0x9bc66842); + let mut x1811: u32 = 0; + let mut x1812: u32 = 0; + fiat_bp512_mulx_u32(&mut x1811, &mut x1812, x1789, 0xaecda12a); + let mut x1813: u32 = 0; + let mut x1814: u32 = 0; + fiat_bp512_mulx_u32(&mut x1813, &mut x1814, x1789, 0xe6a380e6); + let mut x1815: u32 = 0; + let mut x1816: u32 = 0; + fiat_bp512_mulx_u32(&mut x1815, &mut x1816, x1789, 0x2881ff2f); + let mut x1817: u32 = 0; + let mut x1818: u32 = 0; + fiat_bp512_mulx_u32(&mut x1817, &mut x1818, x1789, 0x2d82c685); + let mut x1819: u32 = 0; + let mut x1820: u32 = 0; + fiat_bp512_mulx_u32(&mut x1819, &mut x1820, x1789, 0x28aa6056); + let mut x1821: u32 = 0; + let mut x1822: u32 = 0; + fiat_bp512_mulx_u32(&mut x1821, &mut x1822, x1789, 0x583a48f3); + let mut x1823: u32 = 0; + let mut x1824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1823, &mut x1824, 0x0, x1822, x1819); + let mut x1825: u32 = 0; + let mut x1826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1825, &mut x1826, x1824, x1820, x1817); + let mut x1827: u32 = 0; + let mut x1828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1827, &mut x1828, x1826, x1818, x1815); + let mut x1829: u32 = 0; + let mut x1830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1829, &mut x1830, x1828, x1816, x1813); + let mut x1831: u32 = 0; + let mut x1832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1831, &mut x1832, x1830, x1814, x1811); + let mut x1833: u32 = 0; + let mut x1834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1833, &mut x1834, x1832, x1812, x1809); + let mut x1835: u32 = 0; + let mut x1836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1835, &mut x1836, x1834, x1810, x1807); + let mut x1837: u32 = 0; + let mut x1838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1837, &mut x1838, x1836, x1808, x1805); + let mut x1839: u32 = 0; + let mut x1840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1839, &mut x1840, x1838, x1806, x1803); + let mut x1841: u32 = 0; + let mut x1842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1841, &mut x1842, x1840, x1804, x1801); + let mut x1843: u32 = 0; + let mut x1844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1843, &mut x1844, x1842, x1802, x1799); + let mut x1845: u32 = 0; + let mut x1846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1845, &mut x1846, x1844, x1800, x1797); + let mut x1847: u32 = 0; + let mut x1848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1847, &mut x1848, x1846, x1798, x1795); + let mut x1849: u32 = 0; + let mut x1850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1849, &mut x1850, x1848, x1796, x1793); + let mut x1851: u32 = 0; + let mut x1852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1851, &mut x1852, x1850, x1794, x1791); + let mut x1853: u32 = 0; + let mut x1854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1853, &mut x1854, 0x0, x1757, x1821); + let mut x1855: u32 = 0; + let mut x1856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1855, &mut x1856, x1854, x1759, x1823); + let mut x1857: u32 = 0; + let mut x1858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1857, &mut x1858, x1856, x1761, x1825); + let mut x1859: u32 = 0; + let mut x1860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1859, &mut x1860, x1858, x1763, x1827); + let mut x1861: u32 = 0; + let mut x1862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1861, &mut x1862, x1860, x1765, x1829); + let mut x1863: u32 = 0; + let mut x1864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1863, &mut x1864, x1862, x1767, x1831); + let mut x1865: u32 = 0; + let mut x1866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1865, &mut x1866, x1864, x1769, x1833); + let mut x1867: u32 = 0; + let mut x1868: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1867, &mut x1868, x1866, x1771, x1835); + let mut x1869: u32 = 0; + let mut x1870: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1869, &mut x1870, x1868, x1773, x1837); + let mut x1871: u32 = 0; + let mut x1872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1871, &mut x1872, x1870, x1775, x1839); + let mut x1873: u32 = 0; + let mut x1874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1873, &mut x1874, x1872, x1777, x1841); + let mut x1875: u32 = 0; + let mut x1876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1875, &mut x1876, x1874, x1779, x1843); + let mut x1877: u32 = 0; + let mut x1878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1877, &mut x1878, x1876, x1781, x1845); + let mut x1879: u32 = 0; + let mut x1880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1879, &mut x1880, x1878, x1783, x1847); + let mut x1881: u32 = 0; + let mut x1882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1881, &mut x1882, x1880, x1785, x1849); + let mut x1883: u32 = 0; + let mut x1884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1883, &mut x1884, x1882, x1787, x1851); + let mut x1885: u32 = 0; + let mut x1886: u32 = 0; + fiat_bp512_mulx_u32(&mut x1885, &mut x1886, x10, 0x3c4c9d05); + let mut x1887: u32 = 0; + let mut x1888: u32 = 0; + fiat_bp512_mulx_u32(&mut x1887, &mut x1888, x10, 0xa9ff6450); + let mut x1889: u32 = 0; + let mut x1890: u32 = 0; + fiat_bp512_mulx_u32(&mut x1889, &mut x1890, x10, 0x202e1940); + let mut x1891: u32 = 0; + let mut x1892: u32 = 0; + fiat_bp512_mulx_u32(&mut x1891, &mut x1892, x10, 0x2056eecc); + let mut x1893: u32 = 0; + let mut x1894: u32 = 0; + fiat_bp512_mulx_u32(&mut x1893, &mut x1894, x10, 0xa16daa5f); + let mut x1895: u32 = 0; + let mut x1896: u32 = 0; + fiat_bp512_mulx_u32(&mut x1895, &mut x1896, x10, 0xd42bff83); + let mut x1897: u32 = 0; + let mut x1898: u32 = 0; + fiat_bp512_mulx_u32(&mut x1897, &mut x1898, x10, 0x19486fd8); + let mut x1899: u32 = 0; + let mut x1900: u32 = 0; + fiat_bp512_mulx_u32(&mut x1899, &mut x1900, x10, 0xd5898057); + let mut x1901: u32 = 0; + let mut x1902: u32 = 0; + fiat_bp512_mulx_u32(&mut x1901, &mut x1902, x10, 0xe0c19a77); + let mut x1903: u32 = 0; + let mut x1904: u32 = 0; + fiat_bp512_mulx_u32(&mut x1903, &mut x1904, x10, 0x83514a25); + let mut x1905: u32 = 0; + let mut x1906: u32 = 0; + fiat_bp512_mulx_u32(&mut x1905, &mut x1906, x10, 0x53b7f9bc); + let mut x1907: u32 = 0; + let mut x1908: u32 = 0; + fiat_bp512_mulx_u32(&mut x1907, &mut x1908, x10, 0x905affd3); + let mut x1909: u32 = 0; + let mut x1910: u32 = 0; + fiat_bp512_mulx_u32(&mut x1909, &mut x1910, x10, 0x793fb130); + let mut x1911: u32 = 0; + let mut x1912: u32 = 0; + fiat_bp512_mulx_u32(&mut x1911, &mut x1912, x10, 0x27157905); + let mut x1913: u32 = 0; + let mut x1914: u32 = 0; + fiat_bp512_mulx_u32(&mut x1913, &mut x1914, x10, 0x49ad144a); + let mut x1915: u32 = 0; + let mut x1916: u32 = 0; + fiat_bp512_mulx_u32(&mut x1915, &mut x1916, x10, 0x6158f205); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1916, x1913); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1914, x1911); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1912, x1909); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1910, x1907); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1908, x1905); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1906, x1903); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1904, x1901); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1902, x1899); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1900, x1897); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1898, x1895); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1896, x1893); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1894, x1891); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1892, x1889); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1890, x1887); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1888, x1885); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, 0x0, x1855, x1915); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1857, x1917); + let mut x1951: u32 = 0; + let mut x1952: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1951, &mut x1952, x1950, x1859, x1919); + let mut x1953: u32 = 0; + let mut x1954: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1953, &mut x1954, x1952, x1861, x1921); + let mut x1955: u32 = 0; + let mut x1956: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1955, &mut x1956, x1954, x1863, x1923); + let mut x1957: u32 = 0; + let mut x1958: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1957, &mut x1958, x1956, x1865, x1925); + let mut x1959: u32 = 0; + let mut x1960: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1959, &mut x1960, x1958, x1867, x1927); + let mut x1961: u32 = 0; + let mut x1962: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1961, &mut x1962, x1960, x1869, x1929); + let mut x1963: u32 = 0; + let mut x1964: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1963, &mut x1964, x1962, x1871, x1931); + let mut x1965: u32 = 0; + let mut x1966: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1965, &mut x1966, x1964, x1873, x1933); + let mut x1967: u32 = 0; + let mut x1968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1967, &mut x1968, x1966, x1875, x1935); + let mut x1969: u32 = 0; + let mut x1970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1969, &mut x1970, x1968, x1877, x1937); + let mut x1971: u32 = 0; + let mut x1972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1971, &mut x1972, x1970, x1879, x1939); + let mut x1973: u32 = 0; + let mut x1974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1973, &mut x1974, x1972, x1881, x1941); + let mut x1975: u32 = 0; + let mut x1976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1975, &mut x1976, x1974, x1883, x1943); + let mut x1977: u32 = 0; + let mut x1978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1977, &mut x1978, x1976, (((x1884 as u32) + ((x1788 as u32) + ((x1756 as u32) + x1696))) + ((x1852 as u32) + x1792)), x1945); + let mut x1979: u32 = 0; + let mut x1980: u32 = 0; + fiat_bp512_mulx_u32(&mut x1979, &mut x1980, x1947, 0x7d89efc5); + let mut x1981: u32 = 0; + let mut x1982: u32 = 0; + fiat_bp512_mulx_u32(&mut x1981, &mut x1982, x1979, 0xaadd9db8); + let mut x1983: u32 = 0; + let mut x1984: u32 = 0; + fiat_bp512_mulx_u32(&mut x1983, &mut x1984, x1979, 0xdbe9c48b); + let mut x1985: u32 = 0; + let mut x1986: u32 = 0; + fiat_bp512_mulx_u32(&mut x1985, &mut x1986, x1979, 0x3fd4e6ae); + let mut x1987: u32 = 0; + let mut x1988: u32 = 0; + fiat_bp512_mulx_u32(&mut x1987, &mut x1988, x1979, 0x33c9fc07); + let mut x1989: u32 = 0; + let mut x1990: u32 = 0; + fiat_bp512_mulx_u32(&mut x1989, &mut x1990, x1979, 0xcb308db3); + let mut x1991: u32 = 0; + let mut x1992: u32 = 0; + fiat_bp512_mulx_u32(&mut x1991, &mut x1992, x1979, 0xb3c9d20e); + let mut x1993: u32 = 0; + let mut x1994: u32 = 0; + fiat_bp512_mulx_u32(&mut x1993, &mut x1994, x1979, 0xd6639cca); + let mut x1995: u32 = 0; + let mut x1996: u32 = 0; + fiat_bp512_mulx_u32(&mut x1995, &mut x1996, x1979, 0x70330871); + let mut x1997: u32 = 0; + let mut x1998: u32 = 0; + fiat_bp512_mulx_u32(&mut x1997, &mut x1998, x1979, 0x7d4d9b00); + let mut x1999: u32 = 0; + let mut x2000: u32 = 0; + fiat_bp512_mulx_u32(&mut x1999, &mut x2000, x1979, 0x9bc66842); + let mut x2001: u32 = 0; + let mut x2002: u32 = 0; + fiat_bp512_mulx_u32(&mut x2001, &mut x2002, x1979, 0xaecda12a); + let mut x2003: u32 = 0; + let mut x2004: u32 = 0; + fiat_bp512_mulx_u32(&mut x2003, &mut x2004, x1979, 0xe6a380e6); + let mut x2005: u32 = 0; + let mut x2006: u32 = 0; + fiat_bp512_mulx_u32(&mut x2005, &mut x2006, x1979, 0x2881ff2f); + let mut x2007: u32 = 0; + let mut x2008: u32 = 0; + fiat_bp512_mulx_u32(&mut x2007, &mut x2008, x1979, 0x2d82c685); + let mut x2009: u32 = 0; + let mut x2010: u32 = 0; + fiat_bp512_mulx_u32(&mut x2009, &mut x2010, x1979, 0x28aa6056); + let mut x2011: u32 = 0; + let mut x2012: u32 = 0; + fiat_bp512_mulx_u32(&mut x2011, &mut x2012, x1979, 0x583a48f3); + let mut x2013: u32 = 0; + let mut x2014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2013, &mut x2014, 0x0, x2012, x2009); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, x2014, x2010, x2007); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x2008, x2005); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x2006, x2003); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x2004, x2001); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x2002, x1999); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x2000, x1997); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1998, x1995); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1996, x1993); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1994, x1991); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1992, x1989); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1990, x1987); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1988, x1985); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1986, x1983); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1984, x1981); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, 0x0, x1947, x2011); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2013); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2015); + let mut x2049: u32 = 0; + let mut x2050: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2049, &mut x2050, x2048, x1953, x2017); + let mut x2051: u32 = 0; + let mut x2052: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2051, &mut x2052, x2050, x1955, x2019); + let mut x2053: u32 = 0; + let mut x2054: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2053, &mut x2054, x2052, x1957, x2021); + let mut x2055: u32 = 0; + let mut x2056: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2055, &mut x2056, x2054, x1959, x2023); + let mut x2057: u32 = 0; + let mut x2058: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2057, &mut x2058, x2056, x1961, x2025); + let mut x2059: u32 = 0; + let mut x2060: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2059, &mut x2060, x2058, x1963, x2027); + let mut x2061: u32 = 0; + let mut x2062: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2061, &mut x2062, x2060, x1965, x2029); + let mut x2063: u32 = 0; + let mut x2064: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2063, &mut x2064, x2062, x1967, x2031); + let mut x2065: u32 = 0; + let mut x2066: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2065, &mut x2066, x2064, x1969, x2033); + let mut x2067: u32 = 0; + let mut x2068: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2067, &mut x2068, x2066, x1971, x2035); + let mut x2069: u32 = 0; + let mut x2070: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2069, &mut x2070, x2068, x1973, x2037); + let mut x2071: u32 = 0; + let mut x2072: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2071, &mut x2072, x2070, x1975, x2039); + let mut x2073: u32 = 0; + let mut x2074: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2073, &mut x2074, x2072, x1977, x2041); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x11, 0x3c4c9d05); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x11, 0xa9ff6450); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x11, 0x202e1940); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x11, 0x2056eecc); + let mut x2083: u32 = 0; + let mut x2084: u32 = 0; + fiat_bp512_mulx_u32(&mut x2083, &mut x2084, x11, 0xa16daa5f); + let mut x2085: u32 = 0; + let mut x2086: u32 = 0; + fiat_bp512_mulx_u32(&mut x2085, &mut x2086, x11, 0xd42bff83); + let mut x2087: u32 = 0; + let mut x2088: u32 = 0; + fiat_bp512_mulx_u32(&mut x2087, &mut x2088, x11, 0x19486fd8); + let mut x2089: u32 = 0; + let mut x2090: u32 = 0; + fiat_bp512_mulx_u32(&mut x2089, &mut x2090, x11, 0xd5898057); + let mut x2091: u32 = 0; + let mut x2092: u32 = 0; + fiat_bp512_mulx_u32(&mut x2091, &mut x2092, x11, 0xe0c19a77); + let mut x2093: u32 = 0; + let mut x2094: u32 = 0; + fiat_bp512_mulx_u32(&mut x2093, &mut x2094, x11, 0x83514a25); + let mut x2095: u32 = 0; + let mut x2096: u32 = 0; + fiat_bp512_mulx_u32(&mut x2095, &mut x2096, x11, 0x53b7f9bc); + let mut x2097: u32 = 0; + let mut x2098: u32 = 0; + fiat_bp512_mulx_u32(&mut x2097, &mut x2098, x11, 0x905affd3); + let mut x2099: u32 = 0; + let mut x2100: u32 = 0; + fiat_bp512_mulx_u32(&mut x2099, &mut x2100, x11, 0x793fb130); + let mut x2101: u32 = 0; + let mut x2102: u32 = 0; + fiat_bp512_mulx_u32(&mut x2101, &mut x2102, x11, 0x27157905); + let mut x2103: u32 = 0; + let mut x2104: u32 = 0; + fiat_bp512_mulx_u32(&mut x2103, &mut x2104, x11, 0x49ad144a); + let mut x2105: u32 = 0; + let mut x2106: u32 = 0; + fiat_bp512_mulx_u32(&mut x2105, &mut x2106, x11, 0x6158f205); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, 0x0, x2106, x2103); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2104, x2101); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2102, x2099); + let mut x2113: u32 = 0; + let mut x2114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2113, &mut x2114, x2112, x2100, x2097); + let mut x2115: u32 = 0; + let mut x2116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2115, &mut x2116, x2114, x2098, x2095); + let mut x2117: u32 = 0; + let mut x2118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2117, &mut x2118, x2116, x2096, x2093); + let mut x2119: u32 = 0; + let mut x2120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2119, &mut x2120, x2118, x2094, x2091); + let mut x2121: u32 = 0; + let mut x2122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2121, &mut x2122, x2120, x2092, x2089); + let mut x2123: u32 = 0; + let mut x2124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2123, &mut x2124, x2122, x2090, x2087); + let mut x2125: u32 = 0; + let mut x2126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2125, &mut x2126, x2124, x2088, x2085); + let mut x2127: u32 = 0; + let mut x2128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2127, &mut x2128, x2126, x2086, x2083); + let mut x2129: u32 = 0; + let mut x2130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2129, &mut x2130, x2128, x2084, x2081); + let mut x2131: u32 = 0; + let mut x2132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2131, &mut x2132, x2130, x2082, x2079); + let mut x2133: u32 = 0; + let mut x2134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2133, &mut x2134, x2132, x2080, x2077); + let mut x2135: u32 = 0; + let mut x2136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2135, &mut x2136, x2134, x2078, x2075); + let mut x2137: u32 = 0; + let mut x2138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2137, &mut x2138, 0x0, x2045, x2105); + let mut x2139: u32 = 0; + let mut x2140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2139, &mut x2140, x2138, x2047, x2107); + let mut x2141: u32 = 0; + let mut x2142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2141, &mut x2142, x2140, x2049, x2109); + let mut x2143: u32 = 0; + let mut x2144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2143, &mut x2144, x2142, x2051, x2111); + let mut x2145: u32 = 0; + let mut x2146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2145, &mut x2146, x2144, x2053, x2113); + let mut x2147: u32 = 0; + let mut x2148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2147, &mut x2148, x2146, x2055, x2115); + let mut x2149: u32 = 0; + let mut x2150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2149, &mut x2150, x2148, x2057, x2117); + let mut x2151: u32 = 0; + let mut x2152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2151, &mut x2152, x2150, x2059, x2119); + let mut x2153: u32 = 0; + let mut x2154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2153, &mut x2154, x2152, x2061, x2121); + let mut x2155: u32 = 0; + let mut x2156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2155, &mut x2156, x2154, x2063, x2123); + let mut x2157: u32 = 0; + let mut x2158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2157, &mut x2158, x2156, x2065, x2125); + let mut x2159: u32 = 0; + let mut x2160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2159, &mut x2160, x2158, x2067, x2127); + let mut x2161: u32 = 0; + let mut x2162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2161, &mut x2162, x2160, x2069, x2129); + let mut x2163: u32 = 0; + let mut x2164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2163, &mut x2164, x2162, x2071, x2131); + let mut x2165: u32 = 0; + let mut x2166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2165, &mut x2166, x2164, x2073, x2133); + let mut x2167: u32 = 0; + let mut x2168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2167, &mut x2168, x2166, (((x2074 as u32) + ((x1978 as u32) + ((x1946 as u32) + x1886))) + ((x2042 as u32) + x1982)), x2135); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x2137, 0x7d89efc5); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x2169, 0xaadd9db8); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x2169, 0xdbe9c48b); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x2169, 0x3fd4e6ae); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x2169, 0x33c9fc07); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x2169, 0xcb308db3); + let mut x2181: u32 = 0; + let mut x2182: u32 = 0; + fiat_bp512_mulx_u32(&mut x2181, &mut x2182, x2169, 0xb3c9d20e); + let mut x2183: u32 = 0; + let mut x2184: u32 = 0; + fiat_bp512_mulx_u32(&mut x2183, &mut x2184, x2169, 0xd6639cca); + let mut x2185: u32 = 0; + let mut x2186: u32 = 0; + fiat_bp512_mulx_u32(&mut x2185, &mut x2186, x2169, 0x70330871); + let mut x2187: u32 = 0; + let mut x2188: u32 = 0; + fiat_bp512_mulx_u32(&mut x2187, &mut x2188, x2169, 0x7d4d9b00); + let mut x2189: u32 = 0; + let mut x2190: u32 = 0; + fiat_bp512_mulx_u32(&mut x2189, &mut x2190, x2169, 0x9bc66842); + let mut x2191: u32 = 0; + let mut x2192: u32 = 0; + fiat_bp512_mulx_u32(&mut x2191, &mut x2192, x2169, 0xaecda12a); + let mut x2193: u32 = 0; + let mut x2194: u32 = 0; + fiat_bp512_mulx_u32(&mut x2193, &mut x2194, x2169, 0xe6a380e6); + let mut x2195: u32 = 0; + let mut x2196: u32 = 0; + fiat_bp512_mulx_u32(&mut x2195, &mut x2196, x2169, 0x2881ff2f); + let mut x2197: u32 = 0; + let mut x2198: u32 = 0; + fiat_bp512_mulx_u32(&mut x2197, &mut x2198, x2169, 0x2d82c685); + let mut x2199: u32 = 0; + let mut x2200: u32 = 0; + fiat_bp512_mulx_u32(&mut x2199, &mut x2200, x2169, 0x28aa6056); + let mut x2201: u32 = 0; + let mut x2202: u32 = 0; + fiat_bp512_mulx_u32(&mut x2201, &mut x2202, x2169, 0x583a48f3); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, 0x0, x2202, x2199); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2200, x2197); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2198, x2195); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2196, x2193); + let mut x2211: u32 = 0; + let mut x2212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2211, &mut x2212, x2210, x2194, x2191); + let mut x2213: u32 = 0; + let mut x2214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2213, &mut x2214, x2212, x2192, x2189); + let mut x2215: u32 = 0; + let mut x2216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2215, &mut x2216, x2214, x2190, x2187); + let mut x2217: u32 = 0; + let mut x2218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2217, &mut x2218, x2216, x2188, x2185); + let mut x2219: u32 = 0; + let mut x2220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2219, &mut x2220, x2218, x2186, x2183); + let mut x2221: u32 = 0; + let mut x2222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2221, &mut x2222, x2220, x2184, x2181); + let mut x2223: u32 = 0; + let mut x2224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2223, &mut x2224, x2222, x2182, x2179); + let mut x2225: u32 = 0; + let mut x2226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2225, &mut x2226, x2224, x2180, x2177); + let mut x2227: u32 = 0; + let mut x2228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2227, &mut x2228, x2226, x2178, x2175); + let mut x2229: u32 = 0; + let mut x2230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2229, &mut x2230, x2228, x2176, x2173); + let mut x2231: u32 = 0; + let mut x2232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2231, &mut x2232, x2230, x2174, x2171); + let mut x2233: u32 = 0; + let mut x2234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2233, &mut x2234, 0x0, x2137, x2201); + let mut x2235: u32 = 0; + let mut x2236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2235, &mut x2236, x2234, x2139, x2203); + let mut x2237: u32 = 0; + let mut x2238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2237, &mut x2238, x2236, x2141, x2205); + let mut x2239: u32 = 0; + let mut x2240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2239, &mut x2240, x2238, x2143, x2207); + let mut x2241: u32 = 0; + let mut x2242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2241, &mut x2242, x2240, x2145, x2209); + let mut x2243: u32 = 0; + let mut x2244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2243, &mut x2244, x2242, x2147, x2211); + let mut x2245: u32 = 0; + let mut x2246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2245, &mut x2246, x2244, x2149, x2213); + let mut x2247: u32 = 0; + let mut x2248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2247, &mut x2248, x2246, x2151, x2215); + let mut x2249: u32 = 0; + let mut x2250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2249, &mut x2250, x2248, x2153, x2217); + let mut x2251: u32 = 0; + let mut x2252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2251, &mut x2252, x2250, x2155, x2219); + let mut x2253: u32 = 0; + let mut x2254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2253, &mut x2254, x2252, x2157, x2221); + let mut x2255: u32 = 0; + let mut x2256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2255, &mut x2256, x2254, x2159, x2223); + let mut x2257: u32 = 0; + let mut x2258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2257, &mut x2258, x2256, x2161, x2225); + let mut x2259: u32 = 0; + let mut x2260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2259, &mut x2260, x2258, x2163, x2227); + let mut x2261: u32 = 0; + let mut x2262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2261, &mut x2262, x2260, x2165, x2229); + let mut x2263: u32 = 0; + let mut x2264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2263, &mut x2264, x2262, x2167, x2231); + let mut x2265: u32 = 0; + let mut x2266: u32 = 0; + fiat_bp512_mulx_u32(&mut x2265, &mut x2266, x12, 0x3c4c9d05); + let mut x2267: u32 = 0; + let mut x2268: u32 = 0; + fiat_bp512_mulx_u32(&mut x2267, &mut x2268, x12, 0xa9ff6450); + let mut x2269: u32 = 0; + let mut x2270: u32 = 0; + fiat_bp512_mulx_u32(&mut x2269, &mut x2270, x12, 0x202e1940); + let mut x2271: u32 = 0; + let mut x2272: u32 = 0; + fiat_bp512_mulx_u32(&mut x2271, &mut x2272, x12, 0x2056eecc); + let mut x2273: u32 = 0; + let mut x2274: u32 = 0; + fiat_bp512_mulx_u32(&mut x2273, &mut x2274, x12, 0xa16daa5f); + let mut x2275: u32 = 0; + let mut x2276: u32 = 0; + fiat_bp512_mulx_u32(&mut x2275, &mut x2276, x12, 0xd42bff83); + let mut x2277: u32 = 0; + let mut x2278: u32 = 0; + fiat_bp512_mulx_u32(&mut x2277, &mut x2278, x12, 0x19486fd8); + let mut x2279: u32 = 0; + let mut x2280: u32 = 0; + fiat_bp512_mulx_u32(&mut x2279, &mut x2280, x12, 0xd5898057); + let mut x2281: u32 = 0; + let mut x2282: u32 = 0; + fiat_bp512_mulx_u32(&mut x2281, &mut x2282, x12, 0xe0c19a77); + let mut x2283: u32 = 0; + let mut x2284: u32 = 0; + fiat_bp512_mulx_u32(&mut x2283, &mut x2284, x12, 0x83514a25); + let mut x2285: u32 = 0; + let mut x2286: u32 = 0; + fiat_bp512_mulx_u32(&mut x2285, &mut x2286, x12, 0x53b7f9bc); + let mut x2287: u32 = 0; + let mut x2288: u32 = 0; + fiat_bp512_mulx_u32(&mut x2287, &mut x2288, x12, 0x905affd3); + let mut x2289: u32 = 0; + let mut x2290: u32 = 0; + fiat_bp512_mulx_u32(&mut x2289, &mut x2290, x12, 0x793fb130); + let mut x2291: u32 = 0; + let mut x2292: u32 = 0; + fiat_bp512_mulx_u32(&mut x2291, &mut x2292, x12, 0x27157905); + let mut x2293: u32 = 0; + let mut x2294: u32 = 0; + fiat_bp512_mulx_u32(&mut x2293, &mut x2294, x12, 0x49ad144a); + let mut x2295: u32 = 0; + let mut x2296: u32 = 0; + fiat_bp512_mulx_u32(&mut x2295, &mut x2296, x12, 0x6158f205); + let mut x2297: u32 = 0; + let mut x2298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2297, &mut x2298, 0x0, x2296, x2293); + let mut x2299: u32 = 0; + let mut x2300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2299, &mut x2300, x2298, x2294, x2291); + let mut x2301: u32 = 0; + let mut x2302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2301, &mut x2302, x2300, x2292, x2289); + let mut x2303: u32 = 0; + let mut x2304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2303, &mut x2304, x2302, x2290, x2287); + let mut x2305: u32 = 0; + let mut x2306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2305, &mut x2306, x2304, x2288, x2285); + let mut x2307: u32 = 0; + let mut x2308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2307, &mut x2308, x2306, x2286, x2283); + let mut x2309: u32 = 0; + let mut x2310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2309, &mut x2310, x2308, x2284, x2281); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, x2310, x2282, x2279); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2280, x2277); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2278, x2275); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2276, x2273); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2274, x2271); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2272, x2269); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2270, x2267); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2268, x2265); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, 0x0, x2235, x2295); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2237, x2297); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2239, x2299); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2241, x2301); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2243, x2303); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2245, x2305); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2247, x2307); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2249, x2309); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2251, x2311); + let mut x2345: u32 = 0; + let mut x2346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2345, &mut x2346, x2344, x2253, x2313); + let mut x2347: u32 = 0; + let mut x2348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2347, &mut x2348, x2346, x2255, x2315); + let mut x2349: u32 = 0; + let mut x2350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2349, &mut x2350, x2348, x2257, x2317); + let mut x2351: u32 = 0; + let mut x2352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2351, &mut x2352, x2350, x2259, x2319); + let mut x2353: u32 = 0; + let mut x2354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2353, &mut x2354, x2352, x2261, x2321); + let mut x2355: u32 = 0; + let mut x2356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2355, &mut x2356, x2354, x2263, x2323); + let mut x2357: u32 = 0; + let mut x2358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2357, &mut x2358, x2356, (((x2264 as u32) + ((x2168 as u32) + ((x2136 as u32) + x2076))) + ((x2232 as u32) + x2172)), x2325); + let mut x2359: u32 = 0; + let mut x2360: u32 = 0; + fiat_bp512_mulx_u32(&mut x2359, &mut x2360, x2327, 0x7d89efc5); + let mut x2361: u32 = 0; + let mut x2362: u32 = 0; + fiat_bp512_mulx_u32(&mut x2361, &mut x2362, x2359, 0xaadd9db8); + let mut x2363: u32 = 0; + let mut x2364: u32 = 0; + fiat_bp512_mulx_u32(&mut x2363, &mut x2364, x2359, 0xdbe9c48b); + let mut x2365: u32 = 0; + let mut x2366: u32 = 0; + fiat_bp512_mulx_u32(&mut x2365, &mut x2366, x2359, 0x3fd4e6ae); + let mut x2367: u32 = 0; + let mut x2368: u32 = 0; + fiat_bp512_mulx_u32(&mut x2367, &mut x2368, x2359, 0x33c9fc07); + let mut x2369: u32 = 0; + let mut x2370: u32 = 0; + fiat_bp512_mulx_u32(&mut x2369, &mut x2370, x2359, 0xcb308db3); + let mut x2371: u32 = 0; + let mut x2372: u32 = 0; + fiat_bp512_mulx_u32(&mut x2371, &mut x2372, x2359, 0xb3c9d20e); + let mut x2373: u32 = 0; + let mut x2374: u32 = 0; + fiat_bp512_mulx_u32(&mut x2373, &mut x2374, x2359, 0xd6639cca); + let mut x2375: u32 = 0; + let mut x2376: u32 = 0; + fiat_bp512_mulx_u32(&mut x2375, &mut x2376, x2359, 0x70330871); + let mut x2377: u32 = 0; + let mut x2378: u32 = 0; + fiat_bp512_mulx_u32(&mut x2377, &mut x2378, x2359, 0x7d4d9b00); + let mut x2379: u32 = 0; + let mut x2380: u32 = 0; + fiat_bp512_mulx_u32(&mut x2379, &mut x2380, x2359, 0x9bc66842); + let mut x2381: u32 = 0; + let mut x2382: u32 = 0; + fiat_bp512_mulx_u32(&mut x2381, &mut x2382, x2359, 0xaecda12a); + let mut x2383: u32 = 0; + let mut x2384: u32 = 0; + fiat_bp512_mulx_u32(&mut x2383, &mut x2384, x2359, 0xe6a380e6); + let mut x2385: u32 = 0; + let mut x2386: u32 = 0; + fiat_bp512_mulx_u32(&mut x2385, &mut x2386, x2359, 0x2881ff2f); + let mut x2387: u32 = 0; + let mut x2388: u32 = 0; + fiat_bp512_mulx_u32(&mut x2387, &mut x2388, x2359, 0x2d82c685); + let mut x2389: u32 = 0; + let mut x2390: u32 = 0; + fiat_bp512_mulx_u32(&mut x2389, &mut x2390, x2359, 0x28aa6056); + let mut x2391: u32 = 0; + let mut x2392: u32 = 0; + fiat_bp512_mulx_u32(&mut x2391, &mut x2392, x2359, 0x583a48f3); + let mut x2393: u32 = 0; + let mut x2394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2393, &mut x2394, 0x0, x2392, x2389); + let mut x2395: u32 = 0; + let mut x2396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2395, &mut x2396, x2394, x2390, x2387); + let mut x2397: u32 = 0; + let mut x2398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2397, &mut x2398, x2396, x2388, x2385); + let mut x2399: u32 = 0; + let mut x2400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2399, &mut x2400, x2398, x2386, x2383); + let mut x2401: u32 = 0; + let mut x2402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2401, &mut x2402, x2400, x2384, x2381); + let mut x2403: u32 = 0; + let mut x2404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2403, &mut x2404, x2402, x2382, x2379); + let mut x2405: u32 = 0; + let mut x2406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2405, &mut x2406, x2404, x2380, x2377); + let mut x2407: u32 = 0; + let mut x2408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2407, &mut x2408, x2406, x2378, x2375); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, x2408, x2376, x2373); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2374, x2371); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2372, x2369); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2370, x2367); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2368, x2365); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2366, x2363); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2364, x2361); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, 0x0, x2327, x2391); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2393); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2395); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2397); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2399); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2401); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2403); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2405); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2407); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2409); + let mut x2443: u32 = 0; + let mut x2444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2443, &mut x2444, x2442, x2347, x2411); + let mut x2445: u32 = 0; + let mut x2446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2445, &mut x2446, x2444, x2349, x2413); + let mut x2447: u32 = 0; + let mut x2448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2447, &mut x2448, x2446, x2351, x2415); + let mut x2449: u32 = 0; + let mut x2450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2449, &mut x2450, x2448, x2353, x2417); + let mut x2451: u32 = 0; + let mut x2452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2451, &mut x2452, x2450, x2355, x2419); + let mut x2453: u32 = 0; + let mut x2454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2453, &mut x2454, x2452, x2357, x2421); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x13, 0x3c4c9d05); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x13, 0xa9ff6450); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x13, 0x202e1940); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x13, 0x2056eecc); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x13, 0xa16daa5f); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x13, 0xd42bff83); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x13, 0x19486fd8); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x13, 0xd5898057); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x13, 0xe0c19a77); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x13, 0x83514a25); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x13, 0x53b7f9bc); + let mut x2477: u32 = 0; + let mut x2478: u32 = 0; + fiat_bp512_mulx_u32(&mut x2477, &mut x2478, x13, 0x905affd3); + let mut x2479: u32 = 0; + let mut x2480: u32 = 0; + fiat_bp512_mulx_u32(&mut x2479, &mut x2480, x13, 0x793fb130); + let mut x2481: u32 = 0; + let mut x2482: u32 = 0; + fiat_bp512_mulx_u32(&mut x2481, &mut x2482, x13, 0x27157905); + let mut x2483: u32 = 0; + let mut x2484: u32 = 0; + fiat_bp512_mulx_u32(&mut x2483, &mut x2484, x13, 0x49ad144a); + let mut x2485: u32 = 0; + let mut x2486: u32 = 0; + fiat_bp512_mulx_u32(&mut x2485, &mut x2486, x13, 0x6158f205); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, 0x0, x2486, x2483); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2484, x2481); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2482, x2479); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2480, x2477); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2478, x2475); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2476, x2473); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2474, x2471); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2472, x2469); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2470, x2467); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2468, x2465); + let mut x2507: u32 = 0; + let mut x2508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2507, &mut x2508, x2506, x2466, x2463); + let mut x2509: u32 = 0; + let mut x2510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2509, &mut x2510, x2508, x2464, x2461); + let mut x2511: u32 = 0; + let mut x2512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2511, &mut x2512, x2510, x2462, x2459); + let mut x2513: u32 = 0; + let mut x2514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2513, &mut x2514, x2512, x2460, x2457); + let mut x2515: u32 = 0; + let mut x2516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2515, &mut x2516, x2514, x2458, x2455); + let mut x2517: u32 = 0; + let mut x2518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2517, &mut x2518, 0x0, x2425, x2485); + let mut x2519: u32 = 0; + let mut x2520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2519, &mut x2520, x2518, x2427, x2487); + let mut x2521: u32 = 0; + let mut x2522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2521, &mut x2522, x2520, x2429, x2489); + let mut x2523: u32 = 0; + let mut x2524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2523, &mut x2524, x2522, x2431, x2491); + let mut x2525: u32 = 0; + let mut x2526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2525, &mut x2526, x2524, x2433, x2493); + let mut x2527: u32 = 0; + let mut x2528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2527, &mut x2528, x2526, x2435, x2495); + let mut x2529: u32 = 0; + let mut x2530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2529, &mut x2530, x2528, x2437, x2497); + let mut x2531: u32 = 0; + let mut x2532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2531, &mut x2532, x2530, x2439, x2499); + let mut x2533: u32 = 0; + let mut x2534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2533, &mut x2534, x2532, x2441, x2501); + let mut x2535: u32 = 0; + let mut x2536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2535, &mut x2536, x2534, x2443, x2503); + let mut x2537: u32 = 0; + let mut x2538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2537, &mut x2538, x2536, x2445, x2505); + let mut x2539: u32 = 0; + let mut x2540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2539, &mut x2540, x2538, x2447, x2507); + let mut x2541: u32 = 0; + let mut x2542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2541, &mut x2542, x2540, x2449, x2509); + let mut x2543: u32 = 0; + let mut x2544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2543, &mut x2544, x2542, x2451, x2511); + let mut x2545: u32 = 0; + let mut x2546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2545, &mut x2546, x2544, x2453, x2513); + let mut x2547: u32 = 0; + let mut x2548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2547, &mut x2548, x2546, (((x2454 as u32) + ((x2358 as u32) + ((x2326 as u32) + x2266))) + ((x2422 as u32) + x2362)), x2515); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x2517, 0x7d89efc5); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x2549, 0xaadd9db8); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x2549, 0xdbe9c48b); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x2549, 0x3fd4e6ae); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x2549, 0x33c9fc07); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x2549, 0xcb308db3); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x2549, 0xb3c9d20e); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x2549, 0xd6639cca); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x2549, 0x70330871); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x2549, 0x7d4d9b00); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x2549, 0x9bc66842); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x2549, 0xaecda12a); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x2549, 0xe6a380e6); + let mut x2575: u32 = 0; + let mut x2576: u32 = 0; + fiat_bp512_mulx_u32(&mut x2575, &mut x2576, x2549, 0x2881ff2f); + let mut x2577: u32 = 0; + let mut x2578: u32 = 0; + fiat_bp512_mulx_u32(&mut x2577, &mut x2578, x2549, 0x2d82c685); + let mut x2579: u32 = 0; + let mut x2580: u32 = 0; + fiat_bp512_mulx_u32(&mut x2579, &mut x2580, x2549, 0x28aa6056); + let mut x2581: u32 = 0; + let mut x2582: u32 = 0; + fiat_bp512_mulx_u32(&mut x2581, &mut x2582, x2549, 0x583a48f3); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, 0x0, x2582, x2579); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2580, x2577); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2578, x2575); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2576, x2573); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2574, x2571); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2572, x2569); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2570, x2567); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2568, x2565); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2566, x2563); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2564, x2561); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2562, x2559); + let mut x2605: u32 = 0; + let mut x2606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2605, &mut x2606, x2604, x2560, x2557); + let mut x2607: u32 = 0; + let mut x2608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2607, &mut x2608, x2606, x2558, x2555); + let mut x2609: u32 = 0; + let mut x2610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2609, &mut x2610, x2608, x2556, x2553); + let mut x2611: u32 = 0; + let mut x2612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2611, &mut x2612, x2610, x2554, x2551); + let mut x2613: u32 = 0; + let mut x2614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2613, &mut x2614, 0x0, x2517, x2581); + let mut x2615: u32 = 0; + let mut x2616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2615, &mut x2616, x2614, x2519, x2583); + let mut x2617: u32 = 0; + let mut x2618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2617, &mut x2618, x2616, x2521, x2585); + let mut x2619: u32 = 0; + let mut x2620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2619, &mut x2620, x2618, x2523, x2587); + let mut x2621: u32 = 0; + let mut x2622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2621, &mut x2622, x2620, x2525, x2589); + let mut x2623: u32 = 0; + let mut x2624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2623, &mut x2624, x2622, x2527, x2591); + let mut x2625: u32 = 0; + let mut x2626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2625, &mut x2626, x2624, x2529, x2593); + let mut x2627: u32 = 0; + let mut x2628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2627, &mut x2628, x2626, x2531, x2595); + let mut x2629: u32 = 0; + let mut x2630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2629, &mut x2630, x2628, x2533, x2597); + let mut x2631: u32 = 0; + let mut x2632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2631, &mut x2632, x2630, x2535, x2599); + let mut x2633: u32 = 0; + let mut x2634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2633, &mut x2634, x2632, x2537, x2601); + let mut x2635: u32 = 0; + let mut x2636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2635, &mut x2636, x2634, x2539, x2603); + let mut x2637: u32 = 0; + let mut x2638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2637, &mut x2638, x2636, x2541, x2605); + let mut x2639: u32 = 0; + let mut x2640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2639, &mut x2640, x2638, x2543, x2607); + let mut x2641: u32 = 0; + let mut x2642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2641, &mut x2642, x2640, x2545, x2609); + let mut x2643: u32 = 0; + let mut x2644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2643, &mut x2644, x2642, x2547, x2611); + let mut x2645: u32 = 0; + let mut x2646: u32 = 0; + fiat_bp512_mulx_u32(&mut x2645, &mut x2646, x14, 0x3c4c9d05); + let mut x2647: u32 = 0; + let mut x2648: u32 = 0; + fiat_bp512_mulx_u32(&mut x2647, &mut x2648, x14, 0xa9ff6450); + let mut x2649: u32 = 0; + let mut x2650: u32 = 0; + fiat_bp512_mulx_u32(&mut x2649, &mut x2650, x14, 0x202e1940); + let mut x2651: u32 = 0; + let mut x2652: u32 = 0; + fiat_bp512_mulx_u32(&mut x2651, &mut x2652, x14, 0x2056eecc); + let mut x2653: u32 = 0; + let mut x2654: u32 = 0; + fiat_bp512_mulx_u32(&mut x2653, &mut x2654, x14, 0xa16daa5f); + let mut x2655: u32 = 0; + let mut x2656: u32 = 0; + fiat_bp512_mulx_u32(&mut x2655, &mut x2656, x14, 0xd42bff83); + let mut x2657: u32 = 0; + let mut x2658: u32 = 0; + fiat_bp512_mulx_u32(&mut x2657, &mut x2658, x14, 0x19486fd8); + let mut x2659: u32 = 0; + let mut x2660: u32 = 0; + fiat_bp512_mulx_u32(&mut x2659, &mut x2660, x14, 0xd5898057); + let mut x2661: u32 = 0; + let mut x2662: u32 = 0; + fiat_bp512_mulx_u32(&mut x2661, &mut x2662, x14, 0xe0c19a77); + let mut x2663: u32 = 0; + let mut x2664: u32 = 0; + fiat_bp512_mulx_u32(&mut x2663, &mut x2664, x14, 0x83514a25); + let mut x2665: u32 = 0; + let mut x2666: u32 = 0; + fiat_bp512_mulx_u32(&mut x2665, &mut x2666, x14, 0x53b7f9bc); + let mut x2667: u32 = 0; + let mut x2668: u32 = 0; + fiat_bp512_mulx_u32(&mut x2667, &mut x2668, x14, 0x905affd3); + let mut x2669: u32 = 0; + let mut x2670: u32 = 0; + fiat_bp512_mulx_u32(&mut x2669, &mut x2670, x14, 0x793fb130); + let mut x2671: u32 = 0; + let mut x2672: u32 = 0; + fiat_bp512_mulx_u32(&mut x2671, &mut x2672, x14, 0x27157905); + let mut x2673: u32 = 0; + let mut x2674: u32 = 0; + fiat_bp512_mulx_u32(&mut x2673, &mut x2674, x14, 0x49ad144a); + let mut x2675: u32 = 0; + let mut x2676: u32 = 0; + fiat_bp512_mulx_u32(&mut x2675, &mut x2676, x14, 0x6158f205); + let mut x2677: u32 = 0; + let mut x2678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2677, &mut x2678, 0x0, x2676, x2673); + let mut x2679: u32 = 0; + let mut x2680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2679, &mut x2680, x2678, x2674, x2671); + let mut x2681: u32 = 0; + let mut x2682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2681, &mut x2682, x2680, x2672, x2669); + let mut x2683: u32 = 0; + let mut x2684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2683, &mut x2684, x2682, x2670, x2667); + let mut x2685: u32 = 0; + let mut x2686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2685, &mut x2686, x2684, x2668, x2665); + let mut x2687: u32 = 0; + let mut x2688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2687, &mut x2688, x2686, x2666, x2663); + let mut x2689: u32 = 0; + let mut x2690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2689, &mut x2690, x2688, x2664, x2661); + let mut x2691: u32 = 0; + let mut x2692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2691, &mut x2692, x2690, x2662, x2659); + let mut x2693: u32 = 0; + let mut x2694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2693, &mut x2694, x2692, x2660, x2657); + let mut x2695: u32 = 0; + let mut x2696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2695, &mut x2696, x2694, x2658, x2655); + let mut x2697: u32 = 0; + let mut x2698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2697, &mut x2698, x2696, x2656, x2653); + let mut x2699: u32 = 0; + let mut x2700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2699, &mut x2700, x2698, x2654, x2651); + let mut x2701: u32 = 0; + let mut x2702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2701, &mut x2702, x2700, x2652, x2649); + let mut x2703: u32 = 0; + let mut x2704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2703, &mut x2704, x2702, x2650, x2647); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, x2704, x2648, x2645); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, 0x0, x2615, x2675); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2617, x2677); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2619, x2679); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2621, x2681); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2623, x2683); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2625, x2685); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2627, x2687); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2629, x2689); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2631, x2691); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2633, x2693); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2635, x2695); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2637, x2697); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2639, x2699); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2641, x2701); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2643, x2703); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, (((x2644 as u32) + ((x2548 as u32) + ((x2516 as u32) + x2456))) + ((x2612 as u32) + x2552)), x2705); + let mut x2739: u32 = 0; + let mut x2740: u32 = 0; + fiat_bp512_mulx_u32(&mut x2739, &mut x2740, x2707, 0x7d89efc5); + let mut x2741: u32 = 0; + let mut x2742: u32 = 0; + fiat_bp512_mulx_u32(&mut x2741, &mut x2742, x2739, 0xaadd9db8); + let mut x2743: u32 = 0; + let mut x2744: u32 = 0; + fiat_bp512_mulx_u32(&mut x2743, &mut x2744, x2739, 0xdbe9c48b); + let mut x2745: u32 = 0; + let mut x2746: u32 = 0; + fiat_bp512_mulx_u32(&mut x2745, &mut x2746, x2739, 0x3fd4e6ae); + let mut x2747: u32 = 0; + let mut x2748: u32 = 0; + fiat_bp512_mulx_u32(&mut x2747, &mut x2748, x2739, 0x33c9fc07); + let mut x2749: u32 = 0; + let mut x2750: u32 = 0; + fiat_bp512_mulx_u32(&mut x2749, &mut x2750, x2739, 0xcb308db3); + let mut x2751: u32 = 0; + let mut x2752: u32 = 0; + fiat_bp512_mulx_u32(&mut x2751, &mut x2752, x2739, 0xb3c9d20e); + let mut x2753: u32 = 0; + let mut x2754: u32 = 0; + fiat_bp512_mulx_u32(&mut x2753, &mut x2754, x2739, 0xd6639cca); + let mut x2755: u32 = 0; + let mut x2756: u32 = 0; + fiat_bp512_mulx_u32(&mut x2755, &mut x2756, x2739, 0x70330871); + let mut x2757: u32 = 0; + let mut x2758: u32 = 0; + fiat_bp512_mulx_u32(&mut x2757, &mut x2758, x2739, 0x7d4d9b00); + let mut x2759: u32 = 0; + let mut x2760: u32 = 0; + fiat_bp512_mulx_u32(&mut x2759, &mut x2760, x2739, 0x9bc66842); + let mut x2761: u32 = 0; + let mut x2762: u32 = 0; + fiat_bp512_mulx_u32(&mut x2761, &mut x2762, x2739, 0xaecda12a); + let mut x2763: u32 = 0; + let mut x2764: u32 = 0; + fiat_bp512_mulx_u32(&mut x2763, &mut x2764, x2739, 0xe6a380e6); + let mut x2765: u32 = 0; + let mut x2766: u32 = 0; + fiat_bp512_mulx_u32(&mut x2765, &mut x2766, x2739, 0x2881ff2f); + let mut x2767: u32 = 0; + let mut x2768: u32 = 0; + fiat_bp512_mulx_u32(&mut x2767, &mut x2768, x2739, 0x2d82c685); + let mut x2769: u32 = 0; + let mut x2770: u32 = 0; + fiat_bp512_mulx_u32(&mut x2769, &mut x2770, x2739, 0x28aa6056); + let mut x2771: u32 = 0; + let mut x2772: u32 = 0; + fiat_bp512_mulx_u32(&mut x2771, &mut x2772, x2739, 0x583a48f3); + let mut x2773: u32 = 0; + let mut x2774: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2773, &mut x2774, 0x0, x2772, x2769); + let mut x2775: u32 = 0; + let mut x2776: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2775, &mut x2776, x2774, x2770, x2767); + let mut x2777: u32 = 0; + let mut x2778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2777, &mut x2778, x2776, x2768, x2765); + let mut x2779: u32 = 0; + let mut x2780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2779, &mut x2780, x2778, x2766, x2763); + let mut x2781: u32 = 0; + let mut x2782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2781, &mut x2782, x2780, x2764, x2761); + let mut x2783: u32 = 0; + let mut x2784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2783, &mut x2784, x2782, x2762, x2759); + let mut x2785: u32 = 0; + let mut x2786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2785, &mut x2786, x2784, x2760, x2757); + let mut x2787: u32 = 0; + let mut x2788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2787, &mut x2788, x2786, x2758, x2755); + let mut x2789: u32 = 0; + let mut x2790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2789, &mut x2790, x2788, x2756, x2753); + let mut x2791: u32 = 0; + let mut x2792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2791, &mut x2792, x2790, x2754, x2751); + let mut x2793: u32 = 0; + let mut x2794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2793, &mut x2794, x2792, x2752, x2749); + let mut x2795: u32 = 0; + let mut x2796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2795, &mut x2796, x2794, x2750, x2747); + let mut x2797: u32 = 0; + let mut x2798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2797, &mut x2798, x2796, x2748, x2745); + let mut x2799: u32 = 0; + let mut x2800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2799, &mut x2800, x2798, x2746, x2743); + let mut x2801: u32 = 0; + let mut x2802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2801, &mut x2802, x2800, x2744, x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2771); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2773); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2775); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2777); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2779); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2781); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2783); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2785); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2787); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2789); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2791); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2793); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2795); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2797); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2799); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2801); + let mut x2835: u32 = 0; + let mut x2836: u32 = 0; + fiat_bp512_mulx_u32(&mut x2835, &mut x2836, x15, 0x3c4c9d05); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x15, 0xa9ff6450); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x15, 0x202e1940); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x15, 0x2056eecc); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x15, 0xa16daa5f); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x15, 0xd42bff83); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x15, 0x19486fd8); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x15, 0xd5898057); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x15, 0xe0c19a77); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x15, 0x83514a25); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x15, 0x53b7f9bc); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x15, 0x905affd3); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x15, 0x793fb130); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x15, 0x27157905); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x15, 0x49ad144a); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x15, 0x6158f205); + let mut x2867: u32 = 0; + let mut x2868: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2867, &mut x2868, 0x0, x2866, x2863); + let mut x2869: u32 = 0; + let mut x2870: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2869, &mut x2870, x2868, x2864, x2861); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, x2870, x2862, x2859); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2860, x2857); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2858, x2855); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2856, x2853); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2854, x2851); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2852, x2849); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2850, x2847); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2848, x2845); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2846, x2843); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2844, x2841); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2842, x2839); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2840, x2837); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2838, x2835); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, 0x0, x2805, x2865); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2807, x2867); + let mut x2901: u32 = 0; + let mut x2902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2901, &mut x2902, x2900, x2809, x2869); + let mut x2903: u32 = 0; + let mut x2904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2903, &mut x2904, x2902, x2811, x2871); + let mut x2905: u32 = 0; + let mut x2906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2905, &mut x2906, x2904, x2813, x2873); + let mut x2907: u32 = 0; + let mut x2908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2907, &mut x2908, x2906, x2815, x2875); + let mut x2909: u32 = 0; + let mut x2910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2909, &mut x2910, x2908, x2817, x2877); + let mut x2911: u32 = 0; + let mut x2912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2911, &mut x2912, x2910, x2819, x2879); + let mut x2913: u32 = 0; + let mut x2914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2913, &mut x2914, x2912, x2821, x2881); + let mut x2915: u32 = 0; + let mut x2916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2915, &mut x2916, x2914, x2823, x2883); + let mut x2917: u32 = 0; + let mut x2918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2917, &mut x2918, x2916, x2825, x2885); + let mut x2919: u32 = 0; + let mut x2920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2919, &mut x2920, x2918, x2827, x2887); + let mut x2921: u32 = 0; + let mut x2922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2921, &mut x2922, x2920, x2829, x2889); + let mut x2923: u32 = 0; + let mut x2924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2923, &mut x2924, x2922, x2831, x2891); + let mut x2925: u32 = 0; + let mut x2926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2925, &mut x2926, x2924, x2833, x2893); + let mut x2927: u32 = 0; + let mut x2928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2927, &mut x2928, x2926, (((x2834 as u32) + ((x2738 as u32) + ((x2706 as u32) + x2646))) + ((x2802 as u32) + x2742)), x2895); + let mut x2929: u32 = 0; + let mut x2930: u32 = 0; + fiat_bp512_mulx_u32(&mut x2929, &mut x2930, x2897, 0x7d89efc5); + let mut x2931: u32 = 0; + let mut x2932: u32 = 0; + fiat_bp512_mulx_u32(&mut x2931, &mut x2932, x2929, 0xaadd9db8); + let mut x2933: u32 = 0; + let mut x2934: u32 = 0; + fiat_bp512_mulx_u32(&mut x2933, &mut x2934, x2929, 0xdbe9c48b); + let mut x2935: u32 = 0; + let mut x2936: u32 = 0; + fiat_bp512_mulx_u32(&mut x2935, &mut x2936, x2929, 0x3fd4e6ae); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x2929, 0x33c9fc07); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x2929, 0xcb308db3); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x2929, 0xb3c9d20e); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x2929, 0xd6639cca); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x2929, 0x70330871); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x2929, 0x7d4d9b00); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x2929, 0x9bc66842); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x2929, 0xaecda12a); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x2929, 0xe6a380e6); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x2929, 0x2881ff2f); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x2929, 0x2d82c685); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x2929, 0x28aa6056); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x2929, 0x583a48f3); + let mut x2963: u32 = 0; + let mut x2964: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2963, &mut x2964, 0x0, x2962, x2959); + let mut x2965: u32 = 0; + let mut x2966: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2965, &mut x2966, x2964, x2960, x2957); + let mut x2967: u32 = 0; + let mut x2968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2967, &mut x2968, x2966, x2958, x2955); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, x2968, x2956, x2953); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2954, x2951); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2952, x2949); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2950, x2947); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2948, x2945); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2946, x2943); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2944, x2941); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2942, x2939); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2940, x2937); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2938, x2935); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2936, x2933); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2934, x2931); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, 0x0, x2897, x2961); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2899, x2963); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2901, x2965); + let mut x2999: u32 = 0; + let mut x3000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2999, &mut x3000, x2998, x2903, x2967); + let mut x3001: u32 = 0; + let mut x3002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3001, &mut x3002, x3000, x2905, x2969); + let mut x3003: u32 = 0; + let mut x3004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3003, &mut x3004, x3002, x2907, x2971); + let mut x3005: u32 = 0; + let mut x3006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3005, &mut x3006, x3004, x2909, x2973); + let mut x3007: u32 = 0; + let mut x3008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3007, &mut x3008, x3006, x2911, x2975); + let mut x3009: u32 = 0; + let mut x3010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3009, &mut x3010, x3008, x2913, x2977); + let mut x3011: u32 = 0; + let mut x3012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3011, &mut x3012, x3010, x2915, x2979); + let mut x3013: u32 = 0; + let mut x3014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3013, &mut x3014, x3012, x2917, x2981); + let mut x3015: u32 = 0; + let mut x3016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3015, &mut x3016, x3014, x2919, x2983); + let mut x3017: u32 = 0; + let mut x3018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3017, &mut x3018, x3016, x2921, x2985); + let mut x3019: u32 = 0; + let mut x3020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3019, &mut x3020, x3018, x2923, x2987); + let mut x3021: u32 = 0; + let mut x3022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3021, &mut x3022, x3020, x2925, x2989); + let mut x3023: u32 = 0; + let mut x3024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3023, &mut x3024, x3022, x2927, x2991); + let x3025: u32 = (((x3024 as u32) + ((x2928 as u32) + ((x2896 as u32) + x2836))) + ((x2992 as u32) + x2932)); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3026, &mut x3027, 0x0, x2995, 0x583a48f3); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3028, &mut x3029, x3027, x2997, 0x28aa6056); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3030, &mut x3031, x3029, x2999, 0x2d82c685); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3032, &mut x3033, x3031, x3001, 0x2881ff2f); + let mut x3034: u32 = 0; + let mut x3035: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3034, &mut x3035, x3033, x3003, 0xe6a380e6); + let mut x3036: u32 = 0; + let mut x3037: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3036, &mut x3037, x3035, x3005, 0xaecda12a); + let mut x3038: u32 = 0; + let mut x3039: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3038, &mut x3039, x3037, x3007, 0x9bc66842); + let mut x3040: u32 = 0; + let mut x3041: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3040, &mut x3041, x3039, x3009, 0x7d4d9b00); + let mut x3042: u32 = 0; + let mut x3043: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3042, &mut x3043, x3041, x3011, 0x70330871); + let mut x3044: u32 = 0; + let mut x3045: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3044, &mut x3045, x3043, x3013, 0xd6639cca); + let mut x3046: u32 = 0; + let mut x3047: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3046, &mut x3047, x3045, x3015, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3048, &mut x3049, x3047, x3017, 0xcb308db3); + let mut x3050: u32 = 0; + let mut x3051: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3050, &mut x3051, x3049, x3019, 0x33c9fc07); + let mut x3052: u32 = 0; + let mut x3053: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3052, &mut x3053, x3051, x3021, 0x3fd4e6ae); + let mut x3054: u32 = 0; + let mut x3055: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3054, &mut x3055, x3053, x3023, 0xdbe9c48b); + let mut x3056: u32 = 0; + let mut x3057: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3056, &mut x3057, x3055, x3025, 0xaadd9db8); + let mut x3058: u32 = 0; + let mut x3059: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3058, &mut x3059, x3057, (0x0 as u32), (0x0 as u32)); + let mut x3060: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3060, x3059, x3026, x2995); + let mut x3061: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3061, x3059, x3028, x2997); + let mut x3062: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3062, x3059, x3030, x2999); + let mut x3063: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3063, x3059, x3032, x3001); + let mut x3064: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3064, x3059, x3034, x3003); + let mut x3065: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3065, x3059, x3036, x3005); + let mut x3066: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3066, x3059, x3038, x3007); + let mut x3067: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3067, x3059, x3040, x3009); + let mut x3068: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3068, x3059, x3042, x3011); + let mut x3069: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3069, x3059, x3044, x3013); + let mut x3070: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3070, x3059, x3046, x3015); + let mut x3071: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3071, x3059, x3048, x3017); + let mut x3072: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3072, x3059, x3050, x3019); + let mut x3073: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3073, x3059, x3052, x3021); + let mut x3074: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3074, x3059, x3054, x3023); + let mut x3075: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3075, x3059, x3056, x3025); + out1[0] = x3060; + out1[1] = x3061; + out1[2] = x3062; + out1[3] = x3063; + out1[4] = x3064; + out1[5] = x3065; + out1[6] = x3066; + out1[7] = x3067; + out1[8] = x3068; + out1[9] = x3069; + out1[10] = x3070; + out1[11] = x3071; + out1[12] = x3072; + out1[13] = x3073; + out1[14] = x3074; + out1[15] = x3075; +} + +/// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { + let x1: u32 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | ((arg1[7]) | ((arg1[8]) | ((arg1[9]) | ((arg1[10]) | ((arg1[11]) | ((arg1[12]) | ((arg1[13]) | ((arg1[14]) | (arg1[15])))))))))))))))); + *out1 = x1; +} + +/// The function fiat_bp512_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_selectznz(out1: &mut [u32; 16], arg1: fiat_bp512_u1, arg2: &[u32; 16], arg3: &[u32; 16]) { + let mut x1: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); + let mut x9: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); + let mut x10: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); + let mut x11: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); + let mut x12: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); + let mut x13: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x13, arg1, (arg2[12]), (arg3[12])); + let mut x14: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x14, arg1, (arg2[13]), (arg3[13])); + let mut x15: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x15, arg1, (arg2[14]), (arg3[14])); + let mut x16: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x16, arg1, (arg2[15]), (arg3[15])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; + out1[8] = x9; + out1[9] = x10; + out1[10] = x11; + out1[11] = x12; + out1[12] = x13; + out1[13] = x14; + out1[14] = x15; + out1[15] = x16; +} + +/// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { + let x1: u32 = (arg1[15]); + let x2: u32 = (arg1[14]); + let x3: u32 = (arg1[13]); + let x4: u32 = (arg1[12]); + let x5: u32 = (arg1[11]); + let x6: u32 = (arg1[10]); + let x7: u32 = (arg1[9]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[7]); + let x10: u32 = (arg1[6]); + let x11: u32 = (arg1[5]); + let x12: u32 = (arg1[4]); + let x13: u32 = (arg1[3]); + let x14: u32 = (arg1[2]); + let x15: u32 = (arg1[1]); + let x16: u32 = (arg1[0]); + let x17: u8 = ((x16 & (0xff as u32)) as u8); + let x18: u32 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u32)) as u8); + let x20: u32 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u32)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x15 & (0xff as u32)) as u8); + let x24: u32 = (x15 >> 8); + let x25: u8 = ((x24 & (0xff as u32)) as u8); + let x26: u32 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u32)) as u8); + let x28: u8 = ((x26 >> 8) as u8); + let x29: u8 = ((x14 & (0xff as u32)) as u8); + let x30: u32 = (x14 >> 8); + let x31: u8 = ((x30 & (0xff as u32)) as u8); + let x32: u32 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u32)) as u8); + let x34: u8 = ((x32 >> 8) as u8); + let x35: u8 = ((x13 & (0xff as u32)) as u8); + let x36: u32 = (x13 >> 8); + let x37: u8 = ((x36 & (0xff as u32)) as u8); + let x38: u32 = (x36 >> 8); + let x39: u8 = ((x38 & (0xff as u32)) as u8); + let x40: u8 = ((x38 >> 8) as u8); + let x41: u8 = ((x12 & (0xff as u32)) as u8); + let x42: u32 = (x12 >> 8); + let x43: u8 = ((x42 & (0xff as u32)) as u8); + let x44: u32 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u32)) as u8); + let x46: u8 = ((x44 >> 8) as u8); + let x47: u8 = ((x11 & (0xff as u32)) as u8); + let x48: u32 = (x11 >> 8); + let x49: u8 = ((x48 & (0xff as u32)) as u8); + let x50: u32 = (x48 >> 8); + let x51: u8 = ((x50 & (0xff as u32)) as u8); + let x52: u8 = ((x50 >> 8) as u8); + let x53: u8 = ((x10 & (0xff as u32)) as u8); + let x54: u32 = (x10 >> 8); + let x55: u8 = ((x54 & (0xff as u32)) as u8); + let x56: u32 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u32)) as u8); + let x58: u8 = ((x56 >> 8) as u8); + let x59: u8 = ((x9 & (0xff as u32)) as u8); + let x60: u32 = (x9 >> 8); + let x61: u8 = ((x60 & (0xff as u32)) as u8); + let x62: u32 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u32)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x8 & (0xff as u32)) as u8); + let x66: u32 = (x8 >> 8); + let x67: u8 = ((x66 & (0xff as u32)) as u8); + let x68: u32 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u32)) as u8); + let x70: u8 = ((x68 >> 8) as u8); + let x71: u8 = ((x7 & (0xff as u32)) as u8); + let x72: u32 = (x7 >> 8); + let x73: u8 = ((x72 & (0xff as u32)) as u8); + let x74: u32 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u32)) as u8); + let x76: u8 = ((x74 >> 8) as u8); + let x77: u8 = ((x6 & (0xff as u32)) as u8); + let x78: u32 = (x6 >> 8); + let x79: u8 = ((x78 & (0xff as u32)) as u8); + let x80: u32 = (x78 >> 8); + let x81: u8 = ((x80 & (0xff as u32)) as u8); + let x82: u8 = ((x80 >> 8) as u8); + let x83: u8 = ((x5 & (0xff as u32)) as u8); + let x84: u32 = (x5 >> 8); + let x85: u8 = ((x84 & (0xff as u32)) as u8); + let x86: u32 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u32)) as u8); + let x88: u8 = ((x86 >> 8) as u8); + let x89: u8 = ((x4 & (0xff as u32)) as u8); + let x90: u32 = (x4 >> 8); + let x91: u8 = ((x90 & (0xff as u32)) as u8); + let x92: u32 = (x90 >> 8); + let x93: u8 = ((x92 & (0xff as u32)) as u8); + let x94: u8 = ((x92 >> 8) as u8); + let x95: u8 = ((x3 & (0xff as u32)) as u8); + let x96: u32 = (x3 >> 8); + let x97: u8 = ((x96 & (0xff as u32)) as u8); + let x98: u32 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u32)) as u8); + let x100: u8 = ((x98 >> 8) as u8); + let x101: u8 = ((x2 & (0xff as u32)) as u8); + let x102: u32 = (x2 >> 8); + let x103: u8 = ((x102 & (0xff as u32)) as u8); + let x104: u32 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u32)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u32)) as u8); + let x108: u32 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u32)) as u8); + let x110: u32 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u32)) as u8); + let x112: u8 = ((x110 >> 8) as u8); + out1[0] = x17; + out1[1] = x19; + out1[2] = x21; + out1[3] = x22; + out1[4] = x23; + out1[5] = x25; + out1[6] = x27; + out1[7] = x28; + out1[8] = x29; + out1[9] = x31; + out1[10] = x33; + out1[11] = x34; + out1[12] = x35; + out1[13] = x37; + out1[14] = x39; + out1[15] = x40; + out1[16] = x41; + out1[17] = x43; + out1[18] = x45; + out1[19] = x46; + out1[20] = x47; + out1[21] = x49; + out1[22] = x51; + out1[23] = x52; + out1[24] = x53; + out1[25] = x55; + out1[26] = x57; + out1[27] = x58; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x70; + out1[36] = x71; + out1[37] = x73; + out1[38] = x75; + out1[39] = x76; + out1[40] = x77; + out1[41] = x79; + out1[42] = x81; + out1[43] = x82; + out1[44] = x83; + out1[45] = x85; + out1[46] = x87; + out1[47] = x88; + out1[48] = x89; + out1[49] = x91; + out1[50] = x93; + out1[51] = x94; + out1[52] = x95; + out1[53] = x97; + out1[54] = x99; + out1[55] = x100; + out1[56] = x101; + out1[57] = x103; + out1[58] = x105; + out1[59] = x106; + out1[60] = x107; + out1[61] = x109; + out1[62] = x111; + out1[63] = x112; +} + +/// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { + let x1: u32 = (((arg1[63]) as u32) << 24); + let x2: u32 = (((arg1[62]) as u32) << 16); + let x3: u32 = (((arg1[61]) as u32) << 8); + let x4: u8 = (arg1[60]); + let x5: u32 = (((arg1[59]) as u32) << 24); + let x6: u32 = (((arg1[58]) as u32) << 16); + let x7: u32 = (((arg1[57]) as u32) << 8); + let x8: u8 = (arg1[56]); + let x9: u32 = (((arg1[55]) as u32) << 24); + let x10: u32 = (((arg1[54]) as u32) << 16); + let x11: u32 = (((arg1[53]) as u32) << 8); + let x12: u8 = (arg1[52]); + let x13: u32 = (((arg1[51]) as u32) << 24); + let x14: u32 = (((arg1[50]) as u32) << 16); + let x15: u32 = (((arg1[49]) as u32) << 8); + let x16: u8 = (arg1[48]); + let x17: u32 = (((arg1[47]) as u32) << 24); + let x18: u32 = (((arg1[46]) as u32) << 16); + let x19: u32 = (((arg1[45]) as u32) << 8); + let x20: u8 = (arg1[44]); + let x21: u32 = (((arg1[43]) as u32) << 24); + let x22: u32 = (((arg1[42]) as u32) << 16); + let x23: u32 = (((arg1[41]) as u32) << 8); + let x24: u8 = (arg1[40]); + let x25: u32 = (((arg1[39]) as u32) << 24); + let x26: u32 = (((arg1[38]) as u32) << 16); + let x27: u32 = (((arg1[37]) as u32) << 8); + let x28: u8 = (arg1[36]); + let x29: u32 = (((arg1[35]) as u32) << 24); + let x30: u32 = (((arg1[34]) as u32) << 16); + let x31: u32 = (((arg1[33]) as u32) << 8); + let x32: u8 = (arg1[32]); + let x33: u32 = (((arg1[31]) as u32) << 24); + let x34: u32 = (((arg1[30]) as u32) << 16); + let x35: u32 = (((arg1[29]) as u32) << 8); + let x36: u8 = (arg1[28]); + let x37: u32 = (((arg1[27]) as u32) << 24); + let x38: u32 = (((arg1[26]) as u32) << 16); + let x39: u32 = (((arg1[25]) as u32) << 8); + let x40: u8 = (arg1[24]); + let x41: u32 = (((arg1[23]) as u32) << 24); + let x42: u32 = (((arg1[22]) as u32) << 16); + let x43: u32 = (((arg1[21]) as u32) << 8); + let x44: u8 = (arg1[20]); + let x45: u32 = (((arg1[19]) as u32) << 24); + let x46: u32 = (((arg1[18]) as u32) << 16); + let x47: u32 = (((arg1[17]) as u32) << 8); + let x48: u8 = (arg1[16]); + let x49: u32 = (((arg1[15]) as u32) << 24); + let x50: u32 = (((arg1[14]) as u32) << 16); + let x51: u32 = (((arg1[13]) as u32) << 8); + let x52: u8 = (arg1[12]); + let x53: u32 = (((arg1[11]) as u32) << 24); + let x54: u32 = (((arg1[10]) as u32) << 16); + let x55: u32 = (((arg1[9]) as u32) << 8); + let x56: u8 = (arg1[8]); + let x57: u32 = (((arg1[7]) as u32) << 24); + let x58: u32 = (((arg1[6]) as u32) << 16); + let x59: u32 = (((arg1[5]) as u32) << 8); + let x60: u8 = (arg1[4]); + let x61: u32 = (((arg1[3]) as u32) << 24); + let x62: u32 = (((arg1[2]) as u32) << 16); + let x63: u32 = (((arg1[1]) as u32) << 8); + let x64: u8 = (arg1[0]); + let x65: u32 = (x63 + (x64 as u32)); + let x66: u32 = (x62 + x65); + let x67: u32 = (x61 + x66); + let x68: u32 = (x59 + (x60 as u32)); + let x69: u32 = (x58 + x68); + let x70: u32 = (x57 + x69); + let x71: u32 = (x55 + (x56 as u32)); + let x72: u32 = (x54 + x71); + let x73: u32 = (x53 + x72); + let x74: u32 = (x51 + (x52 as u32)); + let x75: u32 = (x50 + x74); + let x76: u32 = (x49 + x75); + let x77: u32 = (x47 + (x48 as u32)); + let x78: u32 = (x46 + x77); + let x79: u32 = (x45 + x78); + let x80: u32 = (x43 + (x44 as u32)); + let x81: u32 = (x42 + x80); + let x82: u32 = (x41 + x81); + let x83: u32 = (x39 + (x40 as u32)); + let x84: u32 = (x38 + x83); + let x85: u32 = (x37 + x84); + let x86: u32 = (x35 + (x36 as u32)); + let x87: u32 = (x34 + x86); + let x88: u32 = (x33 + x87); + let x89: u32 = (x31 + (x32 as u32)); + let x90: u32 = (x30 + x89); + let x91: u32 = (x29 + x90); + let x92: u32 = (x27 + (x28 as u32)); + let x93: u32 = (x26 + x92); + let x94: u32 = (x25 + x93); + let x95: u32 = (x23 + (x24 as u32)); + let x96: u32 = (x22 + x95); + let x97: u32 = (x21 + x96); + let x98: u32 = (x19 + (x20 as u32)); + let x99: u32 = (x18 + x98); + let x100: u32 = (x17 + x99); + let x101: u32 = (x15 + (x16 as u32)); + let x102: u32 = (x14 + x101); + let x103: u32 = (x13 + x102); + let x104: u32 = (x11 + (x12 as u32)); + let x105: u32 = (x10 + x104); + let x106: u32 = (x9 + x105); + let x107: u32 = (x7 + (x8 as u32)); + let x108: u32 = (x6 + x107); + let x109: u32 = (x5 + x108); + let x110: u32 = (x3 + (x4 as u32)); + let x111: u32 = (x2 + x110); + let x112: u32 = (x1 + x111); + out1[0] = x67; + out1[1] = x70; + out1[2] = x73; + out1[3] = x76; + out1[4] = x79; + out1[5] = x82; + out1[6] = x85; + out1[7] = x88; + out1[8] = x91; + out1[9] = x94; + out1[10] = x97; + out1[11] = x100; + out1[12] = x103; + out1[13] = x106; + out1[14] = x109; + out1[15] = x112; +} + +/// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { + out1[0] = 0xa7c5b70d; + out1[1] = 0xd7559fa9; + out1[2] = 0xd27d397a; + out1[3] = 0xd77e00d0; + out1[4] = 0x195c7f19; + out1[5] = 0x51325ed5; + out1[6] = 0x643997bd; + out1[7] = 0x82b264ff; + out1[8] = 0x8fccf78e; + out1[9] = 0x299c6335; + out1[10] = 0x4c362df1; + out1[11] = 0x34cf724c; + out1[12] = 0xcc3603f8; + out1[13] = 0xc02b1951; + out1[14] = 0x24163b74; + out1[15] = 0x55226247; +} + +/// The function fiat_bp512_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { + out1[0] = 0x583a48f3; + out1[1] = 0x28aa6056; + out1[2] = 0x2d82c685; + out1[3] = 0x2881ff2f; + out1[4] = 0xe6a380e6; + out1[5] = 0xaecda12a; + out1[6] = 0x9bc66842; + out1[7] = 0x7d4d9b00; + out1[8] = 0x70330871; + out1[9] = 0xd6639cca; + out1[10] = 0xb3c9d20e; + out1[11] = 0xcb308db3; + out1[12] = 0x33c9fc07; + out1[13] = 0x3fd4e6ae; + out1[14] = 0xdbe9c48b; + out1[15] = 0xaadd9db8; + out1[16] = (0x0 as u32); +} + +/// The function fiat_bp512_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_divstep(out1: &mut u32, out2: &mut [u32; 17], out3: &mut [u32; 17], out4: &mut [u32; 16], out5: &mut [u32; 16], arg1: u32, arg2: &[u32; 17], arg3: &[u32; 17], arg4: &[u32; 16], arg5: &[u32; 16]) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); + let x3: fiat_bp512_u1 = (((x1 >> 31) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u32)) as fiat_bp512_u1)); + let mut x4: u32 = 0; + let mut x5: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); + let mut x6: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x6, x3, arg1, x4); + let mut x7: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); + let mut x17: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); + let mut x18: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); + let mut x19: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); + let mut x20: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x20, x3, (arg2[13]), (arg3[13])); + let mut x21: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x21, x3, (arg2[14]), (arg3[14])); + let mut x22: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x22, x3, (arg2[15]), (arg3[15])); + let mut x23: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x23, x3, (arg2[16]), (arg3[16])); + let mut x24: u32 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x24, &mut x25, 0x0, (0x1 as u32), (!(arg2[0]))); + let mut x26: u32 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[1]))); + let mut x28: u32 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[2]))); + let mut x30: u32 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[3]))); + let mut x32: u32 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[4]))); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[5]))); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[6]))); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[7]))); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[8]))); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[9]))); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[10]))); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, (0x0 as u32), (!(arg2[11]))); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, (0x0 as u32), (!(arg2[12]))); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, (0x0 as u32), (!(arg2[13]))); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), (!(arg2[14]))); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), (!(arg2[15]))); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), (!(arg2[16]))); + let mut x58: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x58, x3, (arg3[0]), x24); + let mut x59: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x59, x3, (arg3[1]), x26); + let mut x60: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x60, x3, (arg3[2]), x28); + let mut x61: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x61, x3, (arg3[3]), x30); + let mut x62: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x62, x3, (arg3[4]), x32); + let mut x63: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x63, x3, (arg3[5]), x34); + let mut x64: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x64, x3, (arg3[6]), x36); + let mut x65: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x65, x3, (arg3[7]), x38); + let mut x66: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x66, x3, (arg3[8]), x40); + let mut x67: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x67, x3, (arg3[9]), x42); + let mut x68: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x68, x3, (arg3[10]), x44); + let mut x69: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x69, x3, (arg3[11]), x46); + let mut x70: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x70, x3, (arg3[12]), x48); + let mut x71: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x71, x3, (arg3[13]), x50); + let mut x72: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x72, x3, (arg3[14]), x52); + let mut x73: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x73, x3, (arg3[15]), x54); + let mut x74: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x74, x3, (arg3[16]), x56); + let mut x75: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x75, x3, (arg4[0]), (arg5[0])); + let mut x76: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x76, x3, (arg4[1]), (arg5[1])); + let mut x77: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x77, x3, (arg4[2]), (arg5[2])); + let mut x78: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x78, x3, (arg4[3]), (arg5[3])); + let mut x79: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x79, x3, (arg4[4]), (arg5[4])); + let mut x80: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x80, x3, (arg4[5]), (arg5[5])); + let mut x81: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x81, x3, (arg4[6]), (arg5[6])); + let mut x82: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x82, x3, (arg4[7]), (arg5[7])); + let mut x83: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x83, x3, (arg4[8]), (arg5[8])); + let mut x84: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x84, x3, (arg4[9]), (arg5[9])); + let mut x85: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x85, x3, (arg4[10]), (arg5[10])); + let mut x86: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x86, x3, (arg4[11]), (arg5[11])); + let mut x87: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x87, x3, (arg4[12]), (arg5[12])); + let mut x88: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x88, x3, (arg4[13]), (arg5[13])); + let mut x89: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x89, x3, (arg4[14]), (arg5[14])); + let mut x90: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x90, x3, (arg4[15]), (arg5[15])); + let mut x91: u32 = 0; + let mut x92: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x91, &mut x92, 0x0, x75, x75); + let mut x93: u32 = 0; + let mut x94: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x93, &mut x94, x92, x76, x76); + let mut x95: u32 = 0; + let mut x96: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x95, &mut x96, x94, x77, x77); + let mut x97: u32 = 0; + let mut x98: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x97, &mut x98, x96, x78, x78); + let mut x99: u32 = 0; + let mut x100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x99, &mut x100, x98, x79, x79); + let mut x101: u32 = 0; + let mut x102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x101, &mut x102, x100, x80, x80); + let mut x103: u32 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x103, &mut x104, x102, x81, x81); + let mut x105: u32 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x105, &mut x106, x104, x82, x82); + let mut x107: u32 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x107, &mut x108, x106, x83, x83); + let mut x109: u32 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x109, &mut x110, x108, x84, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x111, &mut x112, x110, x85, x85); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x113, &mut x114, x112, x86, x86); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x87, x87); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x88, x88); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x89, x89); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x90, x90); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x123, &mut x124, 0x0, x91, 0x583a48f3); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x125, &mut x126, x124, x93, 0x28aa6056); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x127, &mut x128, x126, x95, 0x2d82c685); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x129, &mut x130, x128, x97, 0x2881ff2f); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x131, &mut x132, x130, x99, 0xe6a380e6); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x133, &mut x134, x132, x101, 0xaecda12a); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x135, &mut x136, x134, x103, 0x9bc66842); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x137, &mut x138, x136, x105, 0x7d4d9b00); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x139, &mut x140, x138, x107, 0x70330871); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x141, &mut x142, x140, x109, 0xd6639cca); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x143, &mut x144, x142, x111, 0xb3c9d20e); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x145, &mut x146, x144, x113, 0xcb308db3); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x147, &mut x148, x146, x115, 0x33c9fc07); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x149, &mut x150, x148, x117, 0x3fd4e6ae); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x151, &mut x152, x150, x119, 0xdbe9c48b); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x153, &mut x154, x152, x121, 0xaadd9db8); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x155, &mut x156, x154, (x122 as u32), (0x0 as u32)); + let x157: u32 = (arg4[15]); + let x158: u32 = (arg4[14]); + let x159: u32 = (arg4[13]); + let x160: u32 = (arg4[12]); + let x161: u32 = (arg4[11]); + let x162: u32 = (arg4[10]); + let x163: u32 = (arg4[9]); + let x164: u32 = (arg4[8]); + let x165: u32 = (arg4[7]); + let x166: u32 = (arg4[6]); + let x167: u32 = (arg4[5]); + let x168: u32 = (arg4[4]); + let x169: u32 = (arg4[3]); + let x170: u32 = (arg4[2]); + let x171: u32 = (arg4[1]); + let x172: u32 = (arg4[0]); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x173, &mut x174, 0x0, (0x0 as u32), x172); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x175, &mut x176, x174, (0x0 as u32), x171); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x177, &mut x178, x176, (0x0 as u32), x170); + let mut x179: u32 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x179, &mut x180, x178, (0x0 as u32), x169); + let mut x181: u32 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x181, &mut x182, x180, (0x0 as u32), x168); + let mut x183: u32 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x183, &mut x184, x182, (0x0 as u32), x167); + let mut x185: u32 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x185, &mut x186, x184, (0x0 as u32), x166); + let mut x187: u32 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x187, &mut x188, x186, (0x0 as u32), x165); + let mut x189: u32 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x189, &mut x190, x188, (0x0 as u32), x164); + let mut x191: u32 = 0; + let mut x192: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x191, &mut x192, x190, (0x0 as u32), x163); + let mut x193: u32 = 0; + let mut x194: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x193, &mut x194, x192, (0x0 as u32), x162); + let mut x195: u32 = 0; + let mut x196: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x195, &mut x196, x194, (0x0 as u32), x161); + let mut x197: u32 = 0; + let mut x198: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x197, &mut x198, x196, (0x0 as u32), x160); + let mut x199: u32 = 0; + let mut x200: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x199, &mut x200, x198, (0x0 as u32), x159); + let mut x201: u32 = 0; + let mut x202: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x201, &mut x202, x200, (0x0 as u32), x158); + let mut x203: u32 = 0; + let mut x204: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x203, &mut x204, x202, (0x0 as u32), x157); + let mut x205: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x205, x204, (0x0 as u32), 0xffffffff); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x206, &mut x207, 0x0, x173, (x205 & 0x583a48f3)); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x175, (x205 & 0x28aa6056)); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x177, (x205 & 0x2d82c685)); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x179, (x205 & 0x2881ff2f)); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x181, (x205 & 0xe6a380e6)); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x183, (x205 & 0xaecda12a)); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x185, (x205 & 0x9bc66842)); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x187, (x205 & 0x7d4d9b00)); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x222, &mut x223, x221, x189, (x205 & 0x70330871)); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x224, &mut x225, x223, x191, (x205 & 0xd6639cca)); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x193, (x205 & 0xb3c9d20e)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x195, (x205 & 0xcb308db3)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x197, (x205 & 0x33c9fc07)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x199, (x205 & 0x3fd4e6ae)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x201, (x205 & 0xdbe9c48b)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x203, (x205 & 0xaadd9db8)); + let mut x238: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x238, x3, (arg5[0]), x206); + let mut x239: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x239, x3, (arg5[1]), x208); + let mut x240: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x240, x3, (arg5[2]), x210); + let mut x241: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x241, x3, (arg5[3]), x212); + let mut x242: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x242, x3, (arg5[4]), x214); + let mut x243: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x243, x3, (arg5[5]), x216); + let mut x244: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x244, x3, (arg5[6]), x218); + let mut x245: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x245, x3, (arg5[7]), x220); + let mut x246: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x246, x3, (arg5[8]), x222); + let mut x247: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x247, x3, (arg5[9]), x224); + let mut x248: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x248, x3, (arg5[10]), x226); + let mut x249: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x249, x3, (arg5[11]), x228); + let mut x250: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x250, x3, (arg5[12]), x230); + let mut x251: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x251, x3, (arg5[13]), x232); + let mut x252: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x252, x3, (arg5[14]), x234); + let mut x253: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x253, x3, (arg5[15]), x236); + let x254: fiat_bp512_u1 = ((x58 & (0x1 as u32)) as fiat_bp512_u1); + let mut x255: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x255, x254, (0x0 as u32), x7); + let mut x256: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x256, x254, (0x0 as u32), x8); + let mut x257: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x257, x254, (0x0 as u32), x9); + let mut x258: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x258, x254, (0x0 as u32), x10); + let mut x259: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x259, x254, (0x0 as u32), x11); + let mut x260: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x260, x254, (0x0 as u32), x12); + let mut x261: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x261, x254, (0x0 as u32), x13); + let mut x262: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x262, x254, (0x0 as u32), x14); + let mut x263: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x263, x254, (0x0 as u32), x15); + let mut x264: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x264, x254, (0x0 as u32), x16); + let mut x265: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x265, x254, (0x0 as u32), x17); + let mut x266: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x266, x254, (0x0 as u32), x18); + let mut x267: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x267, x254, (0x0 as u32), x19); + let mut x268: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x268, x254, (0x0 as u32), x20); + let mut x269: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x269, x254, (0x0 as u32), x21); + let mut x270: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x270, x254, (0x0 as u32), x22); + let mut x271: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x271, x254, (0x0 as u32), x23); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, 0x0, x58, x255); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, x59, x256); + let mut x276: u32 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x276, &mut x277, x275, x60, x257); + let mut x278: u32 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x278, &mut x279, x277, x61, x258); + let mut x280: u32 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x280, &mut x281, x279, x62, x259); + let mut x282: u32 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x282, &mut x283, x281, x63, x260); + let mut x284: u32 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x284, &mut x285, x283, x64, x261); + let mut x286: u32 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x286, &mut x287, x285, x65, x262); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x288, &mut x289, x287, x66, x263); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x67, x264); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x68, x265); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x69, x266); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x70, x267); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x71, x268); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x72, x269); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x73, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x74, x271); + let mut x306: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x306, x254, (0x0 as u32), x75); + let mut x307: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x307, x254, (0x0 as u32), x76); + let mut x308: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x308, x254, (0x0 as u32), x77); + let mut x309: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x309, x254, (0x0 as u32), x78); + let mut x310: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x310, x254, (0x0 as u32), x79); + let mut x311: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x311, x254, (0x0 as u32), x80); + let mut x312: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x312, x254, (0x0 as u32), x81); + let mut x313: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x313, x254, (0x0 as u32), x82); + let mut x314: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x314, x254, (0x0 as u32), x83); + let mut x315: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x315, x254, (0x0 as u32), x84); + let mut x316: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x316, x254, (0x0 as u32), x85); + let mut x317: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x317, x254, (0x0 as u32), x86); + let mut x318: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x318, x254, (0x0 as u32), x87); + let mut x319: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x319, x254, (0x0 as u32), x88); + let mut x320: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x320, x254, (0x0 as u32), x89); + let mut x321: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x321, x254, (0x0 as u32), x90); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, 0x0, x238, x306); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x239, x307); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x240, x308); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x241, x309); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x242, x310); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x243, x311); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x244, x312); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x245, x313); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x246, x314); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x247, x315); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x316); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x249, x317); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x250, x318); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x348, &mut x349, x347, x251, x319); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x350, &mut x351, x349, x252, x320); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x253, x321); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x354, &mut x355, 0x0, x322, 0x583a48f3); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x356, &mut x357, x355, x324, 0x28aa6056); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x358, &mut x359, x357, x326, 0x2d82c685); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x360, &mut x361, x359, x328, 0x2881ff2f); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x362, &mut x363, x361, x330, 0xe6a380e6); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x364, &mut x365, x363, x332, 0xaecda12a); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x366, &mut x367, x365, x334, 0x9bc66842); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x368, &mut x369, x367, x336, 0x7d4d9b00); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x370, &mut x371, x369, x338, 0x70330871); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x372, &mut x373, x371, x340, 0xd6639cca); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x374, &mut x375, x373, x342, 0xb3c9d20e); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x376, &mut x377, x375, x344, 0xcb308db3); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x378, &mut x379, x377, x346, 0x33c9fc07); + let mut x380: u32 = 0; + let mut x381: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x380, &mut x381, x379, x348, 0x3fd4e6ae); + let mut x382: u32 = 0; + let mut x383: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x382, &mut x383, x381, x350, 0xdbe9c48b); + let mut x384: u32 = 0; + let mut x385: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x384, &mut x385, x383, x352, 0xaadd9db8); + let mut x386: u32 = 0; + let mut x387: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x386, &mut x387, x385, (x353 as u32), (0x0 as u32)); + let mut x388: u32 = 0; + let mut x389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x388, &mut x389, 0x0, x6, (0x1 as u32)); + let x390: u32 = ((x272 >> 1) | ((x274 << 31) & 0xffffffff)); + let x391: u32 = ((x274 >> 1) | ((x276 << 31) & 0xffffffff)); + let x392: u32 = ((x276 >> 1) | ((x278 << 31) & 0xffffffff)); + let x393: u32 = ((x278 >> 1) | ((x280 << 31) & 0xffffffff)); + let x394: u32 = ((x280 >> 1) | ((x282 << 31) & 0xffffffff)); + let x395: u32 = ((x282 >> 1) | ((x284 << 31) & 0xffffffff)); + let x396: u32 = ((x284 >> 1) | ((x286 << 31) & 0xffffffff)); + let x397: u32 = ((x286 >> 1) | ((x288 << 31) & 0xffffffff)); + let x398: u32 = ((x288 >> 1) | ((x290 << 31) & 0xffffffff)); + let x399: u32 = ((x290 >> 1) | ((x292 << 31) & 0xffffffff)); + let x400: u32 = ((x292 >> 1) | ((x294 << 31) & 0xffffffff)); + let x401: u32 = ((x294 >> 1) | ((x296 << 31) & 0xffffffff)); + let x402: u32 = ((x296 >> 1) | ((x298 << 31) & 0xffffffff)); + let x403: u32 = ((x298 >> 1) | ((x300 << 31) & 0xffffffff)); + let x404: u32 = ((x300 >> 1) | ((x302 << 31) & 0xffffffff)); + let x405: u32 = ((x302 >> 1) | ((x304 << 31) & 0xffffffff)); + let x406: u32 = ((x304 & 0x80000000) | (x304 >> 1)); + let mut x407: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x407, x156, x123, x91); + let mut x408: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x408, x156, x125, x93); + let mut x409: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x409, x156, x127, x95); + let mut x410: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x410, x156, x129, x97); + let mut x411: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x411, x156, x131, x99); + let mut x412: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x412, x156, x133, x101); + let mut x413: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x413, x156, x135, x103); + let mut x414: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x414, x156, x137, x105); + let mut x415: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x415, x156, x139, x107); + let mut x416: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x416, x156, x141, x109); + let mut x417: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x417, x156, x143, x111); + let mut x418: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x418, x156, x145, x113); + let mut x419: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x419, x156, x147, x115); + let mut x420: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x420, x156, x149, x117); + let mut x421: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x421, x156, x151, x119); + let mut x422: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x422, x156, x153, x121); + let mut x423: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x423, x387, x354, x322); + let mut x424: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x424, x387, x356, x324); + let mut x425: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x425, x387, x358, x326); + let mut x426: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x426, x387, x360, x328); + let mut x427: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x427, x387, x362, x330); + let mut x428: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x428, x387, x364, x332); + let mut x429: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x429, x387, x366, x334); + let mut x430: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x430, x387, x368, x336); + let mut x431: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x431, x387, x370, x338); + let mut x432: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x432, x387, x372, x340); + let mut x433: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x433, x387, x374, x342); + let mut x434: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x434, x387, x376, x344); + let mut x435: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x435, x387, x378, x346); + let mut x436: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x436, x387, x380, x348); + let mut x437: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x437, x387, x382, x350); + let mut x438: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x438, x387, x384, x352); + *out1 = x388; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out2[9] = x16; + out2[10] = x17; + out2[11] = x18; + out2[12] = x19; + out2[13] = x20; + out2[14] = x21; + out2[15] = x22; + out2[16] = x23; + out3[0] = x390; + out3[1] = x391; + out3[2] = x392; + out3[3] = x393; + out3[4] = x394; + out3[5] = x395; + out3[6] = x396; + out3[7] = x397; + out3[8] = x398; + out3[9] = x399; + out3[10] = x400; + out3[11] = x401; + out3[12] = x402; + out3[13] = x403; + out3[14] = x404; + out3[15] = x405; + out3[16] = x406; + out4[0] = x407; + out4[1] = x408; + out4[2] = x409; + out4[3] = x410; + out4[4] = x411; + out4[5] = x412; + out4[6] = x413; + out4[7] = x414; + out4[8] = x415; + out4[9] = x416; + out4[10] = x417; + out4[11] = x418; + out4[12] = x419; + out4[13] = x420; + out4[14] = x421; + out4[15] = x422; + out5[0] = x423; + out5[1] = x424; + out5[2] = x425; + out5[3] = x426; + out5[4] = x427; + out5[5] = x428; + out5[6] = x429; + out5[7] = x430; + out5[8] = x431; + out5[9] = x432; + out5[10] = x433; + out5[11] = x434; + out5[12] = x435; + out5[13] = x436; + out5[14] = x437; + out5[15] = x438; +} + +/// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_divstep_precomp(out1: &mut [u32; 16]) { + out1[0] = 0x8878ef1d; + out1[1] = 0x6bba0f9e; + out1[2] = 0xfe513a69; + out1[3] = 0xdaeb7446; + out1[4] = 0xa502204b; + out1[5] = 0x425e2db1; + out1[6] = 0xde354e9d; + out1[7] = 0x6c6090ef; + out1[8] = 0xb5431792; + out1[9] = 0x80ba3167; + out1[10] = 0x35149425; + out1[11] = 0x2f0dc076; + out1[12] = 0x9f34d8fd; + out1[13] = 0xc024c54; + out1[14] = 0x19ba97f7; + out1[15] = 0x2d82c4ad; +} diff --git a/bp512/src/arithmetic/field/bp512_64.rs b/bp512/src/arithmetic/field/bp512_64.rs new file mode 100644 index 000000000..47a1cb0e3 --- /dev/null +++ b/bp512/src/arithmetic/field/bp512_64.rs @@ -0,0 +1,5730 @@ +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512 64 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp512 +//! machine_wordsize = 64 (from "64") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 (from "0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) in +//! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 + +#![allow(unused_parens)] +#![allow(non_camel_case_types)] + +/** fiat_bp512_u1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_u1 = u8; +/** fiat_bp512_i1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_i1 = i8; +/** fiat_bp512_u2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_u2 = u8; +/** fiat_bp512_i2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_i2 = i8; + +/** The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_montgomery_domain_field_element(pub [u64; 8]); + +impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/** The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_non_montgomery_domain_field_element(pub [u64; 8]); + +impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + + +/// The function fiat_bp512_addcarryx_u64 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^64 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_addcarryx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { + let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: fiat_bp512_u1 = ((x1 >> 64) as fiat_bp512_u1); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_subborrowx_u64 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^64 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_subborrowx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { + let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); + let x2: fiat_bp512_i1 = ((x1 >> 64) as fiat_bp512_i1); + let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); + *out1 = x3; + *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); +} + +/// The function fiat_bp512_mulx_u64 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^64 +/// out2 = ⌊arg1 * arg2 / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { + let x1: u128 = ((arg1 as u128) * (arg2 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: u64 = ((x1 >> 64) as u64); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_cmovznz_u64 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { + let x1: fiat_bp512_u1 = (!(!arg1)); + let x2: u64 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i128) & (0xffffffffffffffff as i128)) as u64); + let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} + +/// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg2[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg2[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg2[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg2[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg2[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg2[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg2[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg2[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg2[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg2[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg2[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg2[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg2[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg2[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg2[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg2[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg2[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg2[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg2[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg2[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg2[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg2[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg2[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg2[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg2[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg2[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg2[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg2[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg2[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg2[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg2[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg2[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg2[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg2[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg2[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg2[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg2[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg2[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg2[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg2[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg2[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg2[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg2[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg2[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg2[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg2[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg2[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg2[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg2[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg2[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg2[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg2[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg2[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg2[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg2[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg2[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg2[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg2[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg2[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg2[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg2[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg2[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg2[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg2[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; +} + +/// The function fiat_bp512_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg1[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg1[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg1[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg1[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg1[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg1[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg1[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg1[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg1[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg1[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg1[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg1[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg1[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg1[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg1[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg1[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg1[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg1[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg1[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg1[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg1[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg1[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg1[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg1[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg1[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg1[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg1[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg1[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg1[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg1[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg1[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg1[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg1[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg1[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg1[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg1[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg1[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg1[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg1[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg1[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg1[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg1[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg1[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg1[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg1[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg1[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg1[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg1[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg1[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg1[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg1[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg1[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg1[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg1[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg1[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg1[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg1[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg1[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg1[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg1[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg1[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg1[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg1[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg1[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; +} + +/// The function fiat_bp512_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x17, &mut x18, 0x0, x1, 0x28aa6056583a48f3); + let mut x19: u64 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x19, &mut x20, x18, x3, 0x2881ff2f2d82c685); + let mut x21: u64 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x21, &mut x22, x20, x5, 0xaecda12ae6a380e6); + let mut x23: u64 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x23, &mut x24, x22, x7, 0x7d4d9b009bc66842); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x25, &mut x26, x24, x9, 0xd6639cca70330871); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x27, &mut x28, x26, x11, 0xcb308db3b3c9d20e); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x29, &mut x30, x28, x13, 0x3fd4e6ae33c9fc07); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x31, &mut x32, x30, x15, 0xaadd9db8dbe9c48b); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x33, &mut x34, x32, (x16 as u64), (0x0 as u64)); + let mut x35: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x35, x34, x17, x1); + let mut x36: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x36, x34, x19, x3); + let mut x37: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x37, x34, x21, x5); + let mut x38: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x38, x34, x23, x7); + let mut x39: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x39, x34, x25, x9); + let mut x40: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x40, x34, x27, x11); + let mut x41: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x41, x34, x29, x13); + let mut x42: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x42, x34, x31, x15); + out1[0] = x35; + out1[1] = x36; + out1[2] = x37; + out1[3] = x38; + out1[4] = x39; + out1[5] = x40; + out1[6] = x41; + out1[7] = x42; +} + +/// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; +} + +/// The function fiat_bp512_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (0x0 as u64), (arg1[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (0x0 as u64), (arg1[7])); + let mut x17: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; +} + +/// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^64)⁻¹ mod m)^8) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { + let x1: u64 = (arg1[0]); + let mut x2: u64 = 0; + let mut x3: u64 = 0; + fiat_bp512_mulx_u64(&mut x2, &mut x3, x1, 0x839b32207d89efc5); + let mut x4: u64 = 0; + let mut x5: u64 = 0; + fiat_bp512_mulx_u64(&mut x4, &mut x5, x2, 0xaadd9db8dbe9c48b); + let mut x6: u64 = 0; + let mut x7: u64 = 0; + fiat_bp512_mulx_u64(&mut x6, &mut x7, x2, 0x3fd4e6ae33c9fc07); + let mut x8: u64 = 0; + let mut x9: u64 = 0; + fiat_bp512_mulx_u64(&mut x8, &mut x9, x2, 0xcb308db3b3c9d20e); + let mut x10: u64 = 0; + let mut x11: u64 = 0; + fiat_bp512_mulx_u64(&mut x10, &mut x11, x2, 0xd6639cca70330871); + let mut x12: u64 = 0; + let mut x13: u64 = 0; + fiat_bp512_mulx_u64(&mut x12, &mut x13, x2, 0x7d4d9b009bc66842); + let mut x14: u64 = 0; + let mut x15: u64 = 0; + fiat_bp512_mulx_u64(&mut x14, &mut x15, x2, 0xaecda12ae6a380e6); + let mut x16: u64 = 0; + let mut x17: u64 = 0; + fiat_bp512_mulx_u64(&mut x16, &mut x17, x2, 0x2881ff2f2d82c685); + let mut x18: u64 = 0; + let mut x19: u64 = 0; + fiat_bp512_mulx_u64(&mut x18, &mut x19, x2, 0x28aa6056583a48f3); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, 0x0, x19, x16); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x17, x14); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x15, x12); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x13, x10); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, x8); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x9, x6); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x7, x4); + let mut x34: u64 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x34, &mut x35, 0x0, x1, x18); + let mut x36: u64 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x20); + let mut x38: u64 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x38, &mut x39, x37, (0x0 as u64), x22); + let mut x40: u64 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x40, &mut x41, x39, (0x0 as u64), x24); + let mut x42: u64 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x42, &mut x43, x41, (0x0 as u64), x26); + let mut x44: u64 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x44, &mut x45, x43, (0x0 as u64), x28); + let mut x46: u64 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x46, &mut x47, x45, (0x0 as u64), x30); + let mut x48: u64 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x48, &mut x49, x47, (0x0 as u64), x32); + let mut x50: u64 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x50, &mut x51, 0x0, x36, (arg1[1])); + let mut x52: u64 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x52, &mut x53, x51, x38, (0x0 as u64)); + let mut x54: u64 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x54, &mut x55, x53, x40, (0x0 as u64)); + let mut x56: u64 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x56, &mut x57, x55, x42, (0x0 as u64)); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, x57, x44, (0x0 as u64)); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x46, (0x0 as u64)); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x48, (0x0 as u64)); + let mut x64: u64 = 0; + let mut x65: u64 = 0; + fiat_bp512_mulx_u64(&mut x64, &mut x65, x50, 0x839b32207d89efc5); + let mut x66: u64 = 0; + let mut x67: u64 = 0; + fiat_bp512_mulx_u64(&mut x66, &mut x67, x64, 0xaadd9db8dbe9c48b); + let mut x68: u64 = 0; + let mut x69: u64 = 0; + fiat_bp512_mulx_u64(&mut x68, &mut x69, x64, 0x3fd4e6ae33c9fc07); + let mut x70: u64 = 0; + let mut x71: u64 = 0; + fiat_bp512_mulx_u64(&mut x70, &mut x71, x64, 0xcb308db3b3c9d20e); + let mut x72: u64 = 0; + let mut x73: u64 = 0; + fiat_bp512_mulx_u64(&mut x72, &mut x73, x64, 0xd6639cca70330871); + let mut x74: u64 = 0; + let mut x75: u64 = 0; + fiat_bp512_mulx_u64(&mut x74, &mut x75, x64, 0x7d4d9b009bc66842); + let mut x76: u64 = 0; + let mut x77: u64 = 0; + fiat_bp512_mulx_u64(&mut x76, &mut x77, x64, 0xaecda12ae6a380e6); + let mut x78: u64 = 0; + let mut x79: u64 = 0; + fiat_bp512_mulx_u64(&mut x78, &mut x79, x64, 0x2881ff2f2d82c685); + let mut x80: u64 = 0; + let mut x81: u64 = 0; + fiat_bp512_mulx_u64(&mut x80, &mut x81, x64, 0x28aa6056583a48f3); + let mut x82: u64 = 0; + let mut x83: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x82, &mut x83, 0x0, x81, x78); + let mut x84: u64 = 0; + let mut x85: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x84, &mut x85, x83, x79, x76); + let mut x86: u64 = 0; + let mut x87: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x86, &mut x87, x85, x77, x74); + let mut x88: u64 = 0; + let mut x89: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x88, &mut x89, x87, x75, x72); + let mut x90: u64 = 0; + let mut x91: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x90, &mut x91, x89, x73, x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x92, &mut x93, x91, x71, x68); + let mut x94: u64 = 0; + let mut x95: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x94, &mut x95, x93, x69, x66); + let mut x96: u64 = 0; + let mut x97: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x96, &mut x97, 0x0, x50, x80); + let mut x98: u64 = 0; + let mut x99: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x98, &mut x99, x97, x52, x82); + let mut x100: u64 = 0; + let mut x101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x100, &mut x101, x99, x54, x84); + let mut x102: u64 = 0; + let mut x103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x102, &mut x103, x101, x56, x86); + let mut x104: u64 = 0; + let mut x105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x104, &mut x105, x103, x58, x88); + let mut x106: u64 = 0; + let mut x107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x106, &mut x107, x105, x60, x90); + let mut x108: u64 = 0; + let mut x109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x108, &mut x109, x107, x62, x92); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x110, &mut x111, x109, ((x63 as u64) + ((x49 as u64) + ((x33 as u64) + x5))), x94); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x112, &mut x113, 0x0, x98, (arg1[2])); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x100, (0x0 as u64)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x102, (0x0 as u64)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x118, &mut x119, x117, x104, (0x0 as u64)); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x120, &mut x121, x119, x106, (0x0 as u64)); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, x121, x108, (0x0 as u64)); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x110, (0x0 as u64)); + let mut x126: u64 = 0; + let mut x127: u64 = 0; + fiat_bp512_mulx_u64(&mut x126, &mut x127, x112, 0x839b32207d89efc5); + let mut x128: u64 = 0; + let mut x129: u64 = 0; + fiat_bp512_mulx_u64(&mut x128, &mut x129, x126, 0xaadd9db8dbe9c48b); + let mut x130: u64 = 0; + let mut x131: u64 = 0; + fiat_bp512_mulx_u64(&mut x130, &mut x131, x126, 0x3fd4e6ae33c9fc07); + let mut x132: u64 = 0; + let mut x133: u64 = 0; + fiat_bp512_mulx_u64(&mut x132, &mut x133, x126, 0xcb308db3b3c9d20e); + let mut x134: u64 = 0; + let mut x135: u64 = 0; + fiat_bp512_mulx_u64(&mut x134, &mut x135, x126, 0xd6639cca70330871); + let mut x136: u64 = 0; + let mut x137: u64 = 0; + fiat_bp512_mulx_u64(&mut x136, &mut x137, x126, 0x7d4d9b009bc66842); + let mut x138: u64 = 0; + let mut x139: u64 = 0; + fiat_bp512_mulx_u64(&mut x138, &mut x139, x126, 0xaecda12ae6a380e6); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x126, 0x2881ff2f2d82c685); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x126, 0x28aa6056583a48f3); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x143, x140); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x141, x138); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x139, x136); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x137, x134); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x135, x132); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x133, x130); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x131, x128); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x112, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x114, x144); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x116, x146); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x118, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x120, x150); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x122, x152); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x124, x154); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x172, &mut x173, x171, ((x125 as u64) + ((x111 as u64) + ((x95 as u64) + x67))), x156); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x174, &mut x175, 0x0, x160, (arg1[3])); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x162, (0x0 as u64)); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x164, (0x0 as u64)); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x166, (0x0 as u64)); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x168, (0x0 as u64)); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x170, (0x0 as u64)); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x186, &mut x187, x185, x172, (0x0 as u64)); + let mut x188: u64 = 0; + let mut x189: u64 = 0; + fiat_bp512_mulx_u64(&mut x188, &mut x189, x174, 0x839b32207d89efc5); + let mut x190: u64 = 0; + let mut x191: u64 = 0; + fiat_bp512_mulx_u64(&mut x190, &mut x191, x188, 0xaadd9db8dbe9c48b); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x188, 0x3fd4e6ae33c9fc07); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x188, 0xcb308db3b3c9d20e); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x188, 0xd6639cca70330871); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x188, 0x7d4d9b009bc66842); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x188, 0xaecda12ae6a380e6); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x188, 0x2881ff2f2d82c685); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x188, 0x28aa6056583a48f3); + let mut x206: u64 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x206, &mut x207, 0x0, x205, x202); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, x207, x203, x200); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x201, x198); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x199, x196); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x197, x194); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x195, x192); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x193, x190); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, 0x0, x174, x204); + let mut x222: u64 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x222, &mut x223, x221, x176, x206); + let mut x224: u64 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x224, &mut x225, x223, x178, x208); + let mut x226: u64 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x226, &mut x227, x225, x180, x210); + let mut x228: u64 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x228, &mut x229, x227, x182, x212); + let mut x230: u64 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x230, &mut x231, x229, x184, x214); + let mut x232: u64 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x232, &mut x233, x231, x186, x216); + let mut x234: u64 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x234, &mut x235, x233, ((x187 as u64) + ((x173 as u64) + ((x157 as u64) + x129))), x218); + let mut x236: u64 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x236, &mut x237, 0x0, x222, (arg1[4])); + let mut x238: u64 = 0; + let mut x239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x238, &mut x239, x237, x224, (0x0 as u64)); + let mut x240: u64 = 0; + let mut x241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x240, &mut x241, x239, x226, (0x0 as u64)); + let mut x242: u64 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x242, &mut x243, x241, x228, (0x0 as u64)); + let mut x244: u64 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x244, &mut x245, x243, x230, (0x0 as u64)); + let mut x246: u64 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x246, &mut x247, x245, x232, (0x0 as u64)); + let mut x248: u64 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x248, &mut x249, x247, x234, (0x0 as u64)); + let mut x250: u64 = 0; + let mut x251: u64 = 0; + fiat_bp512_mulx_u64(&mut x250, &mut x251, x236, 0x839b32207d89efc5); + let mut x252: u64 = 0; + let mut x253: u64 = 0; + fiat_bp512_mulx_u64(&mut x252, &mut x253, x250, 0xaadd9db8dbe9c48b); + let mut x254: u64 = 0; + let mut x255: u64 = 0; + fiat_bp512_mulx_u64(&mut x254, &mut x255, x250, 0x3fd4e6ae33c9fc07); + let mut x256: u64 = 0; + let mut x257: u64 = 0; + fiat_bp512_mulx_u64(&mut x256, &mut x257, x250, 0xcb308db3b3c9d20e); + let mut x258: u64 = 0; + let mut x259: u64 = 0; + fiat_bp512_mulx_u64(&mut x258, &mut x259, x250, 0xd6639cca70330871); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp512_mulx_u64(&mut x260, &mut x261, x250, 0x7d4d9b009bc66842); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp512_mulx_u64(&mut x262, &mut x263, x250, 0xaecda12ae6a380e6); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp512_mulx_u64(&mut x264, &mut x265, x250, 0x2881ff2f2d82c685); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp512_mulx_u64(&mut x266, &mut x267, x250, 0x28aa6056583a48f3); + let mut x268: u64 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x268, &mut x269, 0x0, x267, x264); + let mut x270: u64 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x270, &mut x271, x269, x265, x262); + let mut x272: u64 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x272, &mut x273, x271, x263, x260); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, x273, x261, x258); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x259, x256); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x257, x254); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x255, x252); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, 0x0, x236, x266); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x238, x268); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x240, x270); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x242, x272); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x244, x274); + let mut x292: u64 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x292, &mut x293, x291, x246, x276); + let mut x294: u64 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x294, &mut x295, x293, x248, x278); + let mut x296: u64 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x296, &mut x297, x295, ((x249 as u64) + ((x235 as u64) + ((x219 as u64) + x191))), x280); + let mut x298: u64 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x298, &mut x299, 0x0, x284, (arg1[5])); + let mut x300: u64 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x300, &mut x301, x299, x286, (0x0 as u64)); + let mut x302: u64 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x302, &mut x303, x301, x288, (0x0 as u64)); + let mut x304: u64 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x304, &mut x305, x303, x290, (0x0 as u64)); + let mut x306: u64 = 0; + let mut x307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x306, &mut x307, x305, x292, (0x0 as u64)); + let mut x308: u64 = 0; + let mut x309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x308, &mut x309, x307, x294, (0x0 as u64)); + let mut x310: u64 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x310, &mut x311, x309, x296, (0x0 as u64)); + let mut x312: u64 = 0; + let mut x313: u64 = 0; + fiat_bp512_mulx_u64(&mut x312, &mut x313, x298, 0x839b32207d89efc5); + let mut x314: u64 = 0; + let mut x315: u64 = 0; + fiat_bp512_mulx_u64(&mut x314, &mut x315, x312, 0xaadd9db8dbe9c48b); + let mut x316: u64 = 0; + let mut x317: u64 = 0; + fiat_bp512_mulx_u64(&mut x316, &mut x317, x312, 0x3fd4e6ae33c9fc07); + let mut x318: u64 = 0; + let mut x319: u64 = 0; + fiat_bp512_mulx_u64(&mut x318, &mut x319, x312, 0xcb308db3b3c9d20e); + let mut x320: u64 = 0; + let mut x321: u64 = 0; + fiat_bp512_mulx_u64(&mut x320, &mut x321, x312, 0xd6639cca70330871); + let mut x322: u64 = 0; + let mut x323: u64 = 0; + fiat_bp512_mulx_u64(&mut x322, &mut x323, x312, 0x7d4d9b009bc66842); + let mut x324: u64 = 0; + let mut x325: u64 = 0; + fiat_bp512_mulx_u64(&mut x324, &mut x325, x312, 0xaecda12ae6a380e6); + let mut x326: u64 = 0; + let mut x327: u64 = 0; + fiat_bp512_mulx_u64(&mut x326, &mut x327, x312, 0x2881ff2f2d82c685); + let mut x328: u64 = 0; + let mut x329: u64 = 0; + fiat_bp512_mulx_u64(&mut x328, &mut x329, x312, 0x28aa6056583a48f3); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, 0x0, x329, x326); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x327, x324); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x325, x322); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x323, x320); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x321, x318); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x319, x316); + let mut x342: u64 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x342, &mut x343, x341, x317, x314); + let mut x344: u64 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x344, &mut x345, 0x0, x298, x328); + let mut x346: u64 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x346, &mut x347, x345, x300, x330); + let mut x348: u64 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x348, &mut x349, x347, x302, x332); + let mut x350: u64 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x350, &mut x351, x349, x304, x334); + let mut x352: u64 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x352, &mut x353, x351, x306, x336); + let mut x354: u64 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x354, &mut x355, x353, x308, x338); + let mut x356: u64 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x356, &mut x357, x355, x310, x340); + let mut x358: u64 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x358, &mut x359, x357, ((x311 as u64) + ((x297 as u64) + ((x281 as u64) + x253))), x342); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x346, (arg1[6])); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x348, (0x0 as u64)); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x350, (0x0 as u64)); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x352, (0x0 as u64)); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x354, (0x0 as u64)); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x356, (0x0 as u64)); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x358, (0x0 as u64)); + let mut x374: u64 = 0; + let mut x375: u64 = 0; + fiat_bp512_mulx_u64(&mut x374, &mut x375, x360, 0x839b32207d89efc5); + let mut x376: u64 = 0; + let mut x377: u64 = 0; + fiat_bp512_mulx_u64(&mut x376, &mut x377, x374, 0xaadd9db8dbe9c48b); + let mut x378: u64 = 0; + let mut x379: u64 = 0; + fiat_bp512_mulx_u64(&mut x378, &mut x379, x374, 0x3fd4e6ae33c9fc07); + let mut x380: u64 = 0; + let mut x381: u64 = 0; + fiat_bp512_mulx_u64(&mut x380, &mut x381, x374, 0xcb308db3b3c9d20e); + let mut x382: u64 = 0; + let mut x383: u64 = 0; + fiat_bp512_mulx_u64(&mut x382, &mut x383, x374, 0xd6639cca70330871); + let mut x384: u64 = 0; + let mut x385: u64 = 0; + fiat_bp512_mulx_u64(&mut x384, &mut x385, x374, 0x7d4d9b009bc66842); + let mut x386: u64 = 0; + let mut x387: u64 = 0; + fiat_bp512_mulx_u64(&mut x386, &mut x387, x374, 0xaecda12ae6a380e6); + let mut x388: u64 = 0; + let mut x389: u64 = 0; + fiat_bp512_mulx_u64(&mut x388, &mut x389, x374, 0x2881ff2f2d82c685); + let mut x390: u64 = 0; + let mut x391: u64 = 0; + fiat_bp512_mulx_u64(&mut x390, &mut x391, x374, 0x28aa6056583a48f3); + let mut x392: u64 = 0; + let mut x393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x392, &mut x393, 0x0, x391, x388); + let mut x394: u64 = 0; + let mut x395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x394, &mut x395, x393, x389, x386); + let mut x396: u64 = 0; + let mut x397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x396, &mut x397, x395, x387, x384); + let mut x398: u64 = 0; + let mut x399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x398, &mut x399, x397, x385, x382); + let mut x400: u64 = 0; + let mut x401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x400, &mut x401, x399, x383, x380); + let mut x402: u64 = 0; + let mut x403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x402, &mut x403, x401, x381, x378); + let mut x404: u64 = 0; + let mut x405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x404, &mut x405, x403, x379, x376); + let mut x406: u64 = 0; + let mut x407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x406, &mut x407, 0x0, x360, x390); + let mut x408: u64 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x408, &mut x409, x407, x362, x392); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, x409, x364, x394); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x366, x396); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x368, x398); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x370, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x372, x402); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, ((x373 as u64) + ((x359 as u64) + ((x343 as u64) + x315))), x404); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, 0x0, x408, (arg1[7])); + let mut x424: u64 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x424, &mut x425, x423, x410, (0x0 as u64)); + let mut x426: u64 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x426, &mut x427, x425, x412, (0x0 as u64)); + let mut x428: u64 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x428, &mut x429, x427, x414, (0x0 as u64)); + let mut x430: u64 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x430, &mut x431, x429, x416, (0x0 as u64)); + let mut x432: u64 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x432, &mut x433, x431, x418, (0x0 as u64)); + let mut x434: u64 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x434, &mut x435, x433, x420, (0x0 as u64)); + let mut x436: u64 = 0; + let mut x437: u64 = 0; + fiat_bp512_mulx_u64(&mut x436, &mut x437, x422, 0x839b32207d89efc5); + let mut x438: u64 = 0; + let mut x439: u64 = 0; + fiat_bp512_mulx_u64(&mut x438, &mut x439, x436, 0xaadd9db8dbe9c48b); + let mut x440: u64 = 0; + let mut x441: u64 = 0; + fiat_bp512_mulx_u64(&mut x440, &mut x441, x436, 0x3fd4e6ae33c9fc07); + let mut x442: u64 = 0; + let mut x443: u64 = 0; + fiat_bp512_mulx_u64(&mut x442, &mut x443, x436, 0xcb308db3b3c9d20e); + let mut x444: u64 = 0; + let mut x445: u64 = 0; + fiat_bp512_mulx_u64(&mut x444, &mut x445, x436, 0xd6639cca70330871); + let mut x446: u64 = 0; + let mut x447: u64 = 0; + fiat_bp512_mulx_u64(&mut x446, &mut x447, x436, 0x7d4d9b009bc66842); + let mut x448: u64 = 0; + let mut x449: u64 = 0; + fiat_bp512_mulx_u64(&mut x448, &mut x449, x436, 0xaecda12ae6a380e6); + let mut x450: u64 = 0; + let mut x451: u64 = 0; + fiat_bp512_mulx_u64(&mut x450, &mut x451, x436, 0x2881ff2f2d82c685); + let mut x452: u64 = 0; + let mut x453: u64 = 0; + fiat_bp512_mulx_u64(&mut x452, &mut x453, x436, 0x28aa6056583a48f3); + let mut x454: u64 = 0; + let mut x455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x454, &mut x455, 0x0, x453, x450); + let mut x456: u64 = 0; + let mut x457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x456, &mut x457, x455, x451, x448); + let mut x458: u64 = 0; + let mut x459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x458, &mut x459, x457, x449, x446); + let mut x460: u64 = 0; + let mut x461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x460, &mut x461, x459, x447, x444); + let mut x462: u64 = 0; + let mut x463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x462, &mut x463, x461, x445, x442); + let mut x464: u64 = 0; + let mut x465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x464, &mut x465, x463, x443, x440); + let mut x466: u64 = 0; + let mut x467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x466, &mut x467, x465, x441, x438); + let mut x468: u64 = 0; + let mut x469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x468, &mut x469, 0x0, x422, x452); + let mut x470: u64 = 0; + let mut x471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x470, &mut x471, x469, x424, x454); + let mut x472: u64 = 0; + let mut x473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x472, &mut x473, x471, x426, x456); + let mut x474: u64 = 0; + let mut x475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x474, &mut x475, x473, x428, x458); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, x475, x430, x460); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x432, x462); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x434, x464); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, ((x435 as u64) + ((x421 as u64) + ((x405 as u64) + x377))), x466); + let x484: u64 = ((x483 as u64) + ((x467 as u64) + x439)); + let mut x485: u64 = 0; + let mut x486: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x485, &mut x486, 0x0, x470, 0x28aa6056583a48f3); + let mut x487: u64 = 0; + let mut x488: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x487, &mut x488, x486, x472, 0x2881ff2f2d82c685); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x489, &mut x490, x488, x474, 0xaecda12ae6a380e6); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x491, &mut x492, x490, x476, 0x7d4d9b009bc66842); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x493, &mut x494, x492, x478, 0xd6639cca70330871); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x495, &mut x496, x494, x480, 0xcb308db3b3c9d20e); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x497, &mut x498, x496, x482, 0x3fd4e6ae33c9fc07); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x499, &mut x500, x498, x484, 0xaadd9db8dbe9c48b); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x501, &mut x502, x500, (0x0 as u64), (0x0 as u64)); + let mut x503: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x503, x502, x485, x470); + let mut x504: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x504, x502, x487, x472); + let mut x505: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x505, x502, x489, x474); + let mut x506: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x506, x502, x491, x476); + let mut x507: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x507, x502, x493, x478); + let mut x508: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x508, x502, x495, x480); + let mut x509: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x509, x502, x497, x482); + let mut x510: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x510, x502, x499, x484); + out1[0] = x503; + out1[1] = x504; + out1[2] = x505; + out1[3] = x506; + out1[4] = x507; + out1[5] = x508; + out1[6] = x509; + out1[7] = x510; +} + +/// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, 0x3c4c9d05a9ff6450); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, 0x202e19402056eecc); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, 0xa16daa5fd42bff83); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, 0x19486fd8d5898057); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, 0xe0c19a7783514a25); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, 0x53b7f9bc905affd3); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, 0x793fb13027157905); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, 0x49ad144a6158f205); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let mut x39: u64 = 0; + let mut x40: u64 = 0; + fiat_bp512_mulx_u64(&mut x39, &mut x40, x23, 0x839b32207d89efc5); + let mut x41: u64 = 0; + let mut x42: u64 = 0; + fiat_bp512_mulx_u64(&mut x41, &mut x42, x39, 0xaadd9db8dbe9c48b); + let mut x43: u64 = 0; + let mut x44: u64 = 0; + fiat_bp512_mulx_u64(&mut x43, &mut x44, x39, 0x3fd4e6ae33c9fc07); + let mut x45: u64 = 0; + let mut x46: u64 = 0; + fiat_bp512_mulx_u64(&mut x45, &mut x46, x39, 0xcb308db3b3c9d20e); + let mut x47: u64 = 0; + let mut x48: u64 = 0; + fiat_bp512_mulx_u64(&mut x47, &mut x48, x39, 0xd6639cca70330871); + let mut x49: u64 = 0; + let mut x50: u64 = 0; + fiat_bp512_mulx_u64(&mut x49, &mut x50, x39, 0x7d4d9b009bc66842); + let mut x51: u64 = 0; + let mut x52: u64 = 0; + fiat_bp512_mulx_u64(&mut x51, &mut x52, x39, 0xaecda12ae6a380e6); + let mut x53: u64 = 0; + let mut x54: u64 = 0; + fiat_bp512_mulx_u64(&mut x53, &mut x54, x39, 0x2881ff2f2d82c685); + let mut x55: u64 = 0; + let mut x56: u64 = 0; + fiat_bp512_mulx_u64(&mut x55, &mut x56, x39, 0x28aa6056583a48f3); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x57, &mut x58, 0x0, x56, x53); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x54, x51); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x52, x49); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x50, x47); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x48, x45); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x67, &mut x68, x66, x46, x43); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x69, &mut x70, x68, x44, x41); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x71, &mut x72, 0x0, x23, x55); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, x72, x25, x57); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x27, x59); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x29, x61); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x31, x63); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x33, x65); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x35, x67); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x37, x69); + let mut x87: u64 = 0; + let mut x88: u64 = 0; + fiat_bp512_mulx_u64(&mut x87, &mut x88, x1, 0x3c4c9d05a9ff6450); + let mut x89: u64 = 0; + let mut x90: u64 = 0; + fiat_bp512_mulx_u64(&mut x89, &mut x90, x1, 0x202e19402056eecc); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, 0xa16daa5fd42bff83); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, 0x19486fd8d5898057); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, 0xe0c19a7783514a25); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, 0x53b7f9bc905affd3); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, 0x793fb13027157905); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, 0x49ad144a6158f205); + let mut x103: u64 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x103, &mut x104, 0x0, x102, x99); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x105, &mut x106, x104, x100, x97); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, x106, x98, x95); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x96, x93); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x94, x91); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x92, x89); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x90, x87); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, 0x0, x73, x101); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x75, x103); + let mut x121: u64 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x121, &mut x122, x120, x77, x105); + let mut x123: u64 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x123, &mut x124, x122, x79, x107); + let mut x125: u64 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x125, &mut x126, x124, x81, x109); + let mut x127: u64 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x127, &mut x128, x126, x83, x111); + let mut x129: u64 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x129, &mut x130, x128, x85, x113); + let mut x131: u64 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x131, &mut x132, x130, (((x86 as u64) + ((x38 as u64) + x10)) + ((x70 as u64) + x42)), x115); + let mut x133: u64 = 0; + let mut x134: u64 = 0; + fiat_bp512_mulx_u64(&mut x133, &mut x134, x117, 0x839b32207d89efc5); + let mut x135: u64 = 0; + let mut x136: u64 = 0; + fiat_bp512_mulx_u64(&mut x135, &mut x136, x133, 0xaadd9db8dbe9c48b); + let mut x137: u64 = 0; + let mut x138: u64 = 0; + fiat_bp512_mulx_u64(&mut x137, &mut x138, x133, 0x3fd4e6ae33c9fc07); + let mut x139: u64 = 0; + let mut x140: u64 = 0; + fiat_bp512_mulx_u64(&mut x139, &mut x140, x133, 0xcb308db3b3c9d20e); + let mut x141: u64 = 0; + let mut x142: u64 = 0; + fiat_bp512_mulx_u64(&mut x141, &mut x142, x133, 0xd6639cca70330871); + let mut x143: u64 = 0; + let mut x144: u64 = 0; + fiat_bp512_mulx_u64(&mut x143, &mut x144, x133, 0x7d4d9b009bc66842); + let mut x145: u64 = 0; + let mut x146: u64 = 0; + fiat_bp512_mulx_u64(&mut x145, &mut x146, x133, 0xaecda12ae6a380e6); + let mut x147: u64 = 0; + let mut x148: u64 = 0; + fiat_bp512_mulx_u64(&mut x147, &mut x148, x133, 0x2881ff2f2d82c685); + let mut x149: u64 = 0; + let mut x150: u64 = 0; + fiat_bp512_mulx_u64(&mut x149, &mut x150, x133, 0x28aa6056583a48f3); + let mut x151: u64 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x151, &mut x152, 0x0, x150, x147); + let mut x153: u64 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x153, &mut x154, x152, x148, x145); + let mut x155: u64 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x155, &mut x156, x154, x146, x143); + let mut x157: u64 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x157, &mut x158, x156, x144, x141); + let mut x159: u64 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x159, &mut x160, x158, x142, x139); + let mut x161: u64 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x161, &mut x162, x160, x140, x137); + let mut x163: u64 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x163, &mut x164, x162, x138, x135); + let mut x165: u64 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x165, &mut x166, 0x0, x117, x149); + let mut x167: u64 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x167, &mut x168, x166, x119, x151); + let mut x169: u64 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x169, &mut x170, x168, x121, x153); + let mut x171: u64 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x171, &mut x172, x170, x123, x155); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, x172, x125, x157); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x127, x159); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x129, x161); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x131, x163); + let mut x181: u64 = 0; + let mut x182: u64 = 0; + fiat_bp512_mulx_u64(&mut x181, &mut x182, x2, 0x3c4c9d05a9ff6450); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp512_mulx_u64(&mut x183, &mut x184, x2, 0x202e19402056eecc); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp512_mulx_u64(&mut x185, &mut x186, x2, 0xa16daa5fd42bff83); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp512_mulx_u64(&mut x187, &mut x188, x2, 0x19486fd8d5898057); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp512_mulx_u64(&mut x189, &mut x190, x2, 0xe0c19a7783514a25); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp512_mulx_u64(&mut x191, &mut x192, x2, 0x53b7f9bc905affd3); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp512_mulx_u64(&mut x193, &mut x194, x2, 0x793fb13027157905); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp512_mulx_u64(&mut x195, &mut x196, x2, 0x49ad144a6158f205); + let mut x197: u64 = 0; + let mut x198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let mut x207: u64 = 0; + let mut x208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x207, &mut x208, x206, x186, x183); + let mut x209: u64 = 0; + let mut x210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x209, &mut x210, x208, x184, x181); + let mut x211: u64 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x211, &mut x212, 0x0, x167, x195); + let mut x213: u64 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x213, &mut x214, x212, x169, x197); + let mut x215: u64 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x215, &mut x216, x214, x171, x199); + let mut x217: u64 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x217, &mut x218, x216, x173, x201); + let mut x219: u64 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x219, &mut x220, x218, x175, x203); + let mut x221: u64 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x221, &mut x222, x220, x177, x205); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, x222, x179, x207); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, (((x180 as u64) + ((x132 as u64) + ((x116 as u64) + x88))) + ((x164 as u64) + x136)), x209); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp512_mulx_u64(&mut x227, &mut x228, x211, 0x839b32207d89efc5); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp512_mulx_u64(&mut x229, &mut x230, x227, 0xaadd9db8dbe9c48b); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp512_mulx_u64(&mut x231, &mut x232, x227, 0x3fd4e6ae33c9fc07); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp512_mulx_u64(&mut x233, &mut x234, x227, 0xcb308db3b3c9d20e); + let mut x235: u64 = 0; + let mut x236: u64 = 0; + fiat_bp512_mulx_u64(&mut x235, &mut x236, x227, 0xd6639cca70330871); + let mut x237: u64 = 0; + let mut x238: u64 = 0; + fiat_bp512_mulx_u64(&mut x237, &mut x238, x227, 0x7d4d9b009bc66842); + let mut x239: u64 = 0; + let mut x240: u64 = 0; + fiat_bp512_mulx_u64(&mut x239, &mut x240, x227, 0xaecda12ae6a380e6); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x227, 0x2881ff2f2d82c685); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x227, 0x28aa6056583a48f3); + let mut x245: u64 = 0; + let mut x246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x245, &mut x246, 0x0, x244, x241); + let mut x247: u64 = 0; + let mut x248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x247, &mut x248, x246, x242, x239); + let mut x249: u64 = 0; + let mut x250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x249, &mut x250, x248, x240, x237); + let mut x251: u64 = 0; + let mut x252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x251, &mut x252, x250, x238, x235); + let mut x253: u64 = 0; + let mut x254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x253, &mut x254, x252, x236, x233); + let mut x255: u64 = 0; + let mut x256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x255, &mut x256, x254, x234, x231); + let mut x257: u64 = 0; + let mut x258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x257, &mut x258, x256, x232, x229); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x211, x243); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x213, x245); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x215, x247); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x217, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x219, x251); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x221, x253); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x223, x255); + let mut x273: u64 = 0; + let mut x274: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x273, &mut x274, x272, x225, x257); + let mut x275: u64 = 0; + let mut x276: u64 = 0; + fiat_bp512_mulx_u64(&mut x275, &mut x276, x3, 0x3c4c9d05a9ff6450); + let mut x277: u64 = 0; + let mut x278: u64 = 0; + fiat_bp512_mulx_u64(&mut x277, &mut x278, x3, 0x202e19402056eecc); + let mut x279: u64 = 0; + let mut x280: u64 = 0; + fiat_bp512_mulx_u64(&mut x279, &mut x280, x3, 0xa16daa5fd42bff83); + let mut x281: u64 = 0; + let mut x282: u64 = 0; + fiat_bp512_mulx_u64(&mut x281, &mut x282, x3, 0x19486fd8d5898057); + let mut x283: u64 = 0; + let mut x284: u64 = 0; + fiat_bp512_mulx_u64(&mut x283, &mut x284, x3, 0xe0c19a7783514a25); + let mut x285: u64 = 0; + let mut x286: u64 = 0; + fiat_bp512_mulx_u64(&mut x285, &mut x286, x3, 0x53b7f9bc905affd3); + let mut x287: u64 = 0; + let mut x288: u64 = 0; + fiat_bp512_mulx_u64(&mut x287, &mut x288, x3, 0x793fb13027157905); + let mut x289: u64 = 0; + let mut x290: u64 = 0; + fiat_bp512_mulx_u64(&mut x289, &mut x290, x3, 0x49ad144a6158f205); + let mut x291: u64 = 0; + let mut x292: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x291, &mut x292, 0x0, x290, x287); + let mut x293: u64 = 0; + let mut x294: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x293, &mut x294, x292, x288, x285); + let mut x295: u64 = 0; + let mut x296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x295, &mut x296, x294, x286, x283); + let mut x297: u64 = 0; + let mut x298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x297, &mut x298, x296, x284, x281); + let mut x299: u64 = 0; + let mut x300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x299, &mut x300, x298, x282, x279); + let mut x301: u64 = 0; + let mut x302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x301, &mut x302, x300, x280, x277); + let mut x303: u64 = 0; + let mut x304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x303, &mut x304, x302, x278, x275); + let mut x305: u64 = 0; + let mut x306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x305, &mut x306, 0x0, x261, x289); + let mut x307: u64 = 0; + let mut x308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x307, &mut x308, x306, x263, x291); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, x308, x265, x293); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x267, x295); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x269, x297); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x271, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x273, x301); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, (((x274 as u64) + ((x226 as u64) + ((x210 as u64) + x182))) + ((x258 as u64) + x230)), x303); + let mut x321: u64 = 0; + let mut x322: u64 = 0; + fiat_bp512_mulx_u64(&mut x321, &mut x322, x305, 0x839b32207d89efc5); + let mut x323: u64 = 0; + let mut x324: u64 = 0; + fiat_bp512_mulx_u64(&mut x323, &mut x324, x321, 0xaadd9db8dbe9c48b); + let mut x325: u64 = 0; + let mut x326: u64 = 0; + fiat_bp512_mulx_u64(&mut x325, &mut x326, x321, 0x3fd4e6ae33c9fc07); + let mut x327: u64 = 0; + let mut x328: u64 = 0; + fiat_bp512_mulx_u64(&mut x327, &mut x328, x321, 0xcb308db3b3c9d20e); + let mut x329: u64 = 0; + let mut x330: u64 = 0; + fiat_bp512_mulx_u64(&mut x329, &mut x330, x321, 0xd6639cca70330871); + let mut x331: u64 = 0; + let mut x332: u64 = 0; + fiat_bp512_mulx_u64(&mut x331, &mut x332, x321, 0x7d4d9b009bc66842); + let mut x333: u64 = 0; + let mut x334: u64 = 0; + fiat_bp512_mulx_u64(&mut x333, &mut x334, x321, 0xaecda12ae6a380e6); + let mut x335: u64 = 0; + let mut x336: u64 = 0; + fiat_bp512_mulx_u64(&mut x335, &mut x336, x321, 0x2881ff2f2d82c685); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp512_mulx_u64(&mut x337, &mut x338, x321, 0x28aa6056583a48f3); + let mut x339: u64 = 0; + let mut x340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x339, &mut x340, 0x0, x338, x335); + let mut x341: u64 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x341, &mut x342, x340, x336, x333); + let mut x343: u64 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x343, &mut x344, x342, x334, x331); + let mut x345: u64 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x345, &mut x346, x344, x332, x329); + let mut x347: u64 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x347, &mut x348, x346, x330, x327); + let mut x349: u64 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x349, &mut x350, x348, x328, x325); + let mut x351: u64 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x351, &mut x352, x350, x326, x323); + let mut x353: u64 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x353, &mut x354, 0x0, x305, x337); + let mut x355: u64 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x355, &mut x356, x354, x307, x339); + let mut x357: u64 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x357, &mut x358, x356, x309, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x359, &mut x360, x358, x311, x343); + let mut x361: u64 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x361, &mut x362, x360, x313, x345); + let mut x363: u64 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x363, &mut x364, x362, x315, x347); + let mut x365: u64 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x365, &mut x366, x364, x317, x349); + let mut x367: u64 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x367, &mut x368, x366, x319, x351); + let mut x369: u64 = 0; + let mut x370: u64 = 0; + fiat_bp512_mulx_u64(&mut x369, &mut x370, x4, 0x3c4c9d05a9ff6450); + let mut x371: u64 = 0; + let mut x372: u64 = 0; + fiat_bp512_mulx_u64(&mut x371, &mut x372, x4, 0x202e19402056eecc); + let mut x373: u64 = 0; + let mut x374: u64 = 0; + fiat_bp512_mulx_u64(&mut x373, &mut x374, x4, 0xa16daa5fd42bff83); + let mut x375: u64 = 0; + let mut x376: u64 = 0; + fiat_bp512_mulx_u64(&mut x375, &mut x376, x4, 0x19486fd8d5898057); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp512_mulx_u64(&mut x377, &mut x378, x4, 0xe0c19a7783514a25); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp512_mulx_u64(&mut x379, &mut x380, x4, 0x53b7f9bc905affd3); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp512_mulx_u64(&mut x381, &mut x382, x4, 0x793fb13027157905); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp512_mulx_u64(&mut x383, &mut x384, x4, 0x49ad144a6158f205); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, 0x0, x384, x381); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x382, x379); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x380, x377); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x378, x375); + let mut x393: u64 = 0; + let mut x394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x393, &mut x394, x392, x376, x373); + let mut x395: u64 = 0; + let mut x396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x395, &mut x396, x394, x374, x371); + let mut x397: u64 = 0; + let mut x398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x397, &mut x398, x396, x372, x369); + let mut x399: u64 = 0; + let mut x400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x399, &mut x400, 0x0, x355, x383); + let mut x401: u64 = 0; + let mut x402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x401, &mut x402, x400, x357, x385); + let mut x403: u64 = 0; + let mut x404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x403, &mut x404, x402, x359, x387); + let mut x405: u64 = 0; + let mut x406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x405, &mut x406, x404, x361, x389); + let mut x407: u64 = 0; + let mut x408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x407, &mut x408, x406, x363, x391); + let mut x409: u64 = 0; + let mut x410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x409, &mut x410, x408, x365, x393); + let mut x411: u64 = 0; + let mut x412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x411, &mut x412, x410, x367, x395); + let mut x413: u64 = 0; + let mut x414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x413, &mut x414, x412, (((x368 as u64) + ((x320 as u64) + ((x304 as u64) + x276))) + ((x352 as u64) + x324)), x397); + let mut x415: u64 = 0; + let mut x416: u64 = 0; + fiat_bp512_mulx_u64(&mut x415, &mut x416, x399, 0x839b32207d89efc5); + let mut x417: u64 = 0; + let mut x418: u64 = 0; + fiat_bp512_mulx_u64(&mut x417, &mut x418, x415, 0xaadd9db8dbe9c48b); + let mut x419: u64 = 0; + let mut x420: u64 = 0; + fiat_bp512_mulx_u64(&mut x419, &mut x420, x415, 0x3fd4e6ae33c9fc07); + let mut x421: u64 = 0; + let mut x422: u64 = 0; + fiat_bp512_mulx_u64(&mut x421, &mut x422, x415, 0xcb308db3b3c9d20e); + let mut x423: u64 = 0; + let mut x424: u64 = 0; + fiat_bp512_mulx_u64(&mut x423, &mut x424, x415, 0xd6639cca70330871); + let mut x425: u64 = 0; + let mut x426: u64 = 0; + fiat_bp512_mulx_u64(&mut x425, &mut x426, x415, 0x7d4d9b009bc66842); + let mut x427: u64 = 0; + let mut x428: u64 = 0; + fiat_bp512_mulx_u64(&mut x427, &mut x428, x415, 0xaecda12ae6a380e6); + let mut x429: u64 = 0; + let mut x430: u64 = 0; + fiat_bp512_mulx_u64(&mut x429, &mut x430, x415, 0x2881ff2f2d82c685); + let mut x431: u64 = 0; + let mut x432: u64 = 0; + fiat_bp512_mulx_u64(&mut x431, &mut x432, x415, 0x28aa6056583a48f3); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, 0x0, x432, x429); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x430, x427); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x428, x425); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x426, x423); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x424, x421); + let mut x443: u64 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x443, &mut x444, x442, x422, x419); + let mut x445: u64 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x445, &mut x446, x444, x420, x417); + let mut x447: u64 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x447, &mut x448, 0x0, x399, x431); + let mut x449: u64 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x449, &mut x450, x448, x401, x433); + let mut x451: u64 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x451, &mut x452, x450, x403, x435); + let mut x453: u64 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x453, &mut x454, x452, x405, x437); + let mut x455: u64 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x455, &mut x456, x454, x407, x439); + let mut x457: u64 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x457, &mut x458, x456, x409, x441); + let mut x459: u64 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x459, &mut x460, x458, x411, x443); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, x460, x413, x445); + let mut x463: u64 = 0; + let mut x464: u64 = 0; + fiat_bp512_mulx_u64(&mut x463, &mut x464, x5, 0x3c4c9d05a9ff6450); + let mut x465: u64 = 0; + let mut x466: u64 = 0; + fiat_bp512_mulx_u64(&mut x465, &mut x466, x5, 0x202e19402056eecc); + let mut x467: u64 = 0; + let mut x468: u64 = 0; + fiat_bp512_mulx_u64(&mut x467, &mut x468, x5, 0xa16daa5fd42bff83); + let mut x469: u64 = 0; + let mut x470: u64 = 0; + fiat_bp512_mulx_u64(&mut x469, &mut x470, x5, 0x19486fd8d5898057); + let mut x471: u64 = 0; + let mut x472: u64 = 0; + fiat_bp512_mulx_u64(&mut x471, &mut x472, x5, 0xe0c19a7783514a25); + let mut x473: u64 = 0; + let mut x474: u64 = 0; + fiat_bp512_mulx_u64(&mut x473, &mut x474, x5, 0x53b7f9bc905affd3); + let mut x475: u64 = 0; + let mut x476: u64 = 0; + fiat_bp512_mulx_u64(&mut x475, &mut x476, x5, 0x793fb13027157905); + let mut x477: u64 = 0; + let mut x478: u64 = 0; + fiat_bp512_mulx_u64(&mut x477, &mut x478, x5, 0x49ad144a6158f205); + let mut x479: u64 = 0; + let mut x480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x479, &mut x480, 0x0, x478, x475); + let mut x481: u64 = 0; + let mut x482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x481, &mut x482, x480, x476, x473); + let mut x483: u64 = 0; + let mut x484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x483, &mut x484, x482, x474, x471); + let mut x485: u64 = 0; + let mut x486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x485, &mut x486, x484, x472, x469); + let mut x487: u64 = 0; + let mut x488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x487, &mut x488, x486, x470, x467); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x489, &mut x490, x488, x468, x465); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x491, &mut x492, x490, x466, x463); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x493, &mut x494, 0x0, x449, x477); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x495, &mut x496, x494, x451, x479); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x497, &mut x498, x496, x453, x481); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x499, &mut x500, x498, x455, x483); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x501, &mut x502, x500, x457, x485); + let mut x503: u64 = 0; + let mut x504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x503, &mut x504, x502, x459, x487); + let mut x505: u64 = 0; + let mut x506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x505, &mut x506, x504, x461, x489); + let mut x507: u64 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x507, &mut x508, x506, (((x462 as u64) + ((x414 as u64) + ((x398 as u64) + x370))) + ((x446 as u64) + x418)), x491); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x493, 0x839b32207d89efc5); + let mut x511: u64 = 0; + let mut x512: u64 = 0; + fiat_bp512_mulx_u64(&mut x511, &mut x512, x509, 0xaadd9db8dbe9c48b); + let mut x513: u64 = 0; + let mut x514: u64 = 0; + fiat_bp512_mulx_u64(&mut x513, &mut x514, x509, 0x3fd4e6ae33c9fc07); + let mut x515: u64 = 0; + let mut x516: u64 = 0; + fiat_bp512_mulx_u64(&mut x515, &mut x516, x509, 0xcb308db3b3c9d20e); + let mut x517: u64 = 0; + let mut x518: u64 = 0; + fiat_bp512_mulx_u64(&mut x517, &mut x518, x509, 0xd6639cca70330871); + let mut x519: u64 = 0; + let mut x520: u64 = 0; + fiat_bp512_mulx_u64(&mut x519, &mut x520, x509, 0x7d4d9b009bc66842); + let mut x521: u64 = 0; + let mut x522: u64 = 0; + fiat_bp512_mulx_u64(&mut x521, &mut x522, x509, 0xaecda12ae6a380e6); + let mut x523: u64 = 0; + let mut x524: u64 = 0; + fiat_bp512_mulx_u64(&mut x523, &mut x524, x509, 0x2881ff2f2d82c685); + let mut x525: u64 = 0; + let mut x526: u64 = 0; + fiat_bp512_mulx_u64(&mut x525, &mut x526, x509, 0x28aa6056583a48f3); + let mut x527: u64 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x527, &mut x528, 0x0, x526, x523); + let mut x529: u64 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x529, &mut x530, x528, x524, x521); + let mut x531: u64 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x531, &mut x532, x530, x522, x519); + let mut x533: u64 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x533, &mut x534, x532, x520, x517); + let mut x535: u64 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x535, &mut x536, x534, x518, x515); + let mut x537: u64 = 0; + let mut x538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x537, &mut x538, x536, x516, x513); + let mut x539: u64 = 0; + let mut x540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x539, &mut x540, x538, x514, x511); + let mut x541: u64 = 0; + let mut x542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x541, &mut x542, 0x0, x493, x525); + let mut x543: u64 = 0; + let mut x544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x543, &mut x544, x542, x495, x527); + let mut x545: u64 = 0; + let mut x546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x545, &mut x546, x544, x497, x529); + let mut x547: u64 = 0; + let mut x548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x547, &mut x548, x546, x499, x531); + let mut x549: u64 = 0; + let mut x550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x549, &mut x550, x548, x501, x533); + let mut x551: u64 = 0; + let mut x552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x551, &mut x552, x550, x503, x535); + let mut x553: u64 = 0; + let mut x554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x553, &mut x554, x552, x505, x537); + let mut x555: u64 = 0; + let mut x556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x555, &mut x556, x554, x507, x539); + let mut x557: u64 = 0; + let mut x558: u64 = 0; + fiat_bp512_mulx_u64(&mut x557, &mut x558, x6, 0x3c4c9d05a9ff6450); + let mut x559: u64 = 0; + let mut x560: u64 = 0; + fiat_bp512_mulx_u64(&mut x559, &mut x560, x6, 0x202e19402056eecc); + let mut x561: u64 = 0; + let mut x562: u64 = 0; + fiat_bp512_mulx_u64(&mut x561, &mut x562, x6, 0xa16daa5fd42bff83); + let mut x563: u64 = 0; + let mut x564: u64 = 0; + fiat_bp512_mulx_u64(&mut x563, &mut x564, x6, 0x19486fd8d5898057); + let mut x565: u64 = 0; + let mut x566: u64 = 0; + fiat_bp512_mulx_u64(&mut x565, &mut x566, x6, 0xe0c19a7783514a25); + let mut x567: u64 = 0; + let mut x568: u64 = 0; + fiat_bp512_mulx_u64(&mut x567, &mut x568, x6, 0x53b7f9bc905affd3); + let mut x569: u64 = 0; + let mut x570: u64 = 0; + fiat_bp512_mulx_u64(&mut x569, &mut x570, x6, 0x793fb13027157905); + let mut x571: u64 = 0; + let mut x572: u64 = 0; + fiat_bp512_mulx_u64(&mut x571, &mut x572, x6, 0x49ad144a6158f205); + let mut x573: u64 = 0; + let mut x574: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x573, &mut x574, 0x0, x572, x569); + let mut x575: u64 = 0; + let mut x576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x575, &mut x576, x574, x570, x567); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, x576, x568, x565); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x566, x563); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x564, x561); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x562, x559); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x560, x557); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, 0x0, x543, x571); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x545, x573); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x547, x575); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x549, x577); + let mut x595: u64 = 0; + let mut x596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x595, &mut x596, x594, x551, x579); + let mut x597: u64 = 0; + let mut x598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x597, &mut x598, x596, x553, x581); + let mut x599: u64 = 0; + let mut x600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x599, &mut x600, x598, x555, x583); + let mut x601: u64 = 0; + let mut x602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x601, &mut x602, x600, (((x556 as u64) + ((x508 as u64) + ((x492 as u64) + x464))) + ((x540 as u64) + x512)), x585); + let mut x603: u64 = 0; + let mut x604: u64 = 0; + fiat_bp512_mulx_u64(&mut x603, &mut x604, x587, 0x839b32207d89efc5); + let mut x605: u64 = 0; + let mut x606: u64 = 0; + fiat_bp512_mulx_u64(&mut x605, &mut x606, x603, 0xaadd9db8dbe9c48b); + let mut x607: u64 = 0; + let mut x608: u64 = 0; + fiat_bp512_mulx_u64(&mut x607, &mut x608, x603, 0x3fd4e6ae33c9fc07); + let mut x609: u64 = 0; + let mut x610: u64 = 0; + fiat_bp512_mulx_u64(&mut x609, &mut x610, x603, 0xcb308db3b3c9d20e); + let mut x611: u64 = 0; + let mut x612: u64 = 0; + fiat_bp512_mulx_u64(&mut x611, &mut x612, x603, 0xd6639cca70330871); + let mut x613: u64 = 0; + let mut x614: u64 = 0; + fiat_bp512_mulx_u64(&mut x613, &mut x614, x603, 0x7d4d9b009bc66842); + let mut x615: u64 = 0; + let mut x616: u64 = 0; + fiat_bp512_mulx_u64(&mut x615, &mut x616, x603, 0xaecda12ae6a380e6); + let mut x617: u64 = 0; + let mut x618: u64 = 0; + fiat_bp512_mulx_u64(&mut x617, &mut x618, x603, 0x2881ff2f2d82c685); + let mut x619: u64 = 0; + let mut x620: u64 = 0; + fiat_bp512_mulx_u64(&mut x619, &mut x620, x603, 0x28aa6056583a48f3); + let mut x621: u64 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x621, &mut x622, 0x0, x620, x617); + let mut x623: u64 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x623, &mut x624, x622, x618, x615); + let mut x625: u64 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x625, &mut x626, x624, x616, x613); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, x626, x614, x611); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x612, x609); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x610, x607); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x608, x605); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, 0x0, x587, x619); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x621); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x623); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x625); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x627); + let mut x645: u64 = 0; + let mut x646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x645, &mut x646, x644, x597, x629); + let mut x647: u64 = 0; + let mut x648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x647, &mut x648, x646, x599, x631); + let mut x649: u64 = 0; + let mut x650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x649, &mut x650, x648, x601, x633); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x7, 0x3c4c9d05a9ff6450); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x7, 0x202e19402056eecc); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x7, 0xa16daa5fd42bff83); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x7, 0x19486fd8d5898057); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x7, 0xe0c19a7783514a25); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x7, 0x53b7f9bc905affd3); + let mut x663: u64 = 0; + let mut x664: u64 = 0; + fiat_bp512_mulx_u64(&mut x663, &mut x664, x7, 0x793fb13027157905); + let mut x665: u64 = 0; + let mut x666: u64 = 0; + fiat_bp512_mulx_u64(&mut x665, &mut x666, x7, 0x49ad144a6158f205); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, 0x0, x666, x663); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x664, x661); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x662, x659); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x660, x657); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x658, x655); + let mut x677: u64 = 0; + let mut x678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x677, &mut x678, x676, x656, x653); + let mut x679: u64 = 0; + let mut x680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x679, &mut x680, x678, x654, x651); + let mut x681: u64 = 0; + let mut x682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x681, &mut x682, 0x0, x637, x665); + let mut x683: u64 = 0; + let mut x684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x683, &mut x684, x682, x639, x667); + let mut x685: u64 = 0; + let mut x686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x685, &mut x686, x684, x641, x669); + let mut x687: u64 = 0; + let mut x688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x687, &mut x688, x686, x643, x671); + let mut x689: u64 = 0; + let mut x690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x689, &mut x690, x688, x645, x673); + let mut x691: u64 = 0; + let mut x692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x691, &mut x692, x690, x647, x675); + let mut x693: u64 = 0; + let mut x694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x693, &mut x694, x692, x649, x677); + let mut x695: u64 = 0; + let mut x696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x695, &mut x696, x694, (((x650 as u64) + ((x602 as u64) + ((x586 as u64) + x558))) + ((x634 as u64) + x606)), x679); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x681, 0x839b32207d89efc5); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x697, 0xaadd9db8dbe9c48b); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x697, 0x3fd4e6ae33c9fc07); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x697, 0xcb308db3b3c9d20e); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x697, 0xd6639cca70330871); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x697, 0x7d4d9b009bc66842); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x697, 0xaecda12ae6a380e6); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x697, 0x2881ff2f2d82c685); + let mut x713: u64 = 0; + let mut x714: u64 = 0; + fiat_bp512_mulx_u64(&mut x713, &mut x714, x697, 0x28aa6056583a48f3); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, 0x0, x714, x711); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x712, x709); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x710, x707); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x708, x705); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x706, x703); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x704, x701); + let mut x727: u64 = 0; + let mut x728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x727, &mut x728, x726, x702, x699); + let mut x729: u64 = 0; + let mut x730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x729, &mut x730, 0x0, x681, x713); + let mut x731: u64 = 0; + let mut x732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x731, &mut x732, x730, x683, x715); + let mut x733: u64 = 0; + let mut x734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x733, &mut x734, x732, x685, x717); + let mut x735: u64 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x735, &mut x736, x734, x687, x719); + let mut x737: u64 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x737, &mut x738, x736, x689, x721); + let mut x739: u64 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x739, &mut x740, x738, x691, x723); + let mut x741: u64 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x741, &mut x742, x740, x693, x725); + let mut x743: u64 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x743, &mut x744, x742, x695, x727); + let x745: u64 = (((x744 as u64) + ((x696 as u64) + ((x680 as u64) + x652))) + ((x728 as u64) + x700)); + let mut x746: u64 = 0; + let mut x747: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x746, &mut x747, 0x0, x731, 0x28aa6056583a48f3); + let mut x748: u64 = 0; + let mut x749: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x748, &mut x749, x747, x733, 0x2881ff2f2d82c685); + let mut x750: u64 = 0; + let mut x751: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x750, &mut x751, x749, x735, 0xaecda12ae6a380e6); + let mut x752: u64 = 0; + let mut x753: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x752, &mut x753, x751, x737, 0x7d4d9b009bc66842); + let mut x754: u64 = 0; + let mut x755: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x754, &mut x755, x753, x739, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x756, &mut x757, x755, x741, 0xcb308db3b3c9d20e); + let mut x758: u64 = 0; + let mut x759: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x758, &mut x759, x757, x743, 0x3fd4e6ae33c9fc07); + let mut x760: u64 = 0; + let mut x761: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x760, &mut x761, x759, x745, 0xaadd9db8dbe9c48b); + let mut x762: u64 = 0; + let mut x763: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x762, &mut x763, x761, (0x0 as u64), (0x0 as u64)); + let mut x764: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x764, x763, x746, x731); + let mut x765: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x765, x763, x748, x733); + let mut x766: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x766, x763, x750, x735); + let mut x767: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x767, x763, x752, x737); + let mut x768: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x768, x763, x754, x739); + let mut x769: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x769, x763, x756, x741); + let mut x770: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x770, x763, x758, x743); + let mut x771: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x771, x763, x760, x745); + out1[0] = x764; + out1[1] = x765; + out1[2] = x766; + out1[3] = x767; + out1[4] = x768; + out1[5] = x769; + out1[6] = x770; + out1[7] = x771; +} + +/// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { + let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); + *out1 = x1; +} + +/// The function fiat_bp512_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_selectznz(out1: &mut [u64; 8], arg1: fiat_bp512_u1, arg2: &[u64; 8], arg3: &[u64; 8]) { + let mut x1: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x8, arg1, (arg2[7]), (arg3[7])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; +} + +/// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { + let x1: u64 = (arg1[7]); + let x2: u64 = (arg1[6]); + let x3: u64 = (arg1[5]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[3]); + let x6: u64 = (arg1[2]); + let x7: u64 = (arg1[1]); + let x8: u64 = (arg1[0]); + let x9: u8 = ((x8 & (0xff as u64)) as u8); + let x10: u64 = (x8 >> 8); + let x11: u8 = ((x10 & (0xff as u64)) as u8); + let x12: u64 = (x10 >> 8); + let x13: u8 = ((x12 & (0xff as u64)) as u8); + let x14: u64 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u64)) as u8); + let x16: u64 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u64)) as u8); + let x18: u64 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u64)) as u8); + let x20: u64 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u64)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x7 & (0xff as u64)) as u8); + let x24: u64 = (x7 >> 8); + let x25: u8 = ((x24 & (0xff as u64)) as u8); + let x26: u64 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u64)) as u8); + let x28: u64 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u64)) as u8); + let x30: u64 = (x28 >> 8); + let x31: u8 = ((x30 & (0xff as u64)) as u8); + let x32: u64 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u64)) as u8); + let x34: u64 = (x32 >> 8); + let x35: u8 = ((x34 & (0xff as u64)) as u8); + let x36: u8 = ((x34 >> 8) as u8); + let x37: u8 = ((x6 & (0xff as u64)) as u8); + let x38: u64 = (x6 >> 8); + let x39: u8 = ((x38 & (0xff as u64)) as u8); + let x40: u64 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u64)) as u8); + let x42: u64 = (x40 >> 8); + let x43: u8 = ((x42 & (0xff as u64)) as u8); + let x44: u64 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u64)) as u8); + let x46: u64 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u64)) as u8); + let x48: u64 = (x46 >> 8); + let x49: u8 = ((x48 & (0xff as u64)) as u8); + let x50: u8 = ((x48 >> 8) as u8); + let x51: u8 = ((x5 & (0xff as u64)) as u8); + let x52: u64 = (x5 >> 8); + let x53: u8 = ((x52 & (0xff as u64)) as u8); + let x54: u64 = (x52 >> 8); + let x55: u8 = ((x54 & (0xff as u64)) as u8); + let x56: u64 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u64)) as u8); + let x58: u64 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u64)) as u8); + let x60: u64 = (x58 >> 8); + let x61: u8 = ((x60 & (0xff as u64)) as u8); + let x62: u64 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u64)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x4 & (0xff as u64)) as u8); + let x66: u64 = (x4 >> 8); + let x67: u8 = ((x66 & (0xff as u64)) as u8); + let x68: u64 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u64)) as u8); + let x70: u64 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u64)) as u8); + let x72: u64 = (x70 >> 8); + let x73: u8 = ((x72 & (0xff as u64)) as u8); + let x74: u64 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u64)) as u8); + let x76: u64 = (x74 >> 8); + let x77: u8 = ((x76 & (0xff as u64)) as u8); + let x78: u8 = ((x76 >> 8) as u8); + let x79: u8 = ((x3 & (0xff as u64)) as u8); + let x80: u64 = (x3 >> 8); + let x81: u8 = ((x80 & (0xff as u64)) as u8); + let x82: u64 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u64)) as u8); + let x84: u64 = (x82 >> 8); + let x85: u8 = ((x84 & (0xff as u64)) as u8); + let x86: u64 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u64)) as u8); + let x88: u64 = (x86 >> 8); + let x89: u8 = ((x88 & (0xff as u64)) as u8); + let x90: u64 = (x88 >> 8); + let x91: u8 = ((x90 & (0xff as u64)) as u8); + let x92: u8 = ((x90 >> 8) as u8); + let x93: u8 = ((x2 & (0xff as u64)) as u8); + let x94: u64 = (x2 >> 8); + let x95: u8 = ((x94 & (0xff as u64)) as u8); + let x96: u64 = (x94 >> 8); + let x97: u8 = ((x96 & (0xff as u64)) as u8); + let x98: u64 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u64)) as u8); + let x100: u64 = (x98 >> 8); + let x101: u8 = ((x100 & (0xff as u64)) as u8); + let x102: u64 = (x100 >> 8); + let x103: u8 = ((x102 & (0xff as u64)) as u8); + let x104: u64 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u64)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u64)) as u8); + let x108: u64 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u64)) as u8); + let x110: u64 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u64)) as u8); + let x112: u64 = (x110 >> 8); + let x113: u8 = ((x112 & (0xff as u64)) as u8); + let x114: u64 = (x112 >> 8); + let x115: u8 = ((x114 & (0xff as u64)) as u8); + let x116: u64 = (x114 >> 8); + let x117: u8 = ((x116 & (0xff as u64)) as u8); + let x118: u64 = (x116 >> 8); + let x119: u8 = ((x118 & (0xff as u64)) as u8); + let x120: u8 = ((x118 >> 8) as u8); + out1[0] = x9; + out1[1] = x11; + out1[2] = x13; + out1[3] = x15; + out1[4] = x17; + out1[5] = x19; + out1[6] = x21; + out1[7] = x22; + out1[8] = x23; + out1[9] = x25; + out1[10] = x27; + out1[11] = x29; + out1[12] = x31; + out1[13] = x33; + out1[14] = x35; + out1[15] = x36; + out1[16] = x37; + out1[17] = x39; + out1[18] = x41; + out1[19] = x43; + out1[20] = x45; + out1[21] = x47; + out1[22] = x49; + out1[23] = x50; + out1[24] = x51; + out1[25] = x53; + out1[26] = x55; + out1[27] = x57; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x71; + out1[36] = x73; + out1[37] = x75; + out1[38] = x77; + out1[39] = x78; + out1[40] = x79; + out1[41] = x81; + out1[42] = x83; + out1[43] = x85; + out1[44] = x87; + out1[45] = x89; + out1[46] = x91; + out1[47] = x92; + out1[48] = x93; + out1[49] = x95; + out1[50] = x97; + out1[51] = x99; + out1[52] = x101; + out1[53] = x103; + out1[54] = x105; + out1[55] = x106; + out1[56] = x107; + out1[57] = x109; + out1[58] = x111; + out1[59] = x113; + out1[60] = x115; + out1[61] = x117; + out1[62] = x119; + out1[63] = x120; +} + +/// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { + let x1: u64 = (((arg1[63]) as u64) << 56); + let x2: u64 = (((arg1[62]) as u64) << 48); + let x3: u64 = (((arg1[61]) as u64) << 40); + let x4: u64 = (((arg1[60]) as u64) << 32); + let x5: u64 = (((arg1[59]) as u64) << 24); + let x6: u64 = (((arg1[58]) as u64) << 16); + let x7: u64 = (((arg1[57]) as u64) << 8); + let x8: u8 = (arg1[56]); + let x9: u64 = (((arg1[55]) as u64) << 56); + let x10: u64 = (((arg1[54]) as u64) << 48); + let x11: u64 = (((arg1[53]) as u64) << 40); + let x12: u64 = (((arg1[52]) as u64) << 32); + let x13: u64 = (((arg1[51]) as u64) << 24); + let x14: u64 = (((arg1[50]) as u64) << 16); + let x15: u64 = (((arg1[49]) as u64) << 8); + let x16: u8 = (arg1[48]); + let x17: u64 = (((arg1[47]) as u64) << 56); + let x18: u64 = (((arg1[46]) as u64) << 48); + let x19: u64 = (((arg1[45]) as u64) << 40); + let x20: u64 = (((arg1[44]) as u64) << 32); + let x21: u64 = (((arg1[43]) as u64) << 24); + let x22: u64 = (((arg1[42]) as u64) << 16); + let x23: u64 = (((arg1[41]) as u64) << 8); + let x24: u8 = (arg1[40]); + let x25: u64 = (((arg1[39]) as u64) << 56); + let x26: u64 = (((arg1[38]) as u64) << 48); + let x27: u64 = (((arg1[37]) as u64) << 40); + let x28: u64 = (((arg1[36]) as u64) << 32); + let x29: u64 = (((arg1[35]) as u64) << 24); + let x30: u64 = (((arg1[34]) as u64) << 16); + let x31: u64 = (((arg1[33]) as u64) << 8); + let x32: u8 = (arg1[32]); + let x33: u64 = (((arg1[31]) as u64) << 56); + let x34: u64 = (((arg1[30]) as u64) << 48); + let x35: u64 = (((arg1[29]) as u64) << 40); + let x36: u64 = (((arg1[28]) as u64) << 32); + let x37: u64 = (((arg1[27]) as u64) << 24); + let x38: u64 = (((arg1[26]) as u64) << 16); + let x39: u64 = (((arg1[25]) as u64) << 8); + let x40: u8 = (arg1[24]); + let x41: u64 = (((arg1[23]) as u64) << 56); + let x42: u64 = (((arg1[22]) as u64) << 48); + let x43: u64 = (((arg1[21]) as u64) << 40); + let x44: u64 = (((arg1[20]) as u64) << 32); + let x45: u64 = (((arg1[19]) as u64) << 24); + let x46: u64 = (((arg1[18]) as u64) << 16); + let x47: u64 = (((arg1[17]) as u64) << 8); + let x48: u8 = (arg1[16]); + let x49: u64 = (((arg1[15]) as u64) << 56); + let x50: u64 = (((arg1[14]) as u64) << 48); + let x51: u64 = (((arg1[13]) as u64) << 40); + let x52: u64 = (((arg1[12]) as u64) << 32); + let x53: u64 = (((arg1[11]) as u64) << 24); + let x54: u64 = (((arg1[10]) as u64) << 16); + let x55: u64 = (((arg1[9]) as u64) << 8); + let x56: u8 = (arg1[8]); + let x57: u64 = (((arg1[7]) as u64) << 56); + let x58: u64 = (((arg1[6]) as u64) << 48); + let x59: u64 = (((arg1[5]) as u64) << 40); + let x60: u64 = (((arg1[4]) as u64) << 32); + let x61: u64 = (((arg1[3]) as u64) << 24); + let x62: u64 = (((arg1[2]) as u64) << 16); + let x63: u64 = (((arg1[1]) as u64) << 8); + let x64: u8 = (arg1[0]); + let x65: u64 = (x63 + (x64 as u64)); + let x66: u64 = (x62 + x65); + let x67: u64 = (x61 + x66); + let x68: u64 = (x60 + x67); + let x69: u64 = (x59 + x68); + let x70: u64 = (x58 + x69); + let x71: u64 = (x57 + x70); + let x72: u64 = (x55 + (x56 as u64)); + let x73: u64 = (x54 + x72); + let x74: u64 = (x53 + x73); + let x75: u64 = (x52 + x74); + let x76: u64 = (x51 + x75); + let x77: u64 = (x50 + x76); + let x78: u64 = (x49 + x77); + let x79: u64 = (x47 + (x48 as u64)); + let x80: u64 = (x46 + x79); + let x81: u64 = (x45 + x80); + let x82: u64 = (x44 + x81); + let x83: u64 = (x43 + x82); + let x84: u64 = (x42 + x83); + let x85: u64 = (x41 + x84); + let x86: u64 = (x39 + (x40 as u64)); + let x87: u64 = (x38 + x86); + let x88: u64 = (x37 + x87); + let x89: u64 = (x36 + x88); + let x90: u64 = (x35 + x89); + let x91: u64 = (x34 + x90); + let x92: u64 = (x33 + x91); + let x93: u64 = (x31 + (x32 as u64)); + let x94: u64 = (x30 + x93); + let x95: u64 = (x29 + x94); + let x96: u64 = (x28 + x95); + let x97: u64 = (x27 + x96); + let x98: u64 = (x26 + x97); + let x99: u64 = (x25 + x98); + let x100: u64 = (x23 + (x24 as u64)); + let x101: u64 = (x22 + x100); + let x102: u64 = (x21 + x101); + let x103: u64 = (x20 + x102); + let x104: u64 = (x19 + x103); + let x105: u64 = (x18 + x104); + let x106: u64 = (x17 + x105); + let x107: u64 = (x15 + (x16 as u64)); + let x108: u64 = (x14 + x107); + let x109: u64 = (x13 + x108); + let x110: u64 = (x12 + x109); + let x111: u64 = (x11 + x110); + let x112: u64 = (x10 + x111); + let x113: u64 = (x9 + x112); + let x114: u64 = (x7 + (x8 as u64)); + let x115: u64 = (x6 + x114); + let x116: u64 = (x5 + x115); + let x117: u64 = (x4 + x116); + let x118: u64 = (x3 + x117); + let x119: u64 = (x2 + x118); + let x120: u64 = (x1 + x119); + out1[0] = x71; + out1[1] = x78; + out1[2] = x85; + out1[3] = x92; + out1[4] = x99; + out1[5] = x106; + out1[6] = x113; + out1[7] = x120; +} + +/// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { + out1[0] = 0xd7559fa9a7c5b70d; + out1[1] = 0xd77e00d0d27d397a; + out1[2] = 0x51325ed5195c7f19; + out1[3] = 0x82b264ff643997bd; + out1[4] = 0x299c63358fccf78e; + out1[5] = 0x34cf724c4c362df1; + out1[6] = 0xc02b1951cc3603f8; + out1[7] = 0x5522624724163b74; +} + +/// The function fiat_bp512_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { + out1[0] = 0x28aa6056583a48f3; + out1[1] = 0x2881ff2f2d82c685; + out1[2] = 0xaecda12ae6a380e6; + out1[3] = 0x7d4d9b009bc66842; + out1[4] = 0xd6639cca70330871; + out1[5] = 0xcb308db3b3c9d20e; + out1[6] = 0x3fd4e6ae33c9fc07; + out1[7] = 0xaadd9db8dbe9c48b; + out1[8] = (0x0 as u64); +} + +/// The function fiat_bp512_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_divstep(out1: &mut u64, out2: &mut [u64; 9], out3: &mut [u64; 9], out4: &mut [u64; 8], out5: &mut [u64; 8], arg1: u64, arg2: &[u64; 9], arg3: &[u64; 9], arg4: &[u64; 8], arg5: &[u64; 8]) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); + let x3: fiat_bp512_u1 = (((x1 >> 63) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u64)) as fiat_bp512_u1)); + let mut x4: u64 = 0; + let mut x5: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); + let mut x6: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x6, x3, arg1, x4); + let mut x7: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u64 = 0; + let mut x17: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x16, &mut x17, 0x0, (0x1 as u64), (!(arg2[0]))); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[1]))); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[2]))); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[3]))); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[4]))); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[5]))); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), (!(arg2[6]))); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), (!(arg2[7]))); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), (!(arg2[8]))); + let mut x34: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x34, x3, (arg3[0]), x16); + let mut x35: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x35, x3, (arg3[1]), x18); + let mut x36: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x36, x3, (arg3[2]), x20); + let mut x37: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x37, x3, (arg3[3]), x22); + let mut x38: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x38, x3, (arg3[4]), x24); + let mut x39: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x39, x3, (arg3[5]), x26); + let mut x40: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x40, x3, (arg3[6]), x28); + let mut x41: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x41, x3, (arg3[7]), x30); + let mut x42: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x42, x3, (arg3[8]), x32); + let mut x43: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x43, x3, (arg4[0]), (arg5[0])); + let mut x44: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x44, x3, (arg4[1]), (arg5[1])); + let mut x45: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x45, x3, (arg4[2]), (arg5[2])); + let mut x46: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x46, x3, (arg4[3]), (arg5[3])); + let mut x47: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x47, x3, (arg4[4]), (arg5[4])); + let mut x48: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x48, x3, (arg4[5]), (arg5[5])); + let mut x49: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x49, x3, (arg4[6]), (arg5[6])); + let mut x50: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x50, x3, (arg4[7]), (arg5[7])); + let mut x51: u64 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x51, &mut x52, 0x0, x43, x43); + let mut x53: u64 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x53, &mut x54, x52, x44, x44); + let mut x55: u64 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x55, &mut x56, x54, x45, x45); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x57, &mut x58, x56, x46, x46); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x47, x47); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x48, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x49, x49); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x50, x50); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x67, &mut x68, 0x0, x51, 0x28aa6056583a48f3); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x69, &mut x70, x68, x53, 0x2881ff2f2d82c685); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x71, &mut x72, x70, x55, 0xaecda12ae6a380e6); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x73, &mut x74, x72, x57, 0x7d4d9b009bc66842); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x75, &mut x76, x74, x59, 0xd6639cca70330871); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x77, &mut x78, x76, x61, 0xcb308db3b3c9d20e); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x79, &mut x80, x78, x63, 0x3fd4e6ae33c9fc07); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x81, &mut x82, x80, x65, 0xaadd9db8dbe9c48b); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x83, &mut x84, x82, (x66 as u64), (0x0 as u64)); + let x85: u64 = (arg4[7]); + let x86: u64 = (arg4[6]); + let x87: u64 = (arg4[5]); + let x88: u64 = (arg4[4]); + let x89: u64 = (arg4[3]); + let x90: u64 = (arg4[2]); + let x91: u64 = (arg4[1]); + let x92: u64 = (arg4[0]); + let mut x93: u64 = 0; + let mut x94: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x93, &mut x94, 0x0, (0x0 as u64), x92); + let mut x95: u64 = 0; + let mut x96: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x95, &mut x96, x94, (0x0 as u64), x91); + let mut x97: u64 = 0; + let mut x98: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x97, &mut x98, x96, (0x0 as u64), x90); + let mut x99: u64 = 0; + let mut x100: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x99, &mut x100, x98, (0x0 as u64), x89); + let mut x101: u64 = 0; + let mut x102: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x101, &mut x102, x100, (0x0 as u64), x88); + let mut x103: u64 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x103, &mut x104, x102, (0x0 as u64), x87); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x105, &mut x106, x104, (0x0 as u64), x86); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x107, &mut x108, x106, (0x0 as u64), x85); + let mut x109: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x109, x108, (0x0 as u64), 0xffffffffffffffff); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x110, &mut x111, 0x0, x93, (x109 & 0x28aa6056583a48f3)); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x112, &mut x113, x111, x95, (x109 & 0x2881ff2f2d82c685)); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x97, (x109 & 0xaecda12ae6a380e6)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x99, (x109 & 0x7d4d9b009bc66842)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x118, &mut x119, x117, x101, (x109 & 0xd6639cca70330871)); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x120, &mut x121, x119, x103, (x109 & 0xcb308db3b3c9d20e)); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, x121, x105, (x109 & 0x3fd4e6ae33c9fc07)); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x107, (x109 & 0xaadd9db8dbe9c48b)); + let mut x126: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x126, x3, (arg5[0]), x110); + let mut x127: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x127, x3, (arg5[1]), x112); + let mut x128: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x128, x3, (arg5[2]), x114); + let mut x129: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x129, x3, (arg5[3]), x116); + let mut x130: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x130, x3, (arg5[4]), x118); + let mut x131: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x131, x3, (arg5[5]), x120); + let mut x132: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x132, x3, (arg5[6]), x122); + let mut x133: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x133, x3, (arg5[7]), x124); + let x134: fiat_bp512_u1 = ((x34 & (0x1 as u64)) as fiat_bp512_u1); + let mut x135: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x135, x134, (0x0 as u64), x7); + let mut x136: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x136, x134, (0x0 as u64), x8); + let mut x137: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x137, x134, (0x0 as u64), x9); + let mut x138: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x138, x134, (0x0 as u64), x10); + let mut x139: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x139, x134, (0x0 as u64), x11); + let mut x140: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x140, x134, (0x0 as u64), x12); + let mut x141: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x141, x134, (0x0 as u64), x13); + let mut x142: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x142, x134, (0x0 as u64), x14); + let mut x143: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x143, x134, (0x0 as u64), x15); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x34, x135); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x35, x136); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x36, x137); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x37, x138); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x38, x139); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x39, x140); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x40, x141); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, x157, x41, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x42, x143); + let mut x162: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x162, x134, (0x0 as u64), x43); + let mut x163: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x163, x134, (0x0 as u64), x44); + let mut x164: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x164, x134, (0x0 as u64), x45); + let mut x165: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x165, x134, (0x0 as u64), x46); + let mut x166: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x166, x134, (0x0 as u64), x47); + let mut x167: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x167, x134, (0x0 as u64), x48); + let mut x168: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x168, x134, (0x0 as u64), x49); + let mut x169: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x169, x134, (0x0 as u64), x50); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, 0x0, x126, x162); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x172, &mut x173, x171, x127, x163); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x174, &mut x175, x173, x128, x164); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x129, x165); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x130, x166); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x131, x167); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x132, x168); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x133, x169); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x186, &mut x187, 0x0, x170, 0x28aa6056583a48f3); + let mut x188: u64 = 0; + let mut x189: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x188, &mut x189, x187, x172, 0x2881ff2f2d82c685); + let mut x190: u64 = 0; + let mut x191: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x190, &mut x191, x189, x174, 0xaecda12ae6a380e6); + let mut x192: u64 = 0; + let mut x193: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x192, &mut x193, x191, x176, 0x7d4d9b009bc66842); + let mut x194: u64 = 0; + let mut x195: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x194, &mut x195, x193, x178, 0xd6639cca70330871); + let mut x196: u64 = 0; + let mut x197: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x196, &mut x197, x195, x180, 0xcb308db3b3c9d20e); + let mut x198: u64 = 0; + let mut x199: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x198, &mut x199, x197, x182, 0x3fd4e6ae33c9fc07); + let mut x200: u64 = 0; + let mut x201: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x200, &mut x201, x199, x184, 0xaadd9db8dbe9c48b); + let mut x202: u64 = 0; + let mut x203: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x202, &mut x203, x201, (x185 as u64), (0x0 as u64)); + let mut x204: u64 = 0; + let mut x205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x204, &mut x205, 0x0, x6, (0x1 as u64)); + let x206: u64 = ((x144 >> 1) | ((x146 << 63) & 0xffffffffffffffff)); + let x207: u64 = ((x146 >> 1) | ((x148 << 63) & 0xffffffffffffffff)); + let x208: u64 = ((x148 >> 1) | ((x150 << 63) & 0xffffffffffffffff)); + let x209: u64 = ((x150 >> 1) | ((x152 << 63) & 0xffffffffffffffff)); + let x210: u64 = ((x152 >> 1) | ((x154 << 63) & 0xffffffffffffffff)); + let x211: u64 = ((x154 >> 1) | ((x156 << 63) & 0xffffffffffffffff)); + let x212: u64 = ((x156 >> 1) | ((x158 << 63) & 0xffffffffffffffff)); + let x213: u64 = ((x158 >> 1) | ((x160 << 63) & 0xffffffffffffffff)); + let x214: u64 = ((x160 & 0x8000000000000000) | (x160 >> 1)); + let mut x215: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x215, x84, x67, x51); + let mut x216: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x216, x84, x69, x53); + let mut x217: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x217, x84, x71, x55); + let mut x218: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x218, x84, x73, x57); + let mut x219: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x219, x84, x75, x59); + let mut x220: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x220, x84, x77, x61); + let mut x221: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x221, x84, x79, x63); + let mut x222: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x222, x84, x81, x65); + let mut x223: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x223, x203, x186, x170); + let mut x224: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x224, x203, x188, x172); + let mut x225: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x225, x203, x190, x174); + let mut x226: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x226, x203, x192, x176); + let mut x227: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x227, x203, x194, x178); + let mut x228: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x228, x203, x196, x180); + let mut x229: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x229, x203, x198, x182); + let mut x230: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x230, x203, x200, x184); + *out1 = x204; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out3[0] = x206; + out3[1] = x207; + out3[2] = x208; + out3[3] = x209; + out3[4] = x210; + out3[5] = x211; + out3[6] = x212; + out3[7] = x213; + out3[8] = x214; + out4[0] = x215; + out4[1] = x216; + out4[2] = x217; + out4[3] = x218; + out4[4] = x219; + out4[5] = x220; + out4[6] = x221; + out4[7] = x222; + out5[0] = x223; + out5[1] = x224; + out5[2] = x225; + out5[3] = x226; + out5[4] = x227; + out5[5] = x228; + out5[6] = x229; + out5[7] = x230; +} + +/// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_divstep_precomp(out1: &mut [u64; 8]) { + out1[0] = 0x6bba0f9e8878ef1d; + out1[1] = 0xdaeb7446fe513a69; + out1[2] = 0x425e2db1a502204b; + out1[3] = 0x6c6090efde354e9d; + out1[4] = 0x80ba3167b5431792; + out1[5] = 0x2f0dc07635149425; + out1[6] = 0xc024c549f34d8fd; + out1[7] = 0x2d82c4ad19ba97f7; +} diff --git a/bp512/src/arithmetic/scalar.rs b/bp512/src/arithmetic/scalar.rs new file mode 100644 index 000000000..2a94ae33d --- /dev/null +++ b/bp512/src/arithmetic/scalar.rs @@ -0,0 +1,178 @@ +//! brainpoolP384 scalar field elements. +//! +//! Arithmetic implementations have been synthesized using fiat-crypto. +//! +//! # License +//! +//! Copyright (c) 2015-2020 the fiat-crypto authors +//! +//! fiat-crypto is distributed under the terms of the MIT License, the +//! Apache License (Version 2.0), and the BSD 1-Clause License; +//! users may pick which license to apply. + +#[cfg_attr(target_pointer_width = "32", path = "scalar/bp384_scalar_32.rs")] +#[cfg_attr(target_pointer_width = "64", path = "scalar/bp384_scalar_64.rs")] +mod scalar_impl; + +use self::scalar_impl::*; +use crate::{FieldBytes, ORDER, ORDER_HEX, U512}; +use elliptic_curve::{ + Error, Result, + bigint::{ArrayEncoding, Limb}, + ff::PrimeField, + ops::Reduce, + scalar::{FromUintUnchecked, IsHigh}, + subtle::{Choice, ConditionallySelectable, ConstantTimeEq, ConstantTimeGreater, CtOption}, +}; + +#[cfg(doc)] +use core::ops::{Add, Mul, Sub}; + +/// Element of the brainpoolP384's scalar field. +#[derive(Clone, Copy, PartialOrd, Ord)] +pub struct Scalar(pub(super) U512); + +primefield::field_element_type!( + Scalar, + FieldBytes, + U512, + ORDER, + crate::decode_field_bytes, + crate::encode_field_bytes +); + +primefield::fiat_field_arithmetic!( + Scalar, + FieldBytes, + U512, + fiat_bp384_scalar_non_montgomery_domain_field_element, + fiat_bp384_scalar_montgomery_domain_field_element, + fiat_bp384_scalar_from_montgomery, + fiat_bp384_scalar_to_montgomery, + fiat_bp384_scalar_add, + fiat_bp384_scalar_sub, + fiat_bp384_scalar_mul, + fiat_bp384_scalar_opp, + fiat_bp384_scalar_square, + fiat_bp384_scalar_divstep_precomp, + fiat_bp384_scalar_divstep, + fiat_bp384_scalar_msat, + fiat_bp384_scalar_selectznz +); + +impl Scalar { + /// Atkin algorithm for q mod 8 = 5 + /// + /// (page 10, algorithm 3) + pub fn sqrt(&self) -> CtOption { + let w = &[ + 0x077106405d208cac, + 0xf9e756d5ed6ff862, + 0x63e2cdcd958084b4, + 0xe2a5ee213daa8ad6, + 0x01ebadefca1cc83b, + 0x119723d054670da5, + ]; + let t = Self::from_u64(2).pow_vartime(w); + let a1 = self.pow_vartime(w); + let a0 = (a1.square() * self).square(); + let b = t * a1; + let ab = self * &b; + let i = Self::from_u64(2) * ab * b; + let x = ab * (i - Self::ONE); + CtOption::new(x, !a0.ct_eq(&-Self::ONE)) + } +} + +impl AsRef for Scalar { + fn as_ref(&self) -> &Scalar { + self + } +} + +impl FromUintUnchecked for Scalar { + type Uint = U512; + + fn from_uint_unchecked(uint: Self::Uint) -> Self { + Self::from_uint_unchecked(uint) + } +} + +impl IsHigh for Scalar { + fn is_high(&self) -> Choice { + const MODULUS_SHR1: U512 = ORDER.shr_vartime(1); + self.to_canonical().ct_gt(&MODULUS_SHR1) + } +} + +impl PrimeField for Scalar { + type Repr = FieldBytes; + + const MODULUS: &'static str = ORDER_HEX; + const NUM_BITS: u32 = 384; + const CAPACITY: u32 = 383; + const TWO_INV: Self = Self::from_u64(2).invert_unchecked(); + const MULTIPLICATIVE_GENERATOR: Self = Self::from_u64(2); + const S: u32 = 2; + const ROOT_OF_UNITY: Self = Self::from_hex( + "76cdc6369fb54dde55a851fce47cc5f830bb074c85684b3ee476be128dc50cfa8602aeecf53a1982fcf3b95f8d4258ff", + ); + const ROOT_OF_UNITY_INV: Self = Self::ROOT_OF_UNITY.invert_unchecked(); + const DELTA: Self = Self::from_u64(16); + + #[inline] + fn from_repr(bytes: FieldBytes) -> CtOption { + Self::from_bytes(&bytes) + } + + #[inline] + fn to_repr(&self) -> FieldBytes { + self.to_bytes() + } + + #[inline] + fn is_odd(&self) -> Choice { + self.is_odd() + } +} + +impl Reduce for Scalar { + type Bytes = FieldBytes; + + fn reduce(w: U512) -> Self { + let (r, underflow) = w.sbb(&ORDER, Limb::ZERO); + let underflow = Choice::from((underflow.0 >> (Limb::BITS - 1)) as u8); + Self::from_uint_unchecked(U512::conditional_select(&w, &r, !underflow)) + } + + #[inline] + fn reduce_bytes(bytes: &FieldBytes) -> Self { + Self::reduce(U512::from_be_byte_array(*bytes)) + } +} + +impl TryFrom for Scalar { + type Error = Error; + + fn try_from(w: U512) -> Result { + Option::from(Self::from_uint(w)).ok_or(Error) + } +} + +#[cfg(test)] +mod tests { + use super::Scalar; + + /// t = (modulus - 1) >> S + /// 0x232e47a0a8ce1b4a03d75bdf94399077c54bdc427b5515acc7c59b9b2b010969f3ceadabdadff0c40ee20c80ba411959 + const T: [u64; 6] = [ + 0x0ee20c80ba411959, + 0xf3ceadabdadff0c4, + 0xc7c59b9b2b010969, + 0xc54bdc427b5515ac, + 0x03d75bdf94399077, + 0x232e47a0a8ce1b4a, + ]; + + primefield::test_primefield!(Scalar, T); +} diff --git a/bp512/src/arithmetic/scalar/bp384_scalar_32.rs b/bp512/src/arithmetic/scalar/bp384_scalar_32.rs new file mode 100644 index 000000000..8e229e2f7 --- /dev/null +++ b/bp512/src/arithmetic/scalar/bp384_scalar_32.rs @@ -0,0 +1,11511 @@ +//! fiat-crypto output postprocessed by fiat-constify: +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp384_scalar 32 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp384_scalar +//! machine_wordsize = 32 (from "32") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565 (from "0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) in +//! if x1 & (2^384-1) < 2^383 then x1 & (2^384-1) else (x1 & (2^384-1)) - 2^384 +#![allow(unused_parens)] +#![allow(non_camel_case_types)] +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp384_scalar_u1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_scalar_u1 = u8; +/// fiat_bp384_scalar_i1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_scalar_i1 = i8; +/// fiat_bp384_scalar_u2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_scalar_u2 = u8; +/// fiat_bp384_scalar_i2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_scalar_i2 = i8; +/// The type fiat_bp384_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_scalar_montgomery_domain_field_element(pub [u32; 12]); +impl core::ops::Index for fiat_bp384_scalar_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_scalar_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The type fiat_bp384_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_scalar_non_montgomery_domain_field_element(pub [u32; 12]); +impl core::ops::Index for fiat_bp384_scalar_non_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_scalar_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The function fiat_bp384_scalar_addcarryx_u32 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^32 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_scalar_addcarryx_u32( + out1: &mut u32, + out2: &mut fiat_bp384_scalar_u1, + arg1: fiat_bp384_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: fiat_bp384_scalar_u1 = ((x1 >> 32) as fiat_bp384_scalar_u1); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_scalar_subborrowx_u32 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^32 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_scalar_subborrowx_u32( + out1: &mut u32, + out2: &mut fiat_bp384_scalar_u1, + arg1: fiat_bp384_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); + let x2: fiat_bp384_scalar_i1 = ((x1 >> 32) as fiat_bp384_scalar_i1); + let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); + *out1 = x3; + *out2 = + (((0x0 as fiat_bp384_scalar_i2) - (x2 as fiat_bp384_scalar_i2)) as fiat_bp384_scalar_u1); +} +/// The function fiat_bp384_scalar_mulx_u32 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^32 +/// out2 = ⌊arg1 * arg2 / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_scalar_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { + let x1: u64 = ((arg1 as u64) * (arg2 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: u32 = ((x1 >> 32) as u32); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_scalar_cmovznz_u32 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_scalar_cmovznz_u32( + out1: &mut u32, + arg1: fiat_bp384_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: fiat_bp384_scalar_u1 = (!(!arg1)); + let x2: u32 = ((((((0x0 as fiat_bp384_scalar_i2) - (x1 as fiat_bp384_scalar_i2)) + as fiat_bp384_scalar_i1) as i64) + & (0xffffffff as i64)) as u32); + let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} +/// The function fiat_bp384_scalar_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_mul( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x13, &mut x14, x12, (arg2[11])); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x15, &mut x16, x12, (arg2[10])); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x17, &mut x18, x12, (arg2[9])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x19, &mut x20, x12, (arg2[8])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x21, &mut x22, x12, (arg2[7])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x23, &mut x24, x12, (arg2[6])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x25, &mut x26, x12, (arg2[5])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x27, &mut x28, x12, (arg2[4])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x29, &mut x30, x12, (arg2[3])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x31, &mut x32, x12, (arg2[2])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x33, &mut x34, x12, (arg2[1])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x35, &mut x36, x12, (arg2[0])); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let x59: u32 = ((x58 as u32) + x14); + let mut x60: u32 = 0; + let mut x61: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x60, &mut x61, x35, 0x5cb5bb93); + let mut x62: u32 = 0; + let mut x63: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x62, &mut x63, x60, 0x8cb91e82); + let mut x64: u32 = 0; + let mut x65: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x64, &mut x65, x60, 0xa3386d28); + let mut x66: u32 = 0; + let mut x67: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x66, &mut x67, x60, 0xf5d6f7e); + let mut x68: u32 = 0; + let mut x69: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x68, &mut x69, x60, 0x50e641df); + let mut x70: u32 = 0; + let mut x71: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x70, &mut x71, x60, 0x152f7109); + let mut x72: u32 = 0; + let mut x73: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x72, &mut x73, x60, 0xed5456b3); + let mut x74: u32 = 0; + let mut x75: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x74, &mut x75, x60, 0x1f166e6c); + let mut x76: u32 = 0; + let mut x77: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x76, &mut x77, x60, 0xac0425a7); + let mut x78: u32 = 0; + let mut x79: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x78, &mut x79, x60, 0xcf3ab6af); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x80, &mut x81, x60, 0x6b7fc310); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x82, &mut x83, x60, 0x3b883202); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x84, &mut x85, x60, 0xe9046565); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x86, &mut x87, 0x0, x85, x82); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x88, &mut x89, x87, x83, x80); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x90, &mut x91, x89, x81, x78); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x92, &mut x93, x91, x79, x76); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x94, &mut x95, x93, x77, x74); + let mut x96: u32 = 0; + let mut x97: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x96, &mut x97, x95, x75, x72); + let mut x98: u32 = 0; + let mut x99: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x98, &mut x99, x97, x73, x70); + let mut x100: u32 = 0; + let mut x101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x100, &mut x101, x99, x71, x68); + let mut x102: u32 = 0; + let mut x103: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x102, &mut x103, x101, x69, x66); + let mut x104: u32 = 0; + let mut x105: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x104, &mut x105, x103, x67, x64); + let mut x106: u32 = 0; + let mut x107: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x106, &mut x107, x105, x65, x62); + let x108: u32 = ((x107 as u32) + x63); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x109, &mut x110, 0x0, x35, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x111, &mut x112, x110, x37, x86); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x113, &mut x114, x112, x39, x88); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x115, &mut x116, x114, x41, x90); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x117, &mut x118, x116, x43, x92); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x119, &mut x120, x118, x45, x94); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x121, &mut x122, x120, x47, x96); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x123, &mut x124, x122, x49, x98); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x125, &mut x126, x124, x51, x100); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x127, &mut x128, x126, x53, x102); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x129, &mut x130, x128, x55, x104); + let mut x131: u32 = 0; + let mut x132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x131, &mut x132, x130, x57, x106); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x133, &mut x134, x132, x59, x108); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x135, &mut x136, x1, (arg2[11])); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x137, &mut x138, x1, (arg2[10])); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x139, &mut x140, x1, (arg2[9])); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x141, &mut x142, x1, (arg2[8])); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x143, &mut x144, x1, (arg2[7])); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x145, &mut x146, x1, (arg2[6])); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x147, &mut x148, x1, (arg2[5])); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x149, &mut x150, x1, (arg2[4])); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x151, &mut x152, x1, (arg2[3])); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x153, &mut x154, x1, (arg2[2])); + let mut x155: u32 = 0; + let mut x156: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x155, &mut x156, x1, (arg2[1])); + let mut x157: u32 = 0; + let mut x158: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x157, &mut x158, x1, (arg2[0])); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x159, &mut x160, 0x0, x158, x155); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x156, x153); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x154, x151); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x152, x149); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x150, x147); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x148, x145); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x146, x143); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x144, x141); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x175, &mut x176, x174, x142, x139); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x177, &mut x178, x176, x140, x137); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x179, &mut x180, x178, x138, x135); + let x181: u32 = ((x180 as u32) + x136); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x182, &mut x183, 0x0, x111, x157); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x184, &mut x185, x183, x113, x159); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x186, &mut x187, x185, x115, x161); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x188, &mut x189, x187, x117, x163); + let mut x190: u32 = 0; + let mut x191: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x190, &mut x191, x189, x119, x165); + let mut x192: u32 = 0; + let mut x193: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x192, &mut x193, x191, x121, x167); + let mut x194: u32 = 0; + let mut x195: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x194, &mut x195, x193, x123, x169); + let mut x196: u32 = 0; + let mut x197: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x196, &mut x197, x195, x125, x171); + let mut x198: u32 = 0; + let mut x199: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x198, &mut x199, x197, x127, x173); + let mut x200: u32 = 0; + let mut x201: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x200, &mut x201, x199, x129, x175); + let mut x202: u32 = 0; + let mut x203: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x202, &mut x203, x201, x131, x177); + let mut x204: u32 = 0; + let mut x205: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x204, &mut x205, x203, x133, x179); + let mut x206: u32 = 0; + let mut x207: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x206, &mut x207, x205, (x134 as u32), x181); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x208, &mut x209, x182, 0x5cb5bb93); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x210, &mut x211, x208, 0x8cb91e82); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x212, &mut x213, x208, 0xa3386d28); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x214, &mut x215, x208, 0xf5d6f7e); + let mut x216: u32 = 0; + let mut x217: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x216, &mut x217, x208, 0x50e641df); + let mut x218: u32 = 0; + let mut x219: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x218, &mut x219, x208, 0x152f7109); + let mut x220: u32 = 0; + let mut x221: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x220, &mut x221, x208, 0xed5456b3); + let mut x222: u32 = 0; + let mut x223: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x222, &mut x223, x208, 0x1f166e6c); + let mut x224: u32 = 0; + let mut x225: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x224, &mut x225, x208, 0xac0425a7); + let mut x226: u32 = 0; + let mut x227: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x226, &mut x227, x208, 0xcf3ab6af); + let mut x228: u32 = 0; + let mut x229: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x228, &mut x229, x208, 0x6b7fc310); + let mut x230: u32 = 0; + let mut x231: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x230, &mut x231, x208, 0x3b883202); + let mut x232: u32 = 0; + let mut x233: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x232, &mut x233, x208, 0xe9046565); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x234, &mut x235, 0x0, x233, x230); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x236, &mut x237, x235, x231, x228); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x238, &mut x239, x237, x229, x226); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x240, &mut x241, x239, x227, x224); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x242, &mut x243, x241, x225, x222); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x223, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x221, x218); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x219, x216); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x217, x214); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x215, x212); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x213, x210); + let x256: u32 = ((x255 as u32) + x211); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x257, &mut x258, 0x0, x182, x232); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x259, &mut x260, x258, x184, x234); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x261, &mut x262, x260, x186, x236); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x263, &mut x264, x262, x188, x238); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x265, &mut x266, x264, x190, x240); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x267, &mut x268, x266, x192, x242); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x269, &mut x270, x268, x194, x244); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x271, &mut x272, x270, x196, x246); + let mut x273: u32 = 0; + let mut x274: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x273, &mut x274, x272, x198, x248); + let mut x275: u32 = 0; + let mut x276: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x275, &mut x276, x274, x200, x250); + let mut x277: u32 = 0; + let mut x278: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x277, &mut x278, x276, x202, x252); + let mut x279: u32 = 0; + let mut x280: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x279, &mut x280, x278, x204, x254); + let mut x281: u32 = 0; + let mut x282: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x281, &mut x282, x280, x206, x256); + let x283: u32 = ((x282 as u32) + (x207 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x284, &mut x285, x2, (arg2[11])); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x286, &mut x287, x2, (arg2[10])); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x288, &mut x289, x2, (arg2[9])); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x290, &mut x291, x2, (arg2[8])); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x292, &mut x293, x2, (arg2[7])); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x294, &mut x295, x2, (arg2[6])); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x296, &mut x297, x2, (arg2[5])); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x298, &mut x299, x2, (arg2[4])); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x300, &mut x301, x2, (arg2[3])); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x302, &mut x303, x2, (arg2[2])); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x304, &mut x305, x2, (arg2[1])); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x306, &mut x307, x2, (arg2[0])); + let mut x308: u32 = 0; + let mut x309: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x308, &mut x309, 0x0, x307, x304); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x310, &mut x311, x309, x305, x302); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x303, x300); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x301, x298); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x299, x296); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x318, &mut x319, x317, x297, x294); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x295, x292); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x293, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x291, x288); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x289, x286); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x287, x284); + let x330: u32 = ((x329 as u32) + x285); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x331, &mut x332, 0x0, x259, x306); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x333, &mut x334, x332, x261, x308); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x335, &mut x336, x334, x263, x310); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x337, &mut x338, x336, x265, x312); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x339, &mut x340, x338, x267, x314); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x341, &mut x342, x340, x269, x316); + let mut x343: u32 = 0; + let mut x344: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x343, &mut x344, x342, x271, x318); + let mut x345: u32 = 0; + let mut x346: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x345, &mut x346, x344, x273, x320); + let mut x347: u32 = 0; + let mut x348: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x347, &mut x348, x346, x275, x322); + let mut x349: u32 = 0; + let mut x350: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x349, &mut x350, x348, x277, x324); + let mut x351: u32 = 0; + let mut x352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x351, &mut x352, x350, x279, x326); + let mut x353: u32 = 0; + let mut x354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x353, &mut x354, x352, x281, x328); + let mut x355: u32 = 0; + let mut x356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x355, &mut x356, x354, x283, x330); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x357, &mut x358, x331, 0x5cb5bb93); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x359, &mut x360, x357, 0x8cb91e82); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x361, &mut x362, x357, 0xa3386d28); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x363, &mut x364, x357, 0xf5d6f7e); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x365, &mut x366, x357, 0x50e641df); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x367, &mut x368, x357, 0x152f7109); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x369, &mut x370, x357, 0xed5456b3); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x371, &mut x372, x357, 0x1f166e6c); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x373, &mut x374, x357, 0xac0425a7); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x375, &mut x376, x357, 0xcf3ab6af); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x377, &mut x378, x357, 0x6b7fc310); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x379, &mut x380, x357, 0x3b883202); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x381, &mut x382, x357, 0xe9046565); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x383, &mut x384, 0x0, x382, x379); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x385, &mut x386, x384, x380, x377); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x387, &mut x388, x386, x378, x375); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x389, &mut x390, x388, x376, x373); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x391, &mut x392, x390, x374, x371); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x393, &mut x394, x392, x372, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x395, &mut x396, x394, x370, x367); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x397, &mut x398, x396, x368, x365); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x399, &mut x400, x398, x366, x363); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x401, &mut x402, x400, x364, x361); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x403, &mut x404, x402, x362, x359); + let x405: u32 = ((x404 as u32) + x360); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x406, &mut x407, 0x0, x331, x381); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x408, &mut x409, x407, x333, x383); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x410, &mut x411, x409, x335, x385); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x412, &mut x413, x411, x337, x387); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x414, &mut x415, x413, x339, x389); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x341, x391); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x343, x393); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x345, x395); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x347, x397); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x349, x399); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x426, &mut x427, x425, x351, x401); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x353, x403); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x355, x405); + let x432: u32 = ((x431 as u32) + (x356 as u32)); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x433, &mut x434, x3, (arg2[11])); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x435, &mut x436, x3, (arg2[10])); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x437, &mut x438, x3, (arg2[9])); + let mut x439: u32 = 0; + let mut x440: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x439, &mut x440, x3, (arg2[8])); + let mut x441: u32 = 0; + let mut x442: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x441, &mut x442, x3, (arg2[7])); + let mut x443: u32 = 0; + let mut x444: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x443, &mut x444, x3, (arg2[6])); + let mut x445: u32 = 0; + let mut x446: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x445, &mut x446, x3, (arg2[5])); + let mut x447: u32 = 0; + let mut x448: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x447, &mut x448, x3, (arg2[4])); + let mut x449: u32 = 0; + let mut x450: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x449, &mut x450, x3, (arg2[3])); + let mut x451: u32 = 0; + let mut x452: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x451, &mut x452, x3, (arg2[2])); + let mut x453: u32 = 0; + let mut x454: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x453, &mut x454, x3, (arg2[1])); + let mut x455: u32 = 0; + let mut x456: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x455, &mut x456, x3, (arg2[0])); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x457, &mut x458, 0x0, x456, x453); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x454, x451); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x461, &mut x462, x460, x452, x449); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x463, &mut x464, x462, x450, x447); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x465, &mut x466, x464, x448, x445); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x467, &mut x468, x466, x446, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x469, &mut x470, x468, x444, x441); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x471, &mut x472, x470, x442, x439); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x473, &mut x474, x472, x440, x437); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x475, &mut x476, x474, x438, x435); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x477, &mut x478, x476, x436, x433); + let x479: u32 = ((x478 as u32) + x434); + let mut x480: u32 = 0; + let mut x481: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x480, &mut x481, 0x0, x408, x455); + let mut x482: u32 = 0; + let mut x483: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x482, &mut x483, x481, x410, x457); + let mut x484: u32 = 0; + let mut x485: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x484, &mut x485, x483, x412, x459); + let mut x486: u32 = 0; + let mut x487: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x486, &mut x487, x485, x414, x461); + let mut x488: u32 = 0; + let mut x489: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x488, &mut x489, x487, x416, x463); + let mut x490: u32 = 0; + let mut x491: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x490, &mut x491, x489, x418, x465); + let mut x492: u32 = 0; + let mut x493: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x492, &mut x493, x491, x420, x467); + let mut x494: u32 = 0; + let mut x495: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x494, &mut x495, x493, x422, x469); + let mut x496: u32 = 0; + let mut x497: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x496, &mut x497, x495, x424, x471); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x498, &mut x499, x497, x426, x473); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x500, &mut x501, x499, x428, x475); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x502, &mut x503, x501, x430, x477); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x504, &mut x505, x503, x432, x479); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x506, &mut x507, x480, 0x5cb5bb93); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x508, &mut x509, x506, 0x8cb91e82); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x510, &mut x511, x506, 0xa3386d28); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x512, &mut x513, x506, 0xf5d6f7e); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x514, &mut x515, x506, 0x50e641df); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x516, &mut x517, x506, 0x152f7109); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x518, &mut x519, x506, 0xed5456b3); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x520, &mut x521, x506, 0x1f166e6c); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x522, &mut x523, x506, 0xac0425a7); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x524, &mut x525, x506, 0xcf3ab6af); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x526, &mut x527, x506, 0x6b7fc310); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x528, &mut x529, x506, 0x3b883202); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x530, &mut x531, x506, 0xe9046565); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x532, &mut x533, 0x0, x531, x528); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x534, &mut x535, x533, x529, x526); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x536, &mut x537, x535, x527, x524); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x538, &mut x539, x537, x525, x522); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x540, &mut x541, x539, x523, x520); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x542, &mut x543, x541, x521, x518); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x544, &mut x545, x543, x519, x516); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x517, x514); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x515, x512); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x513, x510); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x511, x508); + let x554: u32 = ((x553 as u32) + x509); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x555, &mut x556, 0x0, x480, x530); + let mut x557: u32 = 0; + let mut x558: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x557, &mut x558, x556, x482, x532); + let mut x559: u32 = 0; + let mut x560: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x559, &mut x560, x558, x484, x534); + let mut x561: u32 = 0; + let mut x562: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x561, &mut x562, x560, x486, x536); + let mut x563: u32 = 0; + let mut x564: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x563, &mut x564, x562, x488, x538); + let mut x565: u32 = 0; + let mut x566: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x565, &mut x566, x564, x490, x540); + let mut x567: u32 = 0; + let mut x568: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x567, &mut x568, x566, x492, x542); + let mut x569: u32 = 0; + let mut x570: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x569, &mut x570, x568, x494, x544); + let mut x571: u32 = 0; + let mut x572: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x571, &mut x572, x570, x496, x546); + let mut x573: u32 = 0; + let mut x574: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x573, &mut x574, x572, x498, x548); + let mut x575: u32 = 0; + let mut x576: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x575, &mut x576, x574, x500, x550); + let mut x577: u32 = 0; + let mut x578: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x577, &mut x578, x576, x502, x552); + let mut x579: u32 = 0; + let mut x580: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x579, &mut x580, x578, x504, x554); + let x581: u32 = ((x580 as u32) + (x505 as u32)); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x582, &mut x583, x4, (arg2[11])); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x584, &mut x585, x4, (arg2[10])); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x586, &mut x587, x4, (arg2[9])); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x588, &mut x589, x4, (arg2[8])); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x590, &mut x591, x4, (arg2[7])); + let mut x592: u32 = 0; + let mut x593: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x592, &mut x593, x4, (arg2[6])); + let mut x594: u32 = 0; + let mut x595: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x594, &mut x595, x4, (arg2[5])); + let mut x596: u32 = 0; + let mut x597: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x596, &mut x597, x4, (arg2[4])); + let mut x598: u32 = 0; + let mut x599: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x598, &mut x599, x4, (arg2[3])); + let mut x600: u32 = 0; + let mut x601: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x600, &mut x601, x4, (arg2[2])); + let mut x602: u32 = 0; + let mut x603: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x602, &mut x603, x4, (arg2[1])); + let mut x604: u32 = 0; + let mut x605: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x604, &mut x605, x4, (arg2[0])); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x606, &mut x607, 0x0, x605, x602); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x608, &mut x609, x607, x603, x600); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x610, &mut x611, x609, x601, x598); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x612, &mut x613, x611, x599, x596); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x614, &mut x615, x613, x597, x594); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x616, &mut x617, x615, x595, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x618, &mut x619, x617, x593, x590); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x620, &mut x621, x619, x591, x588); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x622, &mut x623, x621, x589, x586); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x624, &mut x625, x623, x587, x584); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x626, &mut x627, x625, x585, x582); + let x628: u32 = ((x627 as u32) + x583); + let mut x629: u32 = 0; + let mut x630: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x629, &mut x630, 0x0, x557, x604); + let mut x631: u32 = 0; + let mut x632: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x631, &mut x632, x630, x559, x606); + let mut x633: u32 = 0; + let mut x634: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x633, &mut x634, x632, x561, x608); + let mut x635: u32 = 0; + let mut x636: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x635, &mut x636, x634, x563, x610); + let mut x637: u32 = 0; + let mut x638: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x637, &mut x638, x636, x565, x612); + let mut x639: u32 = 0; + let mut x640: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x639, &mut x640, x638, x567, x614); + let mut x641: u32 = 0; + let mut x642: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x641, &mut x642, x640, x569, x616); + let mut x643: u32 = 0; + let mut x644: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x643, &mut x644, x642, x571, x618); + let mut x645: u32 = 0; + let mut x646: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x645, &mut x646, x644, x573, x620); + let mut x647: u32 = 0; + let mut x648: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x647, &mut x648, x646, x575, x622); + let mut x649: u32 = 0; + let mut x650: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x649, &mut x650, x648, x577, x624); + let mut x651: u32 = 0; + let mut x652: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x651, &mut x652, x650, x579, x626); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x653, &mut x654, x652, x581, x628); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x655, &mut x656, x629, 0x5cb5bb93); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x657, &mut x658, x655, 0x8cb91e82); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x659, &mut x660, x655, 0xa3386d28); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x661, &mut x662, x655, 0xf5d6f7e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x663, &mut x664, x655, 0x50e641df); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x665, &mut x666, x655, 0x152f7109); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x667, &mut x668, x655, 0xed5456b3); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x669, &mut x670, x655, 0x1f166e6c); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x671, &mut x672, x655, 0xac0425a7); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x673, &mut x674, x655, 0xcf3ab6af); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x675, &mut x676, x655, 0x6b7fc310); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x677, &mut x678, x655, 0x3b883202); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x679, &mut x680, x655, 0xe9046565); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x681, &mut x682, 0x0, x680, x677); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x683, &mut x684, x682, x678, x675); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x685, &mut x686, x684, x676, x673); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x687, &mut x688, x686, x674, x671); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x689, &mut x690, x688, x672, x669); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x691, &mut x692, x690, x670, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x693, &mut x694, x692, x668, x665); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x695, &mut x696, x694, x666, x663); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x697, &mut x698, x696, x664, x661); + let mut x699: u32 = 0; + let mut x700: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x699, &mut x700, x698, x662, x659); + let mut x701: u32 = 0; + let mut x702: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x701, &mut x702, x700, x660, x657); + let x703: u32 = ((x702 as u32) + x658); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x704, &mut x705, 0x0, x629, x679); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x631, x681); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x708, &mut x709, x707, x633, x683); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x635, x685); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x637, x687); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x639, x689); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x641, x691); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x643, x693); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x645, x695); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x647, x697); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x649, x699); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x726, &mut x727, x725, x651, x701); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x728, &mut x729, x727, x653, x703); + let x730: u32 = ((x729 as u32) + (x654 as u32)); + let mut x731: u32 = 0; + let mut x732: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x731, &mut x732, x5, (arg2[11])); + let mut x733: u32 = 0; + let mut x734: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x733, &mut x734, x5, (arg2[10])); + let mut x735: u32 = 0; + let mut x736: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x735, &mut x736, x5, (arg2[9])); + let mut x737: u32 = 0; + let mut x738: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x737, &mut x738, x5, (arg2[8])); + let mut x739: u32 = 0; + let mut x740: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x739, &mut x740, x5, (arg2[7])); + let mut x741: u32 = 0; + let mut x742: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x741, &mut x742, x5, (arg2[6])); + let mut x743: u32 = 0; + let mut x744: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x743, &mut x744, x5, (arg2[5])); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x745, &mut x746, x5, (arg2[4])); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x747, &mut x748, x5, (arg2[3])); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x749, &mut x750, x5, (arg2[2])); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x751, &mut x752, x5, (arg2[1])); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x753, &mut x754, x5, (arg2[0])); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x755, &mut x756, 0x0, x754, x751); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x757, &mut x758, x756, x752, x749); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x759, &mut x760, x758, x750, x747); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x761, &mut x762, x760, x748, x745); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x763, &mut x764, x762, x746, x743); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x765, &mut x766, x764, x744, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x767, &mut x768, x766, x742, x739); + let mut x769: u32 = 0; + let mut x770: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x769, &mut x770, x768, x740, x737); + let mut x771: u32 = 0; + let mut x772: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x771, &mut x772, x770, x738, x735); + let mut x773: u32 = 0; + let mut x774: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x773, &mut x774, x772, x736, x733); + let mut x775: u32 = 0; + let mut x776: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x775, &mut x776, x774, x734, x731); + let x777: u32 = ((x776 as u32) + x732); + let mut x778: u32 = 0; + let mut x779: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x778, &mut x779, 0x0, x706, x753); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x780, &mut x781, x779, x708, x755); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x782, &mut x783, x781, x710, x757); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x784, &mut x785, x783, x712, x759); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x786, &mut x787, x785, x714, x761); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x788, &mut x789, x787, x716, x763); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x790, &mut x791, x789, x718, x765); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x792, &mut x793, x791, x720, x767); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x794, &mut x795, x793, x722, x769); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x796, &mut x797, x795, x724, x771); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x798, &mut x799, x797, x726, x773); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x800, &mut x801, x799, x728, x775); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x802, &mut x803, x801, x730, x777); + let mut x804: u32 = 0; + let mut x805: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x804, &mut x805, x778, 0x5cb5bb93); + let mut x806: u32 = 0; + let mut x807: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x806, &mut x807, x804, 0x8cb91e82); + let mut x808: u32 = 0; + let mut x809: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x808, &mut x809, x804, 0xa3386d28); + let mut x810: u32 = 0; + let mut x811: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x810, &mut x811, x804, 0xf5d6f7e); + let mut x812: u32 = 0; + let mut x813: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x812, &mut x813, x804, 0x50e641df); + let mut x814: u32 = 0; + let mut x815: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x814, &mut x815, x804, 0x152f7109); + let mut x816: u32 = 0; + let mut x817: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x816, &mut x817, x804, 0xed5456b3); + let mut x818: u32 = 0; + let mut x819: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x818, &mut x819, x804, 0x1f166e6c); + let mut x820: u32 = 0; + let mut x821: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x820, &mut x821, x804, 0xac0425a7); + let mut x822: u32 = 0; + let mut x823: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x822, &mut x823, x804, 0xcf3ab6af); + let mut x824: u32 = 0; + let mut x825: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x824, &mut x825, x804, 0x6b7fc310); + let mut x826: u32 = 0; + let mut x827: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x826, &mut x827, x804, 0x3b883202); + let mut x828: u32 = 0; + let mut x829: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x828, &mut x829, x804, 0xe9046565); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x830, &mut x831, 0x0, x829, x826); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x832, &mut x833, x831, x827, x824); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x834, &mut x835, x833, x825, x822); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x836, &mut x837, x835, x823, x820); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x838, &mut x839, x837, x821, x818); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x840, &mut x841, x839, x819, x816); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x842, &mut x843, x841, x817, x814); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x844, &mut x845, x843, x815, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x846, &mut x847, x845, x813, x810); + let mut x848: u32 = 0; + let mut x849: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x848, &mut x849, x847, x811, x808); + let mut x850: u32 = 0; + let mut x851: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x850, &mut x851, x849, x809, x806); + let x852: u32 = ((x851 as u32) + x807); + let mut x853: u32 = 0; + let mut x854: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x853, &mut x854, 0x0, x778, x828); + let mut x855: u32 = 0; + let mut x856: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x855, &mut x856, x854, x780, x830); + let mut x857: u32 = 0; + let mut x858: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x857, &mut x858, x856, x782, x832); + let mut x859: u32 = 0; + let mut x860: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x859, &mut x860, x858, x784, x834); + let mut x861: u32 = 0; + let mut x862: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x861, &mut x862, x860, x786, x836); + let mut x863: u32 = 0; + let mut x864: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x863, &mut x864, x862, x788, x838); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x865, &mut x866, x864, x790, x840); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x867, &mut x868, x866, x792, x842); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x869, &mut x870, x868, x794, x844); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x871, &mut x872, x870, x796, x846); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x873, &mut x874, x872, x798, x848); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x875, &mut x876, x874, x800, x850); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x877, &mut x878, x876, x802, x852); + let x879: u32 = ((x878 as u32) + (x803 as u32)); + let mut x880: u32 = 0; + let mut x881: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x880, &mut x881, x6, (arg2[11])); + let mut x882: u32 = 0; + let mut x883: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x882, &mut x883, x6, (arg2[10])); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x884, &mut x885, x6, (arg2[9])); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x886, &mut x887, x6, (arg2[8])); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x888, &mut x889, x6, (arg2[7])); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x890, &mut x891, x6, (arg2[6])); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x892, &mut x893, x6, (arg2[5])); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x894, &mut x895, x6, (arg2[4])); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x896, &mut x897, x6, (arg2[3])); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x898, &mut x899, x6, (arg2[2])); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x900, &mut x901, x6, (arg2[1])); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x902, &mut x903, x6, (arg2[0])); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x904, &mut x905, 0x0, x903, x900); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x906, &mut x907, x905, x901, x898); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x908, &mut x909, x907, x899, x896); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x910, &mut x911, x909, x897, x894); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x912, &mut x913, x911, x895, x892); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x914, &mut x915, x913, x893, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x916, &mut x917, x915, x891, x888); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x918, &mut x919, x917, x889, x886); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x920, &mut x921, x919, x887, x884); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x922, &mut x923, x921, x885, x882); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x924, &mut x925, x923, x883, x880); + let x926: u32 = ((x925 as u32) + x881); + let mut x927: u32 = 0; + let mut x928: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x927, &mut x928, 0x0, x855, x902); + let mut x929: u32 = 0; + let mut x930: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x929, &mut x930, x928, x857, x904); + let mut x931: u32 = 0; + let mut x932: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x931, &mut x932, x930, x859, x906); + let mut x933: u32 = 0; + let mut x934: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x933, &mut x934, x932, x861, x908); + let mut x935: u32 = 0; + let mut x936: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x935, &mut x936, x934, x863, x910); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x937, &mut x938, x936, x865, x912); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x939, &mut x940, x938, x867, x914); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x941, &mut x942, x940, x869, x916); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x943, &mut x944, x942, x871, x918); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x945, &mut x946, x944, x873, x920); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x947, &mut x948, x946, x875, x922); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x949, &mut x950, x948, x877, x924); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x951, &mut x952, x950, x879, x926); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x953, &mut x954, x927, 0x5cb5bb93); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x955, &mut x956, x953, 0x8cb91e82); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x957, &mut x958, x953, 0xa3386d28); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x959, &mut x960, x953, 0xf5d6f7e); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x961, &mut x962, x953, 0x50e641df); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x963, &mut x964, x953, 0x152f7109); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x965, &mut x966, x953, 0xed5456b3); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x967, &mut x968, x953, 0x1f166e6c); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x969, &mut x970, x953, 0xac0425a7); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x971, &mut x972, x953, 0xcf3ab6af); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x973, &mut x974, x953, 0x6b7fc310); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x975, &mut x976, x953, 0x3b883202); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x977, &mut x978, x953, 0xe9046565); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x979, &mut x980, 0x0, x978, x975); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x981, &mut x982, x980, x976, x973); + let mut x983: u32 = 0; + let mut x984: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x983, &mut x984, x982, x974, x971); + let mut x985: u32 = 0; + let mut x986: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x985, &mut x986, x984, x972, x969); + let mut x987: u32 = 0; + let mut x988: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x987, &mut x988, x986, x970, x967); + let mut x989: u32 = 0; + let mut x990: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x989, &mut x990, x988, x968, x965); + let mut x991: u32 = 0; + let mut x992: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x991, &mut x992, x990, x966, x963); + let mut x993: u32 = 0; + let mut x994: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x993, &mut x994, x992, x964, x961); + let mut x995: u32 = 0; + let mut x996: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x995, &mut x996, x994, x962, x959); + let mut x997: u32 = 0; + let mut x998: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x997, &mut x998, x996, x960, x957); + let mut x999: u32 = 0; + let mut x1000: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x999, &mut x1000, x998, x958, x955); + let x1001: u32 = ((x1000 as u32) + x956); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1002, &mut x1003, 0x0, x927, x977); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1004, &mut x1005, x1003, x929, x979); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1006, &mut x1007, x1005, x931, x981); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1008, &mut x1009, x1007, x933, x983); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1010, &mut x1011, x1009, x935, x985); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1012, &mut x1013, x1011, x937, x987); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1014, &mut x1015, x1013, x939, x989); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1016, &mut x1017, x1015, x941, x991); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1018, &mut x1019, x1017, x943, x993); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1020, &mut x1021, x1019, x945, x995); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1022, &mut x1023, x1021, x947, x997); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1024, &mut x1025, x1023, x949, x999); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1026, &mut x1027, x1025, x951, x1001); + let x1028: u32 = ((x1027 as u32) + (x952 as u32)); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1029, &mut x1030, x7, (arg2[11])); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1031, &mut x1032, x7, (arg2[10])); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1033, &mut x1034, x7, (arg2[9])); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1035, &mut x1036, x7, (arg2[8])); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1037, &mut x1038, x7, (arg2[7])); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1039, &mut x1040, x7, (arg2[6])); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1041, &mut x1042, x7, (arg2[5])); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1043, &mut x1044, x7, (arg2[4])); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1045, &mut x1046, x7, (arg2[3])); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1047, &mut x1048, x7, (arg2[2])); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1049, &mut x1050, x7, (arg2[1])); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1051, &mut x1052, x7, (arg2[0])); + let mut x1053: u32 = 0; + let mut x1054: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1053, &mut x1054, 0x0, x1052, x1049); + let mut x1055: u32 = 0; + let mut x1056: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1055, &mut x1056, x1054, x1050, x1047); + let mut x1057: u32 = 0; + let mut x1058: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1057, &mut x1058, x1056, x1048, x1045); + let mut x1059: u32 = 0; + let mut x1060: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1059, &mut x1060, x1058, x1046, x1043); + let mut x1061: u32 = 0; + let mut x1062: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1061, &mut x1062, x1060, x1044, x1041); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1063, &mut x1064, x1062, x1042, x1039); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1040, x1037); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1038, x1035); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1036, x1033); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1034, x1031); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1032, x1029); + let x1075: u32 = ((x1074 as u32) + x1030); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1076, &mut x1077, 0x0, x1004, x1051); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1006, x1053); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1008, x1055); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1010, x1057); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1084, &mut x1085, x1083, x1012, x1059); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1014, x1061); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1016, x1063); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1018, x1065); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1020, x1067); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1022, x1069); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1024, x1071); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1026, x1073); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1028, x1075); + let mut x1102: u32 = 0; + let mut x1103: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1102, &mut x1103, x1076, 0x5cb5bb93); + let mut x1104: u32 = 0; + let mut x1105: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1104, &mut x1105, x1102, 0x8cb91e82); + let mut x1106: u32 = 0; + let mut x1107: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1106, &mut x1107, x1102, 0xa3386d28); + let mut x1108: u32 = 0; + let mut x1109: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1108, &mut x1109, x1102, 0xf5d6f7e); + let mut x1110: u32 = 0; + let mut x1111: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1110, &mut x1111, x1102, 0x50e641df); + let mut x1112: u32 = 0; + let mut x1113: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1112, &mut x1113, x1102, 0x152f7109); + let mut x1114: u32 = 0; + let mut x1115: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1114, &mut x1115, x1102, 0xed5456b3); + let mut x1116: u32 = 0; + let mut x1117: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1116, &mut x1117, x1102, 0x1f166e6c); + let mut x1118: u32 = 0; + let mut x1119: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1118, &mut x1119, x1102, 0xac0425a7); + let mut x1120: u32 = 0; + let mut x1121: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1120, &mut x1121, x1102, 0xcf3ab6af); + let mut x1122: u32 = 0; + let mut x1123: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1122, &mut x1123, x1102, 0x6b7fc310); + let mut x1124: u32 = 0; + let mut x1125: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1124, &mut x1125, x1102, 0x3b883202); + let mut x1126: u32 = 0; + let mut x1127: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1126, &mut x1127, x1102, 0xe9046565); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1128, &mut x1129, 0x0, x1127, x1124); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1125, x1122); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1123, x1120); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1121, x1118); + let mut x1136: u32 = 0; + let mut x1137: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1136, &mut x1137, x1135, x1119, x1116); + let mut x1138: u32 = 0; + let mut x1139: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1138, &mut x1139, x1137, x1117, x1114); + let mut x1140: u32 = 0; + let mut x1141: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1140, &mut x1141, x1139, x1115, x1112); + let mut x1142: u32 = 0; + let mut x1143: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1142, &mut x1143, x1141, x1113, x1110); + let mut x1144: u32 = 0; + let mut x1145: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1144, &mut x1145, x1143, x1111, x1108); + let mut x1146: u32 = 0; + let mut x1147: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1146, &mut x1147, x1145, x1109, x1106); + let mut x1148: u32 = 0; + let mut x1149: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1148, &mut x1149, x1147, x1107, x1104); + let x1150: u32 = ((x1149 as u32) + x1105); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1151, &mut x1152, 0x0, x1076, x1126); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1078, x1128); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1080, x1130); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1082, x1132); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1084, x1134); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1086, x1136); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1088, x1138); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1090, x1140); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1092, x1142); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1094, x1144); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1096, x1146); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1098, x1148); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1100, x1150); + let x1177: u32 = ((x1176 as u32) + (x1101 as u32)); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1178, &mut x1179, x8, (arg2[11])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1180, &mut x1181, x8, (arg2[10])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1182, &mut x1183, x8, (arg2[9])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1184, &mut x1185, x8, (arg2[8])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1186, &mut x1187, x8, (arg2[7])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1188, &mut x1189, x8, (arg2[6])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1190, &mut x1191, x8, (arg2[5])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1192, &mut x1193, x8, (arg2[4])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1194, &mut x1195, x8, (arg2[3])); + let mut x1196: u32 = 0; + let mut x1197: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1196, &mut x1197, x8, (arg2[2])); + let mut x1198: u32 = 0; + let mut x1199: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1198, &mut x1199, x8, (arg2[1])); + let mut x1200: u32 = 0; + let mut x1201: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1200, &mut x1201, x8, (arg2[0])); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1202, &mut x1203, 0x0, x1201, x1198); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1199, x1196); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1197, x1194); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1195, x1192); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1193, x1190); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1191, x1188); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1189, x1186); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1187, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1185, x1182); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1183, x1180); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1181, x1178); + let x1224: u32 = ((x1223 as u32) + x1179); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1225, &mut x1226, 0x0, x1153, x1200); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1155, x1202); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1157, x1204); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1159, x1206); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1161, x1208); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1163, x1210); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1165, x1212); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1167, x1214); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1169, x1216); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1171, x1218); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1220); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1222); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1224); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1251, &mut x1252, x1225, 0x5cb5bb93); + let mut x1253: u32 = 0; + let mut x1254: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1253, &mut x1254, x1251, 0x8cb91e82); + let mut x1255: u32 = 0; + let mut x1256: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1255, &mut x1256, x1251, 0xa3386d28); + let mut x1257: u32 = 0; + let mut x1258: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1257, &mut x1258, x1251, 0xf5d6f7e); + let mut x1259: u32 = 0; + let mut x1260: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1259, &mut x1260, x1251, 0x50e641df); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1261, &mut x1262, x1251, 0x152f7109); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1263, &mut x1264, x1251, 0xed5456b3); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1265, &mut x1266, x1251, 0x1f166e6c); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1267, &mut x1268, x1251, 0xac0425a7); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1269, &mut x1270, x1251, 0xcf3ab6af); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1271, &mut x1272, x1251, 0x6b7fc310); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1273, &mut x1274, x1251, 0x3b883202); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1275, &mut x1276, x1251, 0xe9046565); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1277, &mut x1278, 0x0, x1276, x1273); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1274, x1271); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1272, x1269); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1283, &mut x1284, x1282, x1270, x1267); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1268, x1265); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1266, x1263); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1264, x1261); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1262, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1260, x1257); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1258, x1255); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1256, x1253); + let x1299: u32 = ((x1298 as u32) + x1254); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1300, &mut x1301, 0x0, x1225, x1275); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1227, x1277); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1229, x1279); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1231, x1281); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1233, x1283); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1235, x1285); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1237, x1287); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1239, x1289); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1241, x1291); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1243, x1293); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1245, x1295); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1247, x1297); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1249, x1299); + let x1326: u32 = ((x1325 as u32) + (x1250 as u32)); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1327, &mut x1328, x9, (arg2[11])); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1329, &mut x1330, x9, (arg2[10])); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1331, &mut x1332, x9, (arg2[9])); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1333, &mut x1334, x9, (arg2[8])); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1335, &mut x1336, x9, (arg2[7])); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1337, &mut x1338, x9, (arg2[6])); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1339, &mut x1340, x9, (arg2[5])); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1341, &mut x1342, x9, (arg2[4])); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1343, &mut x1344, x9, (arg2[3])); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1345, &mut x1346, x9, (arg2[2])); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1347, &mut x1348, x9, (arg2[1])); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1349, &mut x1350, x9, (arg2[0])); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1351, &mut x1352, 0x0, x1350, x1347); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1348, x1345); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1346, x1343); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1344, x1341); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1342, x1339); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1340, x1337); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1338, x1335); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1336, x1333); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1334, x1331); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1332, x1329); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1330, x1327); + let x1373: u32 = ((x1372 as u32) + x1328); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1374, &mut x1375, 0x0, x1302, x1349); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1304, x1351); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1306, x1353); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1308, x1355); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1310, x1357); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1312, x1359); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1314, x1361); + let mut x1388: u32 = 0; + let mut x1389: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1388, &mut x1389, x1387, x1316, x1363); + let mut x1390: u32 = 0; + let mut x1391: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1390, &mut x1391, x1389, x1318, x1365); + let mut x1392: u32 = 0; + let mut x1393: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1392, &mut x1393, x1391, x1320, x1367); + let mut x1394: u32 = 0; + let mut x1395: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1394, &mut x1395, x1393, x1322, x1369); + let mut x1396: u32 = 0; + let mut x1397: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1396, &mut x1397, x1395, x1324, x1371); + let mut x1398: u32 = 0; + let mut x1399: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1398, &mut x1399, x1397, x1326, x1373); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1400, &mut x1401, x1374, 0x5cb5bb93); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1402, &mut x1403, x1400, 0x8cb91e82); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1404, &mut x1405, x1400, 0xa3386d28); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1406, &mut x1407, x1400, 0xf5d6f7e); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1408, &mut x1409, x1400, 0x50e641df); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1410, &mut x1411, x1400, 0x152f7109); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1412, &mut x1413, x1400, 0xed5456b3); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1414, &mut x1415, x1400, 0x1f166e6c); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1416, &mut x1417, x1400, 0xac0425a7); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1418, &mut x1419, x1400, 0xcf3ab6af); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1420, &mut x1421, x1400, 0x6b7fc310); + let mut x1422: u32 = 0; + let mut x1423: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1422, &mut x1423, x1400, 0x3b883202); + let mut x1424: u32 = 0; + let mut x1425: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1424, &mut x1425, x1400, 0xe9046565); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1426, &mut x1427, 0x0, x1425, x1422); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1423, x1420); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1421, x1418); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1419, x1416); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1417, x1414); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1415, x1412); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1413, x1410); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1411, x1408); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1409, x1406); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1407, x1404); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1405, x1402); + let x1448: u32 = ((x1447 as u32) + x1403); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1449, &mut x1450, 0x0, x1374, x1424); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1376, x1426); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1378, x1428); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1380, x1430); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1382, x1432); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1384, x1434); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1386, x1436); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1388, x1438); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1390, x1440); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1392, x1442); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1394, x1444); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1396, x1446); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1398, x1448); + let x1475: u32 = ((x1474 as u32) + (x1399 as u32)); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1476, &mut x1477, x10, (arg2[11])); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1478, &mut x1479, x10, (arg2[10])); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1480, &mut x1481, x10, (arg2[9])); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1482, &mut x1483, x10, (arg2[8])); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1484, &mut x1485, x10, (arg2[7])); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1486, &mut x1487, x10, (arg2[6])); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1488, &mut x1489, x10, (arg2[5])); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1490, &mut x1491, x10, (arg2[4])); + let mut x1492: u32 = 0; + let mut x1493: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1492, &mut x1493, x10, (arg2[3])); + let mut x1494: u32 = 0; + let mut x1495: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1494, &mut x1495, x10, (arg2[2])); + let mut x1496: u32 = 0; + let mut x1497: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1496, &mut x1497, x10, (arg2[1])); + let mut x1498: u32 = 0; + let mut x1499: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1498, &mut x1499, x10, (arg2[0])); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1500, &mut x1501, 0x0, x1499, x1496); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1497, x1494); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1495, x1492); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1493, x1490); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1491, x1488); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1489, x1486); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1487, x1484); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1485, x1482); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1483, x1480); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1481, x1478); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1479, x1476); + let x1522: u32 = ((x1521 as u32) + x1477); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1451, x1498); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1453, x1500); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1455, x1502); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1504); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1506); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1508); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1510); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1512); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1514); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1516); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1518); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1520); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1522); + let mut x1549: u32 = 0; + let mut x1550: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1549, &mut x1550, x1523, 0x5cb5bb93); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1551, &mut x1552, x1549, 0x8cb91e82); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1553, &mut x1554, x1549, 0xa3386d28); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1555, &mut x1556, x1549, 0xf5d6f7e); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1557, &mut x1558, x1549, 0x50e641df); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1559, &mut x1560, x1549, 0x152f7109); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1561, &mut x1562, x1549, 0xed5456b3); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1563, &mut x1564, x1549, 0x1f166e6c); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1565, &mut x1566, x1549, 0xac0425a7); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1567, &mut x1568, x1549, 0xcf3ab6af); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1569, &mut x1570, x1549, 0x6b7fc310); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1571, &mut x1572, x1549, 0x3b883202); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1573, &mut x1574, x1549, 0xe9046565); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let x1597: u32 = ((x1596 as u32) + x1552); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1598, &mut x1599, 0x0, x1523, x1573); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1525, x1575); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1527, x1577); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1529, x1579); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1531, x1581); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1533, x1583); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1535, x1585); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1537, x1587); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1539, x1589); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1541, x1591); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1543, x1593); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1545, x1595); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1547, x1597); + let x1624: u32 = ((x1623 as u32) + (x1548 as u32)); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1625, &mut x1626, x11, (arg2[11])); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1627, &mut x1628, x11, (arg2[10])); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1629, &mut x1630, x11, (arg2[9])); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1631, &mut x1632, x11, (arg2[8])); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1633, &mut x1634, x11, (arg2[7])); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1635, &mut x1636, x11, (arg2[6])); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1637, &mut x1638, x11, (arg2[5])); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1639, &mut x1640, x11, (arg2[4])); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1641, &mut x1642, x11, (arg2[3])); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1643, &mut x1644, x11, (arg2[2])); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1645, &mut x1646, x11, (arg2[1])); + let mut x1647: u32 = 0; + let mut x1648: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1647, &mut x1648, x11, (arg2[0])); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1649, &mut x1650, 0x0, x1648, x1645); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1646, x1643); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1644, x1641); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1642, x1639); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1640, x1637); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1638, x1635); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1636, x1633); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1634, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1632, x1629); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1630, x1627); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1628, x1625); + let x1671: u32 = ((x1670 as u32) + x1626); + let mut x1672: u32 = 0; + let mut x1673: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1672, &mut x1673, 0x0, x1600, x1647); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1674, &mut x1675, x1673, x1602, x1649); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1604, x1651); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1606, x1653); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1608, x1655); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1610, x1657); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1612, x1659); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1614, x1661); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1616, x1663); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1618, x1665); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1620, x1667); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1622, x1669); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1624, x1671); + let mut x1698: u32 = 0; + let mut x1699: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1698, &mut x1699, x1672, 0x5cb5bb93); + let mut x1700: u32 = 0; + let mut x1701: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1700, &mut x1701, x1698, 0x8cb91e82); + let mut x1702: u32 = 0; + let mut x1703: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1702, &mut x1703, x1698, 0xa3386d28); + let mut x1704: u32 = 0; + let mut x1705: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1704, &mut x1705, x1698, 0xf5d6f7e); + let mut x1706: u32 = 0; + let mut x1707: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1706, &mut x1707, x1698, 0x50e641df); + let mut x1708: u32 = 0; + let mut x1709: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1708, &mut x1709, x1698, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1710, &mut x1711, x1698, 0xed5456b3); + let mut x1712: u32 = 0; + let mut x1713: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1712, &mut x1713, x1698, 0x1f166e6c); + let mut x1714: u32 = 0; + let mut x1715: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1714, &mut x1715, x1698, 0xac0425a7); + let mut x1716: u32 = 0; + let mut x1717: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1716, &mut x1717, x1698, 0xcf3ab6af); + let mut x1718: u32 = 0; + let mut x1719: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1718, &mut x1719, x1698, 0x6b7fc310); + let mut x1720: u32 = 0; + let mut x1721: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1720, &mut x1721, x1698, 0x3b883202); + let mut x1722: u32 = 0; + let mut x1723: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1722, &mut x1723, x1698, 0xe9046565); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1724, &mut x1725, 0x0, x1723, x1720); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1721, x1718); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1719, x1716); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1717, x1714); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1715, x1712); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1713, x1710); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1711, x1708); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1709, x1706); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1707, x1704); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1705, x1702); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1703, x1700); + let x1746: u32 = ((x1745 as u32) + x1701); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1747, &mut x1748, 0x0, x1672, x1722); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1674, x1724); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1676, x1726); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1678, x1728); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1680, x1730); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1757, &mut x1758, x1756, x1682, x1732); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1684, x1734); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1686, x1736); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1688, x1738); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1690, x1740); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1692, x1742); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1694, x1744); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1696, x1746); + let x1773: u32 = ((x1772 as u32) + (x1697 as u32)); + let mut x1774: u32 = 0; + let mut x1775: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1774, &mut x1775, 0x0, x1749, 0xe9046565); + let mut x1776: u32 = 0; + let mut x1777: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1776, &mut x1777, x1775, x1751, 0x3b883202); + let mut x1778: u32 = 0; + let mut x1779: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1778, &mut x1779, x1777, x1753, 0x6b7fc310); + let mut x1780: u32 = 0; + let mut x1781: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1780, &mut x1781, x1779, x1755, 0xcf3ab6af); + let mut x1782: u32 = 0; + let mut x1783: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1782, &mut x1783, x1781, x1757, 0xac0425a7); + let mut x1784: u32 = 0; + let mut x1785: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1784, &mut x1785, x1783, x1759, 0x1f166e6c); + let mut x1786: u32 = 0; + let mut x1787: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1786, &mut x1787, x1785, x1761, 0xed5456b3); + let mut x1788: u32 = 0; + let mut x1789: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1788, &mut x1789, x1787, x1763, 0x152f7109); + let mut x1790: u32 = 0; + let mut x1791: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1790, &mut x1791, x1789, x1765, 0x50e641df); + let mut x1792: u32 = 0; + let mut x1793: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1792, &mut x1793, x1791, x1767, 0xf5d6f7e); + let mut x1794: u32 = 0; + let mut x1795: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1794, &mut x1795, x1793, x1769, 0xa3386d28); + let mut x1796: u32 = 0; + let mut x1797: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1796, &mut x1797, x1795, x1771, 0x8cb91e82); + let mut x1798: u32 = 0; + let mut x1799: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1798, &mut x1799, x1797, x1773, (0x0 as u32)); + let mut x1800: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1800, x1799, x1774, x1749); + let mut x1801: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1801, x1799, x1776, x1751); + let mut x1802: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1802, x1799, x1778, x1753); + let mut x1803: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1803, x1799, x1780, x1755); + let mut x1804: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1804, x1799, x1782, x1757); + let mut x1805: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1805, x1799, x1784, x1759); + let mut x1806: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1806, x1799, x1786, x1761); + let mut x1807: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1807, x1799, x1788, x1763); + let mut x1808: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1808, x1799, x1790, x1765); + let mut x1809: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1809, x1799, x1792, x1767); + let mut x1810: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1810, x1799, x1794, x1769); + let mut x1811: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1811, x1799, x1796, x1771); + out1[0] = x1800; + out1[1] = x1801; + out1[2] = x1802; + out1[3] = x1803; + out1[4] = x1804; + out1[5] = x1805; + out1[6] = x1806; + out1[7] = x1807; + out1[8] = x1808; + out1[9] = x1809; + out1[10] = x1810; + out1[11] = x1811; +} +/// The function fiat_bp384_scalar_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_square( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x13, &mut x14, x12, (arg1[11])); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x15, &mut x16, x12, (arg1[10])); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x17, &mut x18, x12, (arg1[9])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x19, &mut x20, x12, (arg1[8])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x21, &mut x22, x12, (arg1[7])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x23, &mut x24, x12, (arg1[6])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x25, &mut x26, x12, (arg1[5])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x27, &mut x28, x12, (arg1[4])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x29, &mut x30, x12, (arg1[3])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x31, &mut x32, x12, (arg1[2])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x33, &mut x34, x12, (arg1[1])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x35, &mut x36, x12, (arg1[0])); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let x59: u32 = ((x58 as u32) + x14); + let mut x60: u32 = 0; + let mut x61: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x60, &mut x61, x35, 0x5cb5bb93); + let mut x62: u32 = 0; + let mut x63: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x62, &mut x63, x60, 0x8cb91e82); + let mut x64: u32 = 0; + let mut x65: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x64, &mut x65, x60, 0xa3386d28); + let mut x66: u32 = 0; + let mut x67: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x66, &mut x67, x60, 0xf5d6f7e); + let mut x68: u32 = 0; + let mut x69: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x68, &mut x69, x60, 0x50e641df); + let mut x70: u32 = 0; + let mut x71: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x70, &mut x71, x60, 0x152f7109); + let mut x72: u32 = 0; + let mut x73: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x72, &mut x73, x60, 0xed5456b3); + let mut x74: u32 = 0; + let mut x75: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x74, &mut x75, x60, 0x1f166e6c); + let mut x76: u32 = 0; + let mut x77: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x76, &mut x77, x60, 0xac0425a7); + let mut x78: u32 = 0; + let mut x79: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x78, &mut x79, x60, 0xcf3ab6af); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x80, &mut x81, x60, 0x6b7fc310); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x82, &mut x83, x60, 0x3b883202); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x84, &mut x85, x60, 0xe9046565); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x86, &mut x87, 0x0, x85, x82); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x88, &mut x89, x87, x83, x80); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x90, &mut x91, x89, x81, x78); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x92, &mut x93, x91, x79, x76); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x94, &mut x95, x93, x77, x74); + let mut x96: u32 = 0; + let mut x97: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x96, &mut x97, x95, x75, x72); + let mut x98: u32 = 0; + let mut x99: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x98, &mut x99, x97, x73, x70); + let mut x100: u32 = 0; + let mut x101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x100, &mut x101, x99, x71, x68); + let mut x102: u32 = 0; + let mut x103: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x102, &mut x103, x101, x69, x66); + let mut x104: u32 = 0; + let mut x105: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x104, &mut x105, x103, x67, x64); + let mut x106: u32 = 0; + let mut x107: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x106, &mut x107, x105, x65, x62); + let x108: u32 = ((x107 as u32) + x63); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x109, &mut x110, 0x0, x35, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x111, &mut x112, x110, x37, x86); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x113, &mut x114, x112, x39, x88); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x115, &mut x116, x114, x41, x90); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x117, &mut x118, x116, x43, x92); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x119, &mut x120, x118, x45, x94); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x121, &mut x122, x120, x47, x96); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x123, &mut x124, x122, x49, x98); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x125, &mut x126, x124, x51, x100); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x127, &mut x128, x126, x53, x102); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x129, &mut x130, x128, x55, x104); + let mut x131: u32 = 0; + let mut x132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x131, &mut x132, x130, x57, x106); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x133, &mut x134, x132, x59, x108); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x135, &mut x136, x1, (arg1[11])); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x137, &mut x138, x1, (arg1[10])); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x139, &mut x140, x1, (arg1[9])); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x141, &mut x142, x1, (arg1[8])); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x143, &mut x144, x1, (arg1[7])); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x145, &mut x146, x1, (arg1[6])); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x147, &mut x148, x1, (arg1[5])); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x149, &mut x150, x1, (arg1[4])); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x151, &mut x152, x1, (arg1[3])); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x153, &mut x154, x1, (arg1[2])); + let mut x155: u32 = 0; + let mut x156: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x155, &mut x156, x1, (arg1[1])); + let mut x157: u32 = 0; + let mut x158: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x157, &mut x158, x1, (arg1[0])); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x159, &mut x160, 0x0, x158, x155); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x156, x153); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x154, x151); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x152, x149); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x150, x147); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x148, x145); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x146, x143); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x144, x141); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x175, &mut x176, x174, x142, x139); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x177, &mut x178, x176, x140, x137); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x179, &mut x180, x178, x138, x135); + let x181: u32 = ((x180 as u32) + x136); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x182, &mut x183, 0x0, x111, x157); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x184, &mut x185, x183, x113, x159); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x186, &mut x187, x185, x115, x161); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x188, &mut x189, x187, x117, x163); + let mut x190: u32 = 0; + let mut x191: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x190, &mut x191, x189, x119, x165); + let mut x192: u32 = 0; + let mut x193: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x192, &mut x193, x191, x121, x167); + let mut x194: u32 = 0; + let mut x195: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x194, &mut x195, x193, x123, x169); + let mut x196: u32 = 0; + let mut x197: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x196, &mut x197, x195, x125, x171); + let mut x198: u32 = 0; + let mut x199: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x198, &mut x199, x197, x127, x173); + let mut x200: u32 = 0; + let mut x201: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x200, &mut x201, x199, x129, x175); + let mut x202: u32 = 0; + let mut x203: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x202, &mut x203, x201, x131, x177); + let mut x204: u32 = 0; + let mut x205: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x204, &mut x205, x203, x133, x179); + let mut x206: u32 = 0; + let mut x207: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x206, &mut x207, x205, (x134 as u32), x181); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x208, &mut x209, x182, 0x5cb5bb93); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x210, &mut x211, x208, 0x8cb91e82); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x212, &mut x213, x208, 0xa3386d28); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x214, &mut x215, x208, 0xf5d6f7e); + let mut x216: u32 = 0; + let mut x217: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x216, &mut x217, x208, 0x50e641df); + let mut x218: u32 = 0; + let mut x219: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x218, &mut x219, x208, 0x152f7109); + let mut x220: u32 = 0; + let mut x221: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x220, &mut x221, x208, 0xed5456b3); + let mut x222: u32 = 0; + let mut x223: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x222, &mut x223, x208, 0x1f166e6c); + let mut x224: u32 = 0; + let mut x225: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x224, &mut x225, x208, 0xac0425a7); + let mut x226: u32 = 0; + let mut x227: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x226, &mut x227, x208, 0xcf3ab6af); + let mut x228: u32 = 0; + let mut x229: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x228, &mut x229, x208, 0x6b7fc310); + let mut x230: u32 = 0; + let mut x231: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x230, &mut x231, x208, 0x3b883202); + let mut x232: u32 = 0; + let mut x233: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x232, &mut x233, x208, 0xe9046565); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x234, &mut x235, 0x0, x233, x230); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x236, &mut x237, x235, x231, x228); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x238, &mut x239, x237, x229, x226); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x240, &mut x241, x239, x227, x224); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x242, &mut x243, x241, x225, x222); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x223, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x221, x218); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x219, x216); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x217, x214); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x215, x212); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x213, x210); + let x256: u32 = ((x255 as u32) + x211); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x257, &mut x258, 0x0, x182, x232); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x259, &mut x260, x258, x184, x234); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x261, &mut x262, x260, x186, x236); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x263, &mut x264, x262, x188, x238); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x265, &mut x266, x264, x190, x240); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x267, &mut x268, x266, x192, x242); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x269, &mut x270, x268, x194, x244); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x271, &mut x272, x270, x196, x246); + let mut x273: u32 = 0; + let mut x274: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x273, &mut x274, x272, x198, x248); + let mut x275: u32 = 0; + let mut x276: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x275, &mut x276, x274, x200, x250); + let mut x277: u32 = 0; + let mut x278: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x277, &mut x278, x276, x202, x252); + let mut x279: u32 = 0; + let mut x280: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x279, &mut x280, x278, x204, x254); + let mut x281: u32 = 0; + let mut x282: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x281, &mut x282, x280, x206, x256); + let x283: u32 = ((x282 as u32) + (x207 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x284, &mut x285, x2, (arg1[11])); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x286, &mut x287, x2, (arg1[10])); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x288, &mut x289, x2, (arg1[9])); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x290, &mut x291, x2, (arg1[8])); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x292, &mut x293, x2, (arg1[7])); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x294, &mut x295, x2, (arg1[6])); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x296, &mut x297, x2, (arg1[5])); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x298, &mut x299, x2, (arg1[4])); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x300, &mut x301, x2, (arg1[3])); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x302, &mut x303, x2, (arg1[2])); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x304, &mut x305, x2, (arg1[1])); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x306, &mut x307, x2, (arg1[0])); + let mut x308: u32 = 0; + let mut x309: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x308, &mut x309, 0x0, x307, x304); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x310, &mut x311, x309, x305, x302); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x303, x300); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x301, x298); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x299, x296); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x318, &mut x319, x317, x297, x294); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x295, x292); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x293, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x291, x288); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x289, x286); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x287, x284); + let x330: u32 = ((x329 as u32) + x285); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x331, &mut x332, 0x0, x259, x306); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x333, &mut x334, x332, x261, x308); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x335, &mut x336, x334, x263, x310); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x337, &mut x338, x336, x265, x312); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x339, &mut x340, x338, x267, x314); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x341, &mut x342, x340, x269, x316); + let mut x343: u32 = 0; + let mut x344: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x343, &mut x344, x342, x271, x318); + let mut x345: u32 = 0; + let mut x346: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x345, &mut x346, x344, x273, x320); + let mut x347: u32 = 0; + let mut x348: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x347, &mut x348, x346, x275, x322); + let mut x349: u32 = 0; + let mut x350: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x349, &mut x350, x348, x277, x324); + let mut x351: u32 = 0; + let mut x352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x351, &mut x352, x350, x279, x326); + let mut x353: u32 = 0; + let mut x354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x353, &mut x354, x352, x281, x328); + let mut x355: u32 = 0; + let mut x356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x355, &mut x356, x354, x283, x330); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x357, &mut x358, x331, 0x5cb5bb93); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x359, &mut x360, x357, 0x8cb91e82); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x361, &mut x362, x357, 0xa3386d28); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x363, &mut x364, x357, 0xf5d6f7e); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x365, &mut x366, x357, 0x50e641df); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x367, &mut x368, x357, 0x152f7109); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x369, &mut x370, x357, 0xed5456b3); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x371, &mut x372, x357, 0x1f166e6c); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x373, &mut x374, x357, 0xac0425a7); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x375, &mut x376, x357, 0xcf3ab6af); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x377, &mut x378, x357, 0x6b7fc310); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x379, &mut x380, x357, 0x3b883202); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x381, &mut x382, x357, 0xe9046565); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x383, &mut x384, 0x0, x382, x379); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x385, &mut x386, x384, x380, x377); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x387, &mut x388, x386, x378, x375); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x389, &mut x390, x388, x376, x373); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x391, &mut x392, x390, x374, x371); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x393, &mut x394, x392, x372, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x395, &mut x396, x394, x370, x367); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x397, &mut x398, x396, x368, x365); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x399, &mut x400, x398, x366, x363); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x401, &mut x402, x400, x364, x361); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x403, &mut x404, x402, x362, x359); + let x405: u32 = ((x404 as u32) + x360); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x406, &mut x407, 0x0, x331, x381); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x408, &mut x409, x407, x333, x383); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x410, &mut x411, x409, x335, x385); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x412, &mut x413, x411, x337, x387); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x414, &mut x415, x413, x339, x389); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x341, x391); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x343, x393); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x345, x395); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x347, x397); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x349, x399); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x426, &mut x427, x425, x351, x401); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x353, x403); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x355, x405); + let x432: u32 = ((x431 as u32) + (x356 as u32)); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x433, &mut x434, x3, (arg1[11])); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x435, &mut x436, x3, (arg1[10])); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x437, &mut x438, x3, (arg1[9])); + let mut x439: u32 = 0; + let mut x440: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x439, &mut x440, x3, (arg1[8])); + let mut x441: u32 = 0; + let mut x442: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x441, &mut x442, x3, (arg1[7])); + let mut x443: u32 = 0; + let mut x444: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x443, &mut x444, x3, (arg1[6])); + let mut x445: u32 = 0; + let mut x446: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x445, &mut x446, x3, (arg1[5])); + let mut x447: u32 = 0; + let mut x448: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x447, &mut x448, x3, (arg1[4])); + let mut x449: u32 = 0; + let mut x450: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x449, &mut x450, x3, (arg1[3])); + let mut x451: u32 = 0; + let mut x452: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x451, &mut x452, x3, (arg1[2])); + let mut x453: u32 = 0; + let mut x454: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x453, &mut x454, x3, (arg1[1])); + let mut x455: u32 = 0; + let mut x456: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x455, &mut x456, x3, (arg1[0])); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x457, &mut x458, 0x0, x456, x453); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x454, x451); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x461, &mut x462, x460, x452, x449); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x463, &mut x464, x462, x450, x447); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x465, &mut x466, x464, x448, x445); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x467, &mut x468, x466, x446, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x469, &mut x470, x468, x444, x441); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x471, &mut x472, x470, x442, x439); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x473, &mut x474, x472, x440, x437); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x475, &mut x476, x474, x438, x435); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x477, &mut x478, x476, x436, x433); + let x479: u32 = ((x478 as u32) + x434); + let mut x480: u32 = 0; + let mut x481: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x480, &mut x481, 0x0, x408, x455); + let mut x482: u32 = 0; + let mut x483: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x482, &mut x483, x481, x410, x457); + let mut x484: u32 = 0; + let mut x485: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x484, &mut x485, x483, x412, x459); + let mut x486: u32 = 0; + let mut x487: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x486, &mut x487, x485, x414, x461); + let mut x488: u32 = 0; + let mut x489: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x488, &mut x489, x487, x416, x463); + let mut x490: u32 = 0; + let mut x491: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x490, &mut x491, x489, x418, x465); + let mut x492: u32 = 0; + let mut x493: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x492, &mut x493, x491, x420, x467); + let mut x494: u32 = 0; + let mut x495: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x494, &mut x495, x493, x422, x469); + let mut x496: u32 = 0; + let mut x497: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x496, &mut x497, x495, x424, x471); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x498, &mut x499, x497, x426, x473); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x500, &mut x501, x499, x428, x475); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x502, &mut x503, x501, x430, x477); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x504, &mut x505, x503, x432, x479); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x506, &mut x507, x480, 0x5cb5bb93); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x508, &mut x509, x506, 0x8cb91e82); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x510, &mut x511, x506, 0xa3386d28); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x512, &mut x513, x506, 0xf5d6f7e); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x514, &mut x515, x506, 0x50e641df); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x516, &mut x517, x506, 0x152f7109); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x518, &mut x519, x506, 0xed5456b3); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x520, &mut x521, x506, 0x1f166e6c); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x522, &mut x523, x506, 0xac0425a7); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x524, &mut x525, x506, 0xcf3ab6af); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x526, &mut x527, x506, 0x6b7fc310); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x528, &mut x529, x506, 0x3b883202); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x530, &mut x531, x506, 0xe9046565); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x532, &mut x533, 0x0, x531, x528); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x534, &mut x535, x533, x529, x526); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x536, &mut x537, x535, x527, x524); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x538, &mut x539, x537, x525, x522); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x540, &mut x541, x539, x523, x520); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x542, &mut x543, x541, x521, x518); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x544, &mut x545, x543, x519, x516); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x517, x514); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x515, x512); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x513, x510); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x511, x508); + let x554: u32 = ((x553 as u32) + x509); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x555, &mut x556, 0x0, x480, x530); + let mut x557: u32 = 0; + let mut x558: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x557, &mut x558, x556, x482, x532); + let mut x559: u32 = 0; + let mut x560: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x559, &mut x560, x558, x484, x534); + let mut x561: u32 = 0; + let mut x562: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x561, &mut x562, x560, x486, x536); + let mut x563: u32 = 0; + let mut x564: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x563, &mut x564, x562, x488, x538); + let mut x565: u32 = 0; + let mut x566: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x565, &mut x566, x564, x490, x540); + let mut x567: u32 = 0; + let mut x568: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x567, &mut x568, x566, x492, x542); + let mut x569: u32 = 0; + let mut x570: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x569, &mut x570, x568, x494, x544); + let mut x571: u32 = 0; + let mut x572: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x571, &mut x572, x570, x496, x546); + let mut x573: u32 = 0; + let mut x574: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x573, &mut x574, x572, x498, x548); + let mut x575: u32 = 0; + let mut x576: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x575, &mut x576, x574, x500, x550); + let mut x577: u32 = 0; + let mut x578: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x577, &mut x578, x576, x502, x552); + let mut x579: u32 = 0; + let mut x580: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x579, &mut x580, x578, x504, x554); + let x581: u32 = ((x580 as u32) + (x505 as u32)); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x582, &mut x583, x4, (arg1[11])); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x584, &mut x585, x4, (arg1[10])); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x586, &mut x587, x4, (arg1[9])); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x588, &mut x589, x4, (arg1[8])); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x590, &mut x591, x4, (arg1[7])); + let mut x592: u32 = 0; + let mut x593: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x592, &mut x593, x4, (arg1[6])); + let mut x594: u32 = 0; + let mut x595: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x594, &mut x595, x4, (arg1[5])); + let mut x596: u32 = 0; + let mut x597: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x596, &mut x597, x4, (arg1[4])); + let mut x598: u32 = 0; + let mut x599: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x598, &mut x599, x4, (arg1[3])); + let mut x600: u32 = 0; + let mut x601: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x600, &mut x601, x4, (arg1[2])); + let mut x602: u32 = 0; + let mut x603: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x602, &mut x603, x4, (arg1[1])); + let mut x604: u32 = 0; + let mut x605: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x604, &mut x605, x4, (arg1[0])); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x606, &mut x607, 0x0, x605, x602); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x608, &mut x609, x607, x603, x600); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x610, &mut x611, x609, x601, x598); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x612, &mut x613, x611, x599, x596); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x614, &mut x615, x613, x597, x594); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x616, &mut x617, x615, x595, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x618, &mut x619, x617, x593, x590); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x620, &mut x621, x619, x591, x588); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x622, &mut x623, x621, x589, x586); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x624, &mut x625, x623, x587, x584); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x626, &mut x627, x625, x585, x582); + let x628: u32 = ((x627 as u32) + x583); + let mut x629: u32 = 0; + let mut x630: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x629, &mut x630, 0x0, x557, x604); + let mut x631: u32 = 0; + let mut x632: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x631, &mut x632, x630, x559, x606); + let mut x633: u32 = 0; + let mut x634: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x633, &mut x634, x632, x561, x608); + let mut x635: u32 = 0; + let mut x636: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x635, &mut x636, x634, x563, x610); + let mut x637: u32 = 0; + let mut x638: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x637, &mut x638, x636, x565, x612); + let mut x639: u32 = 0; + let mut x640: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x639, &mut x640, x638, x567, x614); + let mut x641: u32 = 0; + let mut x642: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x641, &mut x642, x640, x569, x616); + let mut x643: u32 = 0; + let mut x644: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x643, &mut x644, x642, x571, x618); + let mut x645: u32 = 0; + let mut x646: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x645, &mut x646, x644, x573, x620); + let mut x647: u32 = 0; + let mut x648: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x647, &mut x648, x646, x575, x622); + let mut x649: u32 = 0; + let mut x650: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x649, &mut x650, x648, x577, x624); + let mut x651: u32 = 0; + let mut x652: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x651, &mut x652, x650, x579, x626); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x653, &mut x654, x652, x581, x628); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x655, &mut x656, x629, 0x5cb5bb93); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x657, &mut x658, x655, 0x8cb91e82); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x659, &mut x660, x655, 0xa3386d28); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x661, &mut x662, x655, 0xf5d6f7e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x663, &mut x664, x655, 0x50e641df); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x665, &mut x666, x655, 0x152f7109); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x667, &mut x668, x655, 0xed5456b3); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x669, &mut x670, x655, 0x1f166e6c); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x671, &mut x672, x655, 0xac0425a7); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x673, &mut x674, x655, 0xcf3ab6af); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x675, &mut x676, x655, 0x6b7fc310); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x677, &mut x678, x655, 0x3b883202); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x679, &mut x680, x655, 0xe9046565); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x681, &mut x682, 0x0, x680, x677); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x683, &mut x684, x682, x678, x675); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x685, &mut x686, x684, x676, x673); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x687, &mut x688, x686, x674, x671); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x689, &mut x690, x688, x672, x669); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x691, &mut x692, x690, x670, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x693, &mut x694, x692, x668, x665); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x695, &mut x696, x694, x666, x663); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x697, &mut x698, x696, x664, x661); + let mut x699: u32 = 0; + let mut x700: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x699, &mut x700, x698, x662, x659); + let mut x701: u32 = 0; + let mut x702: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x701, &mut x702, x700, x660, x657); + let x703: u32 = ((x702 as u32) + x658); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x704, &mut x705, 0x0, x629, x679); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x631, x681); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x708, &mut x709, x707, x633, x683); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x635, x685); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x637, x687); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x639, x689); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x641, x691); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x643, x693); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x645, x695); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x647, x697); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x649, x699); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x726, &mut x727, x725, x651, x701); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x728, &mut x729, x727, x653, x703); + let x730: u32 = ((x729 as u32) + (x654 as u32)); + let mut x731: u32 = 0; + let mut x732: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x731, &mut x732, x5, (arg1[11])); + let mut x733: u32 = 0; + let mut x734: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x733, &mut x734, x5, (arg1[10])); + let mut x735: u32 = 0; + let mut x736: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x735, &mut x736, x5, (arg1[9])); + let mut x737: u32 = 0; + let mut x738: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x737, &mut x738, x5, (arg1[8])); + let mut x739: u32 = 0; + let mut x740: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x739, &mut x740, x5, (arg1[7])); + let mut x741: u32 = 0; + let mut x742: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x741, &mut x742, x5, (arg1[6])); + let mut x743: u32 = 0; + let mut x744: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x743, &mut x744, x5, (arg1[5])); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x745, &mut x746, x5, (arg1[4])); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x747, &mut x748, x5, (arg1[3])); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x749, &mut x750, x5, (arg1[2])); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x751, &mut x752, x5, (arg1[1])); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x753, &mut x754, x5, (arg1[0])); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x755, &mut x756, 0x0, x754, x751); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x757, &mut x758, x756, x752, x749); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x759, &mut x760, x758, x750, x747); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x761, &mut x762, x760, x748, x745); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x763, &mut x764, x762, x746, x743); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x765, &mut x766, x764, x744, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x767, &mut x768, x766, x742, x739); + let mut x769: u32 = 0; + let mut x770: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x769, &mut x770, x768, x740, x737); + let mut x771: u32 = 0; + let mut x772: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x771, &mut x772, x770, x738, x735); + let mut x773: u32 = 0; + let mut x774: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x773, &mut x774, x772, x736, x733); + let mut x775: u32 = 0; + let mut x776: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x775, &mut x776, x774, x734, x731); + let x777: u32 = ((x776 as u32) + x732); + let mut x778: u32 = 0; + let mut x779: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x778, &mut x779, 0x0, x706, x753); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x780, &mut x781, x779, x708, x755); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x782, &mut x783, x781, x710, x757); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x784, &mut x785, x783, x712, x759); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x786, &mut x787, x785, x714, x761); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x788, &mut x789, x787, x716, x763); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x790, &mut x791, x789, x718, x765); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x792, &mut x793, x791, x720, x767); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x794, &mut x795, x793, x722, x769); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x796, &mut x797, x795, x724, x771); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x798, &mut x799, x797, x726, x773); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x800, &mut x801, x799, x728, x775); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x802, &mut x803, x801, x730, x777); + let mut x804: u32 = 0; + let mut x805: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x804, &mut x805, x778, 0x5cb5bb93); + let mut x806: u32 = 0; + let mut x807: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x806, &mut x807, x804, 0x8cb91e82); + let mut x808: u32 = 0; + let mut x809: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x808, &mut x809, x804, 0xa3386d28); + let mut x810: u32 = 0; + let mut x811: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x810, &mut x811, x804, 0xf5d6f7e); + let mut x812: u32 = 0; + let mut x813: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x812, &mut x813, x804, 0x50e641df); + let mut x814: u32 = 0; + let mut x815: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x814, &mut x815, x804, 0x152f7109); + let mut x816: u32 = 0; + let mut x817: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x816, &mut x817, x804, 0xed5456b3); + let mut x818: u32 = 0; + let mut x819: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x818, &mut x819, x804, 0x1f166e6c); + let mut x820: u32 = 0; + let mut x821: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x820, &mut x821, x804, 0xac0425a7); + let mut x822: u32 = 0; + let mut x823: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x822, &mut x823, x804, 0xcf3ab6af); + let mut x824: u32 = 0; + let mut x825: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x824, &mut x825, x804, 0x6b7fc310); + let mut x826: u32 = 0; + let mut x827: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x826, &mut x827, x804, 0x3b883202); + let mut x828: u32 = 0; + let mut x829: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x828, &mut x829, x804, 0xe9046565); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x830, &mut x831, 0x0, x829, x826); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x832, &mut x833, x831, x827, x824); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x834, &mut x835, x833, x825, x822); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x836, &mut x837, x835, x823, x820); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x838, &mut x839, x837, x821, x818); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x840, &mut x841, x839, x819, x816); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x842, &mut x843, x841, x817, x814); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x844, &mut x845, x843, x815, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x846, &mut x847, x845, x813, x810); + let mut x848: u32 = 0; + let mut x849: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x848, &mut x849, x847, x811, x808); + let mut x850: u32 = 0; + let mut x851: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x850, &mut x851, x849, x809, x806); + let x852: u32 = ((x851 as u32) + x807); + let mut x853: u32 = 0; + let mut x854: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x853, &mut x854, 0x0, x778, x828); + let mut x855: u32 = 0; + let mut x856: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x855, &mut x856, x854, x780, x830); + let mut x857: u32 = 0; + let mut x858: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x857, &mut x858, x856, x782, x832); + let mut x859: u32 = 0; + let mut x860: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x859, &mut x860, x858, x784, x834); + let mut x861: u32 = 0; + let mut x862: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x861, &mut x862, x860, x786, x836); + let mut x863: u32 = 0; + let mut x864: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x863, &mut x864, x862, x788, x838); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x865, &mut x866, x864, x790, x840); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x867, &mut x868, x866, x792, x842); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x869, &mut x870, x868, x794, x844); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x871, &mut x872, x870, x796, x846); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x873, &mut x874, x872, x798, x848); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x875, &mut x876, x874, x800, x850); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x877, &mut x878, x876, x802, x852); + let x879: u32 = ((x878 as u32) + (x803 as u32)); + let mut x880: u32 = 0; + let mut x881: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x880, &mut x881, x6, (arg1[11])); + let mut x882: u32 = 0; + let mut x883: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x882, &mut x883, x6, (arg1[10])); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x884, &mut x885, x6, (arg1[9])); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x886, &mut x887, x6, (arg1[8])); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x888, &mut x889, x6, (arg1[7])); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x890, &mut x891, x6, (arg1[6])); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x892, &mut x893, x6, (arg1[5])); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x894, &mut x895, x6, (arg1[4])); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x896, &mut x897, x6, (arg1[3])); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x898, &mut x899, x6, (arg1[2])); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x900, &mut x901, x6, (arg1[1])); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x902, &mut x903, x6, (arg1[0])); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x904, &mut x905, 0x0, x903, x900); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x906, &mut x907, x905, x901, x898); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x908, &mut x909, x907, x899, x896); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x910, &mut x911, x909, x897, x894); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x912, &mut x913, x911, x895, x892); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x914, &mut x915, x913, x893, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x916, &mut x917, x915, x891, x888); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x918, &mut x919, x917, x889, x886); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x920, &mut x921, x919, x887, x884); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x922, &mut x923, x921, x885, x882); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x924, &mut x925, x923, x883, x880); + let x926: u32 = ((x925 as u32) + x881); + let mut x927: u32 = 0; + let mut x928: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x927, &mut x928, 0x0, x855, x902); + let mut x929: u32 = 0; + let mut x930: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x929, &mut x930, x928, x857, x904); + let mut x931: u32 = 0; + let mut x932: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x931, &mut x932, x930, x859, x906); + let mut x933: u32 = 0; + let mut x934: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x933, &mut x934, x932, x861, x908); + let mut x935: u32 = 0; + let mut x936: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x935, &mut x936, x934, x863, x910); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x937, &mut x938, x936, x865, x912); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x939, &mut x940, x938, x867, x914); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x941, &mut x942, x940, x869, x916); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x943, &mut x944, x942, x871, x918); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x945, &mut x946, x944, x873, x920); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x947, &mut x948, x946, x875, x922); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x949, &mut x950, x948, x877, x924); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x951, &mut x952, x950, x879, x926); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x953, &mut x954, x927, 0x5cb5bb93); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x955, &mut x956, x953, 0x8cb91e82); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x957, &mut x958, x953, 0xa3386d28); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x959, &mut x960, x953, 0xf5d6f7e); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x961, &mut x962, x953, 0x50e641df); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x963, &mut x964, x953, 0x152f7109); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x965, &mut x966, x953, 0xed5456b3); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x967, &mut x968, x953, 0x1f166e6c); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x969, &mut x970, x953, 0xac0425a7); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x971, &mut x972, x953, 0xcf3ab6af); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x973, &mut x974, x953, 0x6b7fc310); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x975, &mut x976, x953, 0x3b883202); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x977, &mut x978, x953, 0xe9046565); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x979, &mut x980, 0x0, x978, x975); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x981, &mut x982, x980, x976, x973); + let mut x983: u32 = 0; + let mut x984: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x983, &mut x984, x982, x974, x971); + let mut x985: u32 = 0; + let mut x986: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x985, &mut x986, x984, x972, x969); + let mut x987: u32 = 0; + let mut x988: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x987, &mut x988, x986, x970, x967); + let mut x989: u32 = 0; + let mut x990: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x989, &mut x990, x988, x968, x965); + let mut x991: u32 = 0; + let mut x992: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x991, &mut x992, x990, x966, x963); + let mut x993: u32 = 0; + let mut x994: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x993, &mut x994, x992, x964, x961); + let mut x995: u32 = 0; + let mut x996: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x995, &mut x996, x994, x962, x959); + let mut x997: u32 = 0; + let mut x998: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x997, &mut x998, x996, x960, x957); + let mut x999: u32 = 0; + let mut x1000: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x999, &mut x1000, x998, x958, x955); + let x1001: u32 = ((x1000 as u32) + x956); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1002, &mut x1003, 0x0, x927, x977); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1004, &mut x1005, x1003, x929, x979); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1006, &mut x1007, x1005, x931, x981); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1008, &mut x1009, x1007, x933, x983); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1010, &mut x1011, x1009, x935, x985); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1012, &mut x1013, x1011, x937, x987); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1014, &mut x1015, x1013, x939, x989); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1016, &mut x1017, x1015, x941, x991); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1018, &mut x1019, x1017, x943, x993); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1020, &mut x1021, x1019, x945, x995); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1022, &mut x1023, x1021, x947, x997); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1024, &mut x1025, x1023, x949, x999); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1026, &mut x1027, x1025, x951, x1001); + let x1028: u32 = ((x1027 as u32) + (x952 as u32)); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1029, &mut x1030, x7, (arg1[11])); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1031, &mut x1032, x7, (arg1[10])); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1033, &mut x1034, x7, (arg1[9])); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1035, &mut x1036, x7, (arg1[8])); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1037, &mut x1038, x7, (arg1[7])); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1039, &mut x1040, x7, (arg1[6])); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1041, &mut x1042, x7, (arg1[5])); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1043, &mut x1044, x7, (arg1[4])); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1045, &mut x1046, x7, (arg1[3])); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1047, &mut x1048, x7, (arg1[2])); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1049, &mut x1050, x7, (arg1[1])); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1051, &mut x1052, x7, (arg1[0])); + let mut x1053: u32 = 0; + let mut x1054: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1053, &mut x1054, 0x0, x1052, x1049); + let mut x1055: u32 = 0; + let mut x1056: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1055, &mut x1056, x1054, x1050, x1047); + let mut x1057: u32 = 0; + let mut x1058: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1057, &mut x1058, x1056, x1048, x1045); + let mut x1059: u32 = 0; + let mut x1060: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1059, &mut x1060, x1058, x1046, x1043); + let mut x1061: u32 = 0; + let mut x1062: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1061, &mut x1062, x1060, x1044, x1041); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1063, &mut x1064, x1062, x1042, x1039); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1040, x1037); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1038, x1035); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1036, x1033); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1034, x1031); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1032, x1029); + let x1075: u32 = ((x1074 as u32) + x1030); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1076, &mut x1077, 0x0, x1004, x1051); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1006, x1053); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1008, x1055); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1010, x1057); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1084, &mut x1085, x1083, x1012, x1059); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1014, x1061); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1016, x1063); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1018, x1065); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1020, x1067); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1022, x1069); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1024, x1071); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1026, x1073); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1028, x1075); + let mut x1102: u32 = 0; + let mut x1103: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1102, &mut x1103, x1076, 0x5cb5bb93); + let mut x1104: u32 = 0; + let mut x1105: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1104, &mut x1105, x1102, 0x8cb91e82); + let mut x1106: u32 = 0; + let mut x1107: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1106, &mut x1107, x1102, 0xa3386d28); + let mut x1108: u32 = 0; + let mut x1109: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1108, &mut x1109, x1102, 0xf5d6f7e); + let mut x1110: u32 = 0; + let mut x1111: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1110, &mut x1111, x1102, 0x50e641df); + let mut x1112: u32 = 0; + let mut x1113: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1112, &mut x1113, x1102, 0x152f7109); + let mut x1114: u32 = 0; + let mut x1115: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1114, &mut x1115, x1102, 0xed5456b3); + let mut x1116: u32 = 0; + let mut x1117: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1116, &mut x1117, x1102, 0x1f166e6c); + let mut x1118: u32 = 0; + let mut x1119: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1118, &mut x1119, x1102, 0xac0425a7); + let mut x1120: u32 = 0; + let mut x1121: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1120, &mut x1121, x1102, 0xcf3ab6af); + let mut x1122: u32 = 0; + let mut x1123: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1122, &mut x1123, x1102, 0x6b7fc310); + let mut x1124: u32 = 0; + let mut x1125: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1124, &mut x1125, x1102, 0x3b883202); + let mut x1126: u32 = 0; + let mut x1127: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1126, &mut x1127, x1102, 0xe9046565); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1128, &mut x1129, 0x0, x1127, x1124); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1125, x1122); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1123, x1120); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1121, x1118); + let mut x1136: u32 = 0; + let mut x1137: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1136, &mut x1137, x1135, x1119, x1116); + let mut x1138: u32 = 0; + let mut x1139: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1138, &mut x1139, x1137, x1117, x1114); + let mut x1140: u32 = 0; + let mut x1141: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1140, &mut x1141, x1139, x1115, x1112); + let mut x1142: u32 = 0; + let mut x1143: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1142, &mut x1143, x1141, x1113, x1110); + let mut x1144: u32 = 0; + let mut x1145: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1144, &mut x1145, x1143, x1111, x1108); + let mut x1146: u32 = 0; + let mut x1147: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1146, &mut x1147, x1145, x1109, x1106); + let mut x1148: u32 = 0; + let mut x1149: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1148, &mut x1149, x1147, x1107, x1104); + let x1150: u32 = ((x1149 as u32) + x1105); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1151, &mut x1152, 0x0, x1076, x1126); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1078, x1128); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1080, x1130); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1082, x1132); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1084, x1134); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1086, x1136); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1088, x1138); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1090, x1140); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1092, x1142); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1094, x1144); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1096, x1146); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1098, x1148); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1100, x1150); + let x1177: u32 = ((x1176 as u32) + (x1101 as u32)); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1178, &mut x1179, x8, (arg1[11])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1180, &mut x1181, x8, (arg1[10])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1182, &mut x1183, x8, (arg1[9])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1184, &mut x1185, x8, (arg1[8])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1186, &mut x1187, x8, (arg1[7])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1188, &mut x1189, x8, (arg1[6])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1190, &mut x1191, x8, (arg1[5])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1192, &mut x1193, x8, (arg1[4])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1194, &mut x1195, x8, (arg1[3])); + let mut x1196: u32 = 0; + let mut x1197: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1196, &mut x1197, x8, (arg1[2])); + let mut x1198: u32 = 0; + let mut x1199: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1198, &mut x1199, x8, (arg1[1])); + let mut x1200: u32 = 0; + let mut x1201: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1200, &mut x1201, x8, (arg1[0])); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1202, &mut x1203, 0x0, x1201, x1198); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1199, x1196); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1197, x1194); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1195, x1192); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1193, x1190); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1191, x1188); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1189, x1186); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1187, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1185, x1182); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1183, x1180); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1181, x1178); + let x1224: u32 = ((x1223 as u32) + x1179); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1225, &mut x1226, 0x0, x1153, x1200); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1155, x1202); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1157, x1204); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1159, x1206); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1161, x1208); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1163, x1210); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1165, x1212); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1167, x1214); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1169, x1216); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1171, x1218); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1220); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1222); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1224); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1251, &mut x1252, x1225, 0x5cb5bb93); + let mut x1253: u32 = 0; + let mut x1254: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1253, &mut x1254, x1251, 0x8cb91e82); + let mut x1255: u32 = 0; + let mut x1256: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1255, &mut x1256, x1251, 0xa3386d28); + let mut x1257: u32 = 0; + let mut x1258: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1257, &mut x1258, x1251, 0xf5d6f7e); + let mut x1259: u32 = 0; + let mut x1260: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1259, &mut x1260, x1251, 0x50e641df); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1261, &mut x1262, x1251, 0x152f7109); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1263, &mut x1264, x1251, 0xed5456b3); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1265, &mut x1266, x1251, 0x1f166e6c); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1267, &mut x1268, x1251, 0xac0425a7); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1269, &mut x1270, x1251, 0xcf3ab6af); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1271, &mut x1272, x1251, 0x6b7fc310); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1273, &mut x1274, x1251, 0x3b883202); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1275, &mut x1276, x1251, 0xe9046565); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1277, &mut x1278, 0x0, x1276, x1273); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1274, x1271); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1272, x1269); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1283, &mut x1284, x1282, x1270, x1267); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1268, x1265); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1266, x1263); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1264, x1261); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1262, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1260, x1257); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1258, x1255); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1256, x1253); + let x1299: u32 = ((x1298 as u32) + x1254); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1300, &mut x1301, 0x0, x1225, x1275); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1227, x1277); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1229, x1279); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1231, x1281); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1233, x1283); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1235, x1285); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1237, x1287); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1239, x1289); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1241, x1291); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1243, x1293); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1245, x1295); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1247, x1297); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1249, x1299); + let x1326: u32 = ((x1325 as u32) + (x1250 as u32)); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1327, &mut x1328, x9, (arg1[11])); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1329, &mut x1330, x9, (arg1[10])); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1331, &mut x1332, x9, (arg1[9])); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1333, &mut x1334, x9, (arg1[8])); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1335, &mut x1336, x9, (arg1[7])); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1337, &mut x1338, x9, (arg1[6])); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1339, &mut x1340, x9, (arg1[5])); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1341, &mut x1342, x9, (arg1[4])); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1343, &mut x1344, x9, (arg1[3])); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1345, &mut x1346, x9, (arg1[2])); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1347, &mut x1348, x9, (arg1[1])); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1349, &mut x1350, x9, (arg1[0])); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1351, &mut x1352, 0x0, x1350, x1347); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1348, x1345); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1346, x1343); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1344, x1341); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1342, x1339); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1340, x1337); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1338, x1335); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1336, x1333); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1334, x1331); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1332, x1329); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1330, x1327); + let x1373: u32 = ((x1372 as u32) + x1328); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1374, &mut x1375, 0x0, x1302, x1349); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1304, x1351); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1306, x1353); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1308, x1355); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1310, x1357); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1312, x1359); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1314, x1361); + let mut x1388: u32 = 0; + let mut x1389: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1388, &mut x1389, x1387, x1316, x1363); + let mut x1390: u32 = 0; + let mut x1391: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1390, &mut x1391, x1389, x1318, x1365); + let mut x1392: u32 = 0; + let mut x1393: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1392, &mut x1393, x1391, x1320, x1367); + let mut x1394: u32 = 0; + let mut x1395: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1394, &mut x1395, x1393, x1322, x1369); + let mut x1396: u32 = 0; + let mut x1397: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1396, &mut x1397, x1395, x1324, x1371); + let mut x1398: u32 = 0; + let mut x1399: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1398, &mut x1399, x1397, x1326, x1373); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1400, &mut x1401, x1374, 0x5cb5bb93); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1402, &mut x1403, x1400, 0x8cb91e82); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1404, &mut x1405, x1400, 0xa3386d28); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1406, &mut x1407, x1400, 0xf5d6f7e); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1408, &mut x1409, x1400, 0x50e641df); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1410, &mut x1411, x1400, 0x152f7109); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1412, &mut x1413, x1400, 0xed5456b3); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1414, &mut x1415, x1400, 0x1f166e6c); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1416, &mut x1417, x1400, 0xac0425a7); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1418, &mut x1419, x1400, 0xcf3ab6af); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1420, &mut x1421, x1400, 0x6b7fc310); + let mut x1422: u32 = 0; + let mut x1423: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1422, &mut x1423, x1400, 0x3b883202); + let mut x1424: u32 = 0; + let mut x1425: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1424, &mut x1425, x1400, 0xe9046565); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1426, &mut x1427, 0x0, x1425, x1422); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1423, x1420); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1421, x1418); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1419, x1416); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1417, x1414); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1415, x1412); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1413, x1410); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1411, x1408); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1409, x1406); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1407, x1404); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1405, x1402); + let x1448: u32 = ((x1447 as u32) + x1403); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1449, &mut x1450, 0x0, x1374, x1424); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1376, x1426); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1378, x1428); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1380, x1430); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1382, x1432); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1384, x1434); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1386, x1436); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1388, x1438); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1390, x1440); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1392, x1442); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1394, x1444); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1396, x1446); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1398, x1448); + let x1475: u32 = ((x1474 as u32) + (x1399 as u32)); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1476, &mut x1477, x10, (arg1[11])); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1478, &mut x1479, x10, (arg1[10])); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1480, &mut x1481, x10, (arg1[9])); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1482, &mut x1483, x10, (arg1[8])); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1484, &mut x1485, x10, (arg1[7])); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1486, &mut x1487, x10, (arg1[6])); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1488, &mut x1489, x10, (arg1[5])); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1490, &mut x1491, x10, (arg1[4])); + let mut x1492: u32 = 0; + let mut x1493: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1492, &mut x1493, x10, (arg1[3])); + let mut x1494: u32 = 0; + let mut x1495: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1494, &mut x1495, x10, (arg1[2])); + let mut x1496: u32 = 0; + let mut x1497: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1496, &mut x1497, x10, (arg1[1])); + let mut x1498: u32 = 0; + let mut x1499: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1498, &mut x1499, x10, (arg1[0])); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1500, &mut x1501, 0x0, x1499, x1496); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1497, x1494); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1495, x1492); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1493, x1490); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1491, x1488); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1489, x1486); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1487, x1484); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1485, x1482); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1483, x1480); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1481, x1478); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1479, x1476); + let x1522: u32 = ((x1521 as u32) + x1477); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1451, x1498); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1453, x1500); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1455, x1502); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1504); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1506); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1508); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1510); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1512); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1514); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1516); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1518); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1520); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1522); + let mut x1549: u32 = 0; + let mut x1550: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1549, &mut x1550, x1523, 0x5cb5bb93); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1551, &mut x1552, x1549, 0x8cb91e82); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1553, &mut x1554, x1549, 0xa3386d28); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1555, &mut x1556, x1549, 0xf5d6f7e); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1557, &mut x1558, x1549, 0x50e641df); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1559, &mut x1560, x1549, 0x152f7109); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1561, &mut x1562, x1549, 0xed5456b3); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1563, &mut x1564, x1549, 0x1f166e6c); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1565, &mut x1566, x1549, 0xac0425a7); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1567, &mut x1568, x1549, 0xcf3ab6af); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1569, &mut x1570, x1549, 0x6b7fc310); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1571, &mut x1572, x1549, 0x3b883202); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1573, &mut x1574, x1549, 0xe9046565); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let x1597: u32 = ((x1596 as u32) + x1552); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1598, &mut x1599, 0x0, x1523, x1573); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1525, x1575); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1527, x1577); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1529, x1579); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1531, x1581); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1533, x1583); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1535, x1585); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1537, x1587); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1539, x1589); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1541, x1591); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1543, x1593); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1545, x1595); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1547, x1597); + let x1624: u32 = ((x1623 as u32) + (x1548 as u32)); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1625, &mut x1626, x11, (arg1[11])); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1627, &mut x1628, x11, (arg1[10])); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1629, &mut x1630, x11, (arg1[9])); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1631, &mut x1632, x11, (arg1[8])); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1633, &mut x1634, x11, (arg1[7])); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1635, &mut x1636, x11, (arg1[6])); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1637, &mut x1638, x11, (arg1[5])); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1639, &mut x1640, x11, (arg1[4])); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1641, &mut x1642, x11, (arg1[3])); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1643, &mut x1644, x11, (arg1[2])); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1645, &mut x1646, x11, (arg1[1])); + let mut x1647: u32 = 0; + let mut x1648: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1647, &mut x1648, x11, (arg1[0])); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1649, &mut x1650, 0x0, x1648, x1645); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1646, x1643); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1644, x1641); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1642, x1639); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1640, x1637); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1638, x1635); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1636, x1633); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1634, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1632, x1629); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1630, x1627); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1628, x1625); + let x1671: u32 = ((x1670 as u32) + x1626); + let mut x1672: u32 = 0; + let mut x1673: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1672, &mut x1673, 0x0, x1600, x1647); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1674, &mut x1675, x1673, x1602, x1649); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1604, x1651); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1606, x1653); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1608, x1655); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1610, x1657); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1612, x1659); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1614, x1661); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1616, x1663); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1618, x1665); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1620, x1667); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1622, x1669); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1624, x1671); + let mut x1698: u32 = 0; + let mut x1699: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1698, &mut x1699, x1672, 0x5cb5bb93); + let mut x1700: u32 = 0; + let mut x1701: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1700, &mut x1701, x1698, 0x8cb91e82); + let mut x1702: u32 = 0; + let mut x1703: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1702, &mut x1703, x1698, 0xa3386d28); + let mut x1704: u32 = 0; + let mut x1705: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1704, &mut x1705, x1698, 0xf5d6f7e); + let mut x1706: u32 = 0; + let mut x1707: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1706, &mut x1707, x1698, 0x50e641df); + let mut x1708: u32 = 0; + let mut x1709: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1708, &mut x1709, x1698, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1710, &mut x1711, x1698, 0xed5456b3); + let mut x1712: u32 = 0; + let mut x1713: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1712, &mut x1713, x1698, 0x1f166e6c); + let mut x1714: u32 = 0; + let mut x1715: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1714, &mut x1715, x1698, 0xac0425a7); + let mut x1716: u32 = 0; + let mut x1717: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1716, &mut x1717, x1698, 0xcf3ab6af); + let mut x1718: u32 = 0; + let mut x1719: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1718, &mut x1719, x1698, 0x6b7fc310); + let mut x1720: u32 = 0; + let mut x1721: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1720, &mut x1721, x1698, 0x3b883202); + let mut x1722: u32 = 0; + let mut x1723: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1722, &mut x1723, x1698, 0xe9046565); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1724, &mut x1725, 0x0, x1723, x1720); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1721, x1718); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1719, x1716); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1717, x1714); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1715, x1712); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1713, x1710); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1711, x1708); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1709, x1706); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1707, x1704); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1705, x1702); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1703, x1700); + let x1746: u32 = ((x1745 as u32) + x1701); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1747, &mut x1748, 0x0, x1672, x1722); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1674, x1724); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1676, x1726); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1678, x1728); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1680, x1730); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1757, &mut x1758, x1756, x1682, x1732); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1684, x1734); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1686, x1736); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1688, x1738); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1690, x1740); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1692, x1742); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1694, x1744); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1696, x1746); + let x1773: u32 = ((x1772 as u32) + (x1697 as u32)); + let mut x1774: u32 = 0; + let mut x1775: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1774, &mut x1775, 0x0, x1749, 0xe9046565); + let mut x1776: u32 = 0; + let mut x1777: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1776, &mut x1777, x1775, x1751, 0x3b883202); + let mut x1778: u32 = 0; + let mut x1779: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1778, &mut x1779, x1777, x1753, 0x6b7fc310); + let mut x1780: u32 = 0; + let mut x1781: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1780, &mut x1781, x1779, x1755, 0xcf3ab6af); + let mut x1782: u32 = 0; + let mut x1783: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1782, &mut x1783, x1781, x1757, 0xac0425a7); + let mut x1784: u32 = 0; + let mut x1785: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1784, &mut x1785, x1783, x1759, 0x1f166e6c); + let mut x1786: u32 = 0; + let mut x1787: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1786, &mut x1787, x1785, x1761, 0xed5456b3); + let mut x1788: u32 = 0; + let mut x1789: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1788, &mut x1789, x1787, x1763, 0x152f7109); + let mut x1790: u32 = 0; + let mut x1791: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1790, &mut x1791, x1789, x1765, 0x50e641df); + let mut x1792: u32 = 0; + let mut x1793: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1792, &mut x1793, x1791, x1767, 0xf5d6f7e); + let mut x1794: u32 = 0; + let mut x1795: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1794, &mut x1795, x1793, x1769, 0xa3386d28); + let mut x1796: u32 = 0; + let mut x1797: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1796, &mut x1797, x1795, x1771, 0x8cb91e82); + let mut x1798: u32 = 0; + let mut x1799: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1798, &mut x1799, x1797, x1773, (0x0 as u32)); + let mut x1800: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1800, x1799, x1774, x1749); + let mut x1801: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1801, x1799, x1776, x1751); + let mut x1802: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1802, x1799, x1778, x1753); + let mut x1803: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1803, x1799, x1780, x1755); + let mut x1804: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1804, x1799, x1782, x1757); + let mut x1805: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1805, x1799, x1784, x1759); + let mut x1806: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1806, x1799, x1786, x1761); + let mut x1807: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1807, x1799, x1788, x1763); + let mut x1808: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1808, x1799, x1790, x1765); + let mut x1809: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1809, x1799, x1792, x1767); + let mut x1810: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1810, x1799, x1794, x1769); + let mut x1811: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1811, x1799, x1796, x1771); + out1[0] = x1800; + out1[1] = x1801; + out1[2] = x1802; + out1[3] = x1803; + out1[4] = x1804; + out1[5] = x1805; + out1[6] = x1806; + out1[7] = x1807; + out1[8] = x1808; + out1[9] = x1809; + out1[10] = x1810; + out1[11] = x1811; +} +/// The function fiat_bp384_scalar_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_add( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x25, &mut x26, 0x0, x1, 0xe9046565); + let mut x27: u32 = 0; + let mut x28: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x27, &mut x28, x26, x3, 0x3b883202); + let mut x29: u32 = 0; + let mut x30: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x29, &mut x30, x28, x5, 0x6b7fc310); + let mut x31: u32 = 0; + let mut x32: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x31, &mut x32, x30, x7, 0xcf3ab6af); + let mut x33: u32 = 0; + let mut x34: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x33, &mut x34, x32, x9, 0xac0425a7); + let mut x35: u32 = 0; + let mut x36: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x35, &mut x36, x34, x11, 0x1f166e6c); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x37, &mut x38, x36, x13, 0xed5456b3); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x39, &mut x40, x38, x15, 0x152f7109); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x41, &mut x42, x40, x17, 0x50e641df); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x43, &mut x44, x42, x19, 0xf5d6f7e); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x45, &mut x46, x44, x21, 0xa3386d28); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x47, &mut x48, x46, x23, 0x8cb91e82); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x49, &mut x50, x48, (x24 as u32), (0x0 as u32)); + let mut x51: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x51, x50, x25, x1); + let mut x52: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x52, x50, x27, x3); + let mut x53: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x53, x50, x29, x5); + let mut x54: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x54, x50, x31, x7); + let mut x55: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x55, x50, x33, x9); + let mut x56: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x56, x50, x35, x11); + let mut x57: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x57, x50, x37, x13); + let mut x58: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x58, x50, x39, x15); + let mut x59: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x59, x50, x41, x17); + let mut x60: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x60, x50, x43, x19); + let mut x61: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x61, x50, x45, x21); + let mut x62: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x62, x50, x47, x23); + out1[0] = x51; + out1[1] = x52; + out1[2] = x53; + out1[3] = x54; + out1[4] = x55; + out1[5] = x56; + out1[6] = x57; + out1[7] = x58; + out1[8] = x59; + out1[9] = x60; + out1[10] = x61; + out1[11] = x62; +} +/// The function fiat_bp384_scalar_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_sub( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x25, x24, (0x0 as u32), 0xffffffff); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x26, &mut x27, 0x0, x1, (x25 & 0xe9046565)); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x28, &mut x29, x27, x3, (x25 & 0x3b883202)); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x30, &mut x31, x29, x5, (x25 & 0x6b7fc310)); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x32, &mut x33, x31, x7, (x25 & 0xcf3ab6af)); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x34, &mut x35, x33, x9, (x25 & 0xac0425a7)); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x36, &mut x37, x35, x11, (x25 & 0x1f166e6c)); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x13, (x25 & 0xed5456b3)); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x15, (x25 & 0x152f7109)); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x17, (x25 & 0x50e641df)); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x19, (x25 & 0xf5d6f7e)); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x21, (x25 & 0xa3386d28)); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x23, (x25 & 0x8cb91e82)); + out1[0] = x26; + out1[1] = x28; + out1[2] = x30; + out1[3] = x32; + out1[4] = x34; + out1[5] = x36; + out1[6] = x38; + out1[7] = x40; + out1[8] = x42; + out1[9] = x44; + out1[10] = x46; + out1[11] = x48; +} +/// The function fiat_bp384_scalar_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_opp( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let mut x1: u32 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); + let mut x25: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x25, x24, (0x0 as u32), 0xffffffff); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x26, &mut x27, 0x0, x1, (x25 & 0xe9046565)); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x28, &mut x29, x27, x3, (x25 & 0x3b883202)); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x30, &mut x31, x29, x5, (x25 & 0x6b7fc310)); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x32, &mut x33, x31, x7, (x25 & 0xcf3ab6af)); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x34, &mut x35, x33, x9, (x25 & 0xac0425a7)); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x36, &mut x37, x35, x11, (x25 & 0x1f166e6c)); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x13, (x25 & 0xed5456b3)); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x15, (x25 & 0x152f7109)); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x17, (x25 & 0x50e641df)); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x19, (x25 & 0xf5d6f7e)); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x21, (x25 & 0xa3386d28)); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x23, (x25 & 0x8cb91e82)); + out1[0] = x26; + out1[1] = x28; + out1[2] = x30; + out1[3] = x32; + out1[4] = x34; + out1[5] = x36; + out1[6] = x38; + out1[7] = x40; + out1[8] = x42; + out1[9] = x44; + out1[10] = x46; + out1[11] = x48; +} +/// The function fiat_bp384_scalar_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^32)⁻¹ mod m)^12) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_from_montgomery( + out1: &mut fiat_bp384_scalar_non_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[0]); + let mut x2: u32 = 0; + let mut x3: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x2, &mut x3, x1, 0x5cb5bb93); + let mut x4: u32 = 0; + let mut x5: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x4, &mut x5, x2, 0x8cb91e82); + let mut x6: u32 = 0; + let mut x7: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x6, &mut x7, x2, 0xa3386d28); + let mut x8: u32 = 0; + let mut x9: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x8, &mut x9, x2, 0xf5d6f7e); + let mut x10: u32 = 0; + let mut x11: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x10, &mut x11, x2, 0x50e641df); + let mut x12: u32 = 0; + let mut x13: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x12, &mut x13, x2, 0x152f7109); + let mut x14: u32 = 0; + let mut x15: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x14, &mut x15, x2, 0xed5456b3); + let mut x16: u32 = 0; + let mut x17: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x16, &mut x17, x2, 0x1f166e6c); + let mut x18: u32 = 0; + let mut x19: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x18, &mut x19, x2, 0xac0425a7); + let mut x20: u32 = 0; + let mut x21: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x20, &mut x21, x2, 0xcf3ab6af); + let mut x22: u32 = 0; + let mut x23: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x22, &mut x23, x2, 0x6b7fc310); + let mut x24: u32 = 0; + let mut x25: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x24, &mut x25, x2, 0x3b883202); + let mut x26: u32 = 0; + let mut x27: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x26, &mut x27, x2, 0xe9046565); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x28, &mut x29, 0x0, x27, x24); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x30, &mut x31, x29, x25, x22); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x32, &mut x33, x31, x23, x20); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x34, &mut x35, x33, x21, x18); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x36, &mut x37, x35, x19, x16); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x17, x14); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x15, x12); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x13, x10); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x11, x8); + let mut x46: u32 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x9, x6); + let mut x48: u32 = 0; + let mut x49: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x7, x4); + let mut x50: u32 = 0; + let mut x51: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x50, &mut x51, 0x0, x1, x26); + let mut x52: u32 = 0; + let mut x53: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), x28); + let mut x54: u32 = 0; + let mut x55: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), x30); + let mut x56: u32 = 0; + let mut x57: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), x32); + let mut x58: u32 = 0; + let mut x59: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x58, &mut x59, x57, (0x0 as u32), x34); + let mut x60: u32 = 0; + let mut x61: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x60, &mut x61, x59, (0x0 as u32), x36); + let mut x62: u32 = 0; + let mut x63: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x62, &mut x63, x61, (0x0 as u32), x38); + let mut x64: u32 = 0; + let mut x65: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x64, &mut x65, x63, (0x0 as u32), x40); + let mut x66: u32 = 0; + let mut x67: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x66, &mut x67, x65, (0x0 as u32), x42); + let mut x68: u32 = 0; + let mut x69: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x44); + let mut x70: u32 = 0; + let mut x71: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x46); + let mut x72: u32 = 0; + let mut x73: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x48); + let mut x74: u32 = 0; + let mut x75: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x74, &mut x75, 0x0, x52, (arg1[1])); + let mut x76: u32 = 0; + let mut x77: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x76, &mut x77, x75, x54, (0x0 as u32)); + let mut x78: u32 = 0; + let mut x79: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x78, &mut x79, x77, x56, (0x0 as u32)); + let mut x80: u32 = 0; + let mut x81: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x80, &mut x81, x79, x58, (0x0 as u32)); + let mut x82: u32 = 0; + let mut x83: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x82, &mut x83, x81, x60, (0x0 as u32)); + let mut x84: u32 = 0; + let mut x85: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x84, &mut x85, x83, x62, (0x0 as u32)); + let mut x86: u32 = 0; + let mut x87: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x86, &mut x87, x85, x64, (0x0 as u32)); + let mut x88: u32 = 0; + let mut x89: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x88, &mut x89, x87, x66, (0x0 as u32)); + let mut x90: u32 = 0; + let mut x91: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x90, &mut x91, x89, x68, (0x0 as u32)); + let mut x92: u32 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x92, &mut x93, x91, x70, (0x0 as u32)); + let mut x94: u32 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x94, &mut x95, x93, x72, (0x0 as u32)); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x96, &mut x97, x74, 0x5cb5bb93); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x98, &mut x99, x96, 0x8cb91e82); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x100, &mut x101, x96, 0xa3386d28); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x102, &mut x103, x96, 0xf5d6f7e); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x104, &mut x105, x96, 0x50e641df); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x106, &mut x107, x96, 0x152f7109); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x108, &mut x109, x96, 0xed5456b3); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x110, &mut x111, x96, 0x1f166e6c); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x112, &mut x113, x96, 0xac0425a7); + let mut x114: u32 = 0; + let mut x115: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x114, &mut x115, x96, 0xcf3ab6af); + let mut x116: u32 = 0; + let mut x117: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x116, &mut x117, x96, 0x6b7fc310); + let mut x118: u32 = 0; + let mut x119: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x118, &mut x119, x96, 0x3b883202); + let mut x120: u32 = 0; + let mut x121: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x120, &mut x121, x96, 0xe9046565); + let mut x122: u32 = 0; + let mut x123: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x122, &mut x123, 0x0, x121, x118); + let mut x124: u32 = 0; + let mut x125: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x124, &mut x125, x123, x119, x116); + let mut x126: u32 = 0; + let mut x127: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x126, &mut x127, x125, x117, x114); + let mut x128: u32 = 0; + let mut x129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x128, &mut x129, x127, x115, x112); + let mut x130: u32 = 0; + let mut x131: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x130, &mut x131, x129, x113, x110); + let mut x132: u32 = 0; + let mut x133: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x132, &mut x133, x131, x111, x108); + let mut x134: u32 = 0; + let mut x135: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x134, &mut x135, x133, x109, x106); + let mut x136: u32 = 0; + let mut x137: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x136, &mut x137, x135, x107, x104); + let mut x138: u32 = 0; + let mut x139: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x138, &mut x139, x137, x105, x102); + let mut x140: u32 = 0; + let mut x141: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x140, &mut x141, x139, x103, x100); + let mut x142: u32 = 0; + let mut x143: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x142, &mut x143, x141, x101, x98); + let mut x144: u32 = 0; + let mut x145: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x144, &mut x145, 0x0, x74, x120); + let mut x146: u32 = 0; + let mut x147: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x146, &mut x147, x145, x76, x122); + let mut x148: u32 = 0; + let mut x149: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x148, &mut x149, x147, x78, x124); + let mut x150: u32 = 0; + let mut x151: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x150, &mut x151, x149, x80, x126); + let mut x152: u32 = 0; + let mut x153: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x152, &mut x153, x151, x82, x128); + let mut x154: u32 = 0; + let mut x155: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x154, &mut x155, x153, x84, x130); + let mut x156: u32 = 0; + let mut x157: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x156, &mut x157, x155, x86, x132); + let mut x158: u32 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x158, &mut x159, x157, x88, x134); + let mut x160: u32 = 0; + let mut x161: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x160, &mut x161, x159, x90, x136); + let mut x162: u32 = 0; + let mut x163: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x162, &mut x163, x161, x92, x138); + let mut x164: u32 = 0; + let mut x165: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x164, &mut x165, x163, x94, x140); + let mut x166: u32 = 0; + let mut x167: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x166, + &mut x167, + x165, + ((x95 as u32) + ((x73 as u32) + ((x49 as u32) + x5))), + x142, + ); + let mut x168: u32 = 0; + let mut x169: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x168, &mut x169, 0x0, x146, (arg1[2])); + let mut x170: u32 = 0; + let mut x171: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x170, &mut x171, x169, x148, (0x0 as u32)); + let mut x172: u32 = 0; + let mut x173: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x172, &mut x173, x171, x150, (0x0 as u32)); + let mut x174: u32 = 0; + let mut x175: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x174, &mut x175, x173, x152, (0x0 as u32)); + let mut x176: u32 = 0; + let mut x177: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x176, &mut x177, x175, x154, (0x0 as u32)); + let mut x178: u32 = 0; + let mut x179: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x178, &mut x179, x177, x156, (0x0 as u32)); + let mut x180: u32 = 0; + let mut x181: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x180, &mut x181, x179, x158, (0x0 as u32)); + let mut x182: u32 = 0; + let mut x183: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x182, &mut x183, x181, x160, (0x0 as u32)); + let mut x184: u32 = 0; + let mut x185: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x184, &mut x185, x183, x162, (0x0 as u32)); + let mut x186: u32 = 0; + let mut x187: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x186, &mut x187, x185, x164, (0x0 as u32)); + let mut x188: u32 = 0; + let mut x189: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x188, &mut x189, x187, x166, (0x0 as u32)); + let mut x190: u32 = 0; + let mut x191: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x190, &mut x191, x168, 0x5cb5bb93); + let mut x192: u32 = 0; + let mut x193: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x192, &mut x193, x190, 0x8cb91e82); + let mut x194: u32 = 0; + let mut x195: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x194, &mut x195, x190, 0xa3386d28); + let mut x196: u32 = 0; + let mut x197: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x196, &mut x197, x190, 0xf5d6f7e); + let mut x198: u32 = 0; + let mut x199: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x198, &mut x199, x190, 0x50e641df); + let mut x200: u32 = 0; + let mut x201: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x200, &mut x201, x190, 0x152f7109); + let mut x202: u32 = 0; + let mut x203: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x202, &mut x203, x190, 0xed5456b3); + let mut x204: u32 = 0; + let mut x205: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x204, &mut x205, x190, 0x1f166e6c); + let mut x206: u32 = 0; + let mut x207: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x206, &mut x207, x190, 0xac0425a7); + let mut x208: u32 = 0; + let mut x209: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x208, &mut x209, x190, 0xcf3ab6af); + let mut x210: u32 = 0; + let mut x211: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x210, &mut x211, x190, 0x6b7fc310); + let mut x212: u32 = 0; + let mut x213: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x212, &mut x213, x190, 0x3b883202); + let mut x214: u32 = 0; + let mut x215: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x214, &mut x215, x190, 0xe9046565); + let mut x216: u32 = 0; + let mut x217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x216, &mut x217, 0x0, x215, x212); + let mut x218: u32 = 0; + let mut x219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x218, &mut x219, x217, x213, x210); + let mut x220: u32 = 0; + let mut x221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x220, &mut x221, x219, x211, x208); + let mut x222: u32 = 0; + let mut x223: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x222, &mut x223, x221, x209, x206); + let mut x224: u32 = 0; + let mut x225: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x224, &mut x225, x223, x207, x204); + let mut x226: u32 = 0; + let mut x227: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x226, &mut x227, x225, x205, x202); + let mut x228: u32 = 0; + let mut x229: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x228, &mut x229, x227, x203, x200); + let mut x230: u32 = 0; + let mut x231: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x230, &mut x231, x229, x201, x198); + let mut x232: u32 = 0; + let mut x233: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x232, &mut x233, x231, x199, x196); + let mut x234: u32 = 0; + let mut x235: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x234, &mut x235, x233, x197, x194); + let mut x236: u32 = 0; + let mut x237: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x236, &mut x237, x235, x195, x192); + let mut x238: u32 = 0; + let mut x239: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x238, &mut x239, 0x0, x168, x214); + let mut x240: u32 = 0; + let mut x241: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x240, &mut x241, x239, x170, x216); + let mut x242: u32 = 0; + let mut x243: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x242, &mut x243, x241, x172, x218); + let mut x244: u32 = 0; + let mut x245: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x174, x220); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x176, x222); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x178, x224); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x180, x226); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x182, x228); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x184, x230); + let mut x256: u32 = 0; + let mut x257: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x256, &mut x257, x255, x186, x232); + let mut x258: u32 = 0; + let mut x259: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x258, &mut x259, x257, x188, x234); + let mut x260: u32 = 0; + let mut x261: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x260, + &mut x261, + x259, + ((x189 as u32) + ((x167 as u32) + ((x143 as u32) + x99))), + x236, + ); + let mut x262: u32 = 0; + let mut x263: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x262, &mut x263, 0x0, x240, (arg1[3])); + let mut x264: u32 = 0; + let mut x265: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x264, &mut x265, x263, x242, (0x0 as u32)); + let mut x266: u32 = 0; + let mut x267: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x266, &mut x267, x265, x244, (0x0 as u32)); + let mut x268: u32 = 0; + let mut x269: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x268, &mut x269, x267, x246, (0x0 as u32)); + let mut x270: u32 = 0; + let mut x271: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x270, &mut x271, x269, x248, (0x0 as u32)); + let mut x272: u32 = 0; + let mut x273: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x272, &mut x273, x271, x250, (0x0 as u32)); + let mut x274: u32 = 0; + let mut x275: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x274, &mut x275, x273, x252, (0x0 as u32)); + let mut x276: u32 = 0; + let mut x277: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x276, &mut x277, x275, x254, (0x0 as u32)); + let mut x278: u32 = 0; + let mut x279: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x278, &mut x279, x277, x256, (0x0 as u32)); + let mut x280: u32 = 0; + let mut x281: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x280, &mut x281, x279, x258, (0x0 as u32)); + let mut x282: u32 = 0; + let mut x283: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x282, &mut x283, x281, x260, (0x0 as u32)); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x284, &mut x285, x262, 0x5cb5bb93); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x286, &mut x287, x284, 0x8cb91e82); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x288, &mut x289, x284, 0xa3386d28); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x290, &mut x291, x284, 0xf5d6f7e); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x292, &mut x293, x284, 0x50e641df); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x294, &mut x295, x284, 0x152f7109); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x296, &mut x297, x284, 0xed5456b3); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x298, &mut x299, x284, 0x1f166e6c); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x300, &mut x301, x284, 0xac0425a7); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x302, &mut x303, x284, 0xcf3ab6af); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x304, &mut x305, x284, 0x6b7fc310); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x306, &mut x307, x284, 0x3b883202); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x308, &mut x309, x284, 0xe9046565); + let mut x310: u32 = 0; + let mut x311: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x332, &mut x333, 0x0, x262, x308); + let mut x334: u32 = 0; + let mut x335: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x334, &mut x335, x333, x264, x310); + let mut x336: u32 = 0; + let mut x337: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x336, &mut x337, x335, x266, x312); + let mut x338: u32 = 0; + let mut x339: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x338, &mut x339, x337, x268, x314); + let mut x340: u32 = 0; + let mut x341: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x340, &mut x341, x339, x270, x316); + let mut x342: u32 = 0; + let mut x343: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x342, &mut x343, x341, x272, x318); + let mut x344: u32 = 0; + let mut x345: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x344, &mut x345, x343, x274, x320); + let mut x346: u32 = 0; + let mut x347: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x346, &mut x347, x345, x276, x322); + let mut x348: u32 = 0; + let mut x349: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x348, &mut x349, x347, x278, x324); + let mut x350: u32 = 0; + let mut x351: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x350, &mut x351, x349, x280, x326); + let mut x352: u32 = 0; + let mut x353: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x352, &mut x353, x351, x282, x328); + let mut x354: u32 = 0; + let mut x355: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x354, + &mut x355, + x353, + ((x283 as u32) + ((x261 as u32) + ((x237 as u32) + x193))), + x330, + ); + let mut x356: u32 = 0; + let mut x357: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x356, &mut x357, 0x0, x334, (arg1[4])); + let mut x358: u32 = 0; + let mut x359: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x358, &mut x359, x357, x336, (0x0 as u32)); + let mut x360: u32 = 0; + let mut x361: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x360, &mut x361, x359, x338, (0x0 as u32)); + let mut x362: u32 = 0; + let mut x363: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x362, &mut x363, x361, x340, (0x0 as u32)); + let mut x364: u32 = 0; + let mut x365: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x364, &mut x365, x363, x342, (0x0 as u32)); + let mut x366: u32 = 0; + let mut x367: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x366, &mut x367, x365, x344, (0x0 as u32)); + let mut x368: u32 = 0; + let mut x369: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x368, &mut x369, x367, x346, (0x0 as u32)); + let mut x370: u32 = 0; + let mut x371: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x370, &mut x371, x369, x348, (0x0 as u32)); + let mut x372: u32 = 0; + let mut x373: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x372, &mut x373, x371, x350, (0x0 as u32)); + let mut x374: u32 = 0; + let mut x375: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x374, &mut x375, x373, x352, (0x0 as u32)); + let mut x376: u32 = 0; + let mut x377: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x376, &mut x377, x375, x354, (0x0 as u32)); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x378, &mut x379, x356, 0x5cb5bb93); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x380, &mut x381, x378, 0x8cb91e82); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x382, &mut x383, x378, 0xa3386d28); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x384, &mut x385, x378, 0xf5d6f7e); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x386, &mut x387, x378, 0x50e641df); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x388, &mut x389, x378, 0x152f7109); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x390, &mut x391, x378, 0xed5456b3); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x392, &mut x393, x378, 0x1f166e6c); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x394, &mut x395, x378, 0xac0425a7); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x396, &mut x397, x378, 0xcf3ab6af); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x398, &mut x399, x378, 0x6b7fc310); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x400, &mut x401, x378, 0x3b883202); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x402, &mut x403, x378, 0xe9046565); + let mut x404: u32 = 0; + let mut x405: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x404, &mut x405, 0x0, x403, x400); + let mut x406: u32 = 0; + let mut x407: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x406, &mut x407, x405, x401, x398); + let mut x408: u32 = 0; + let mut x409: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x408, &mut x409, x407, x399, x396); + let mut x410: u32 = 0; + let mut x411: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x410, &mut x411, x409, x397, x394); + let mut x412: u32 = 0; + let mut x413: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x412, &mut x413, x411, x395, x392); + let mut x414: u32 = 0; + let mut x415: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x414, &mut x415, x413, x393, x390); + let mut x416: u32 = 0; + let mut x417: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x391, x388); + let mut x418: u32 = 0; + let mut x419: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x389, x386); + let mut x420: u32 = 0; + let mut x421: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x387, x384); + let mut x422: u32 = 0; + let mut x423: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x385, x382); + let mut x424: u32 = 0; + let mut x425: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x383, x380); + let mut x426: u32 = 0; + let mut x427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x426, &mut x427, 0x0, x356, x402); + let mut x428: u32 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x358, x404); + let mut x430: u32 = 0; + let mut x431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x360, x406); + let mut x432: u32 = 0; + let mut x433: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x432, &mut x433, x431, x362, x408); + let mut x434: u32 = 0; + let mut x435: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x434, &mut x435, x433, x364, x410); + let mut x436: u32 = 0; + let mut x437: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x436, &mut x437, x435, x366, x412); + let mut x438: u32 = 0; + let mut x439: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x438, &mut x439, x437, x368, x414); + let mut x440: u32 = 0; + let mut x441: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x440, &mut x441, x439, x370, x416); + let mut x442: u32 = 0; + let mut x443: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x442, &mut x443, x441, x372, x418); + let mut x444: u32 = 0; + let mut x445: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x444, &mut x445, x443, x374, x420); + let mut x446: u32 = 0; + let mut x447: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x446, &mut x447, x445, x376, x422); + let mut x448: u32 = 0; + let mut x449: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x448, + &mut x449, + x447, + ((x377 as u32) + ((x355 as u32) + ((x331 as u32) + x287))), + x424, + ); + let mut x450: u32 = 0; + let mut x451: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x450, &mut x451, 0x0, x428, (arg1[5])); + let mut x452: u32 = 0; + let mut x453: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x452, &mut x453, x451, x430, (0x0 as u32)); + let mut x454: u32 = 0; + let mut x455: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x454, &mut x455, x453, x432, (0x0 as u32)); + let mut x456: u32 = 0; + let mut x457: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x456, &mut x457, x455, x434, (0x0 as u32)); + let mut x458: u32 = 0; + let mut x459: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x458, &mut x459, x457, x436, (0x0 as u32)); + let mut x460: u32 = 0; + let mut x461: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x460, &mut x461, x459, x438, (0x0 as u32)); + let mut x462: u32 = 0; + let mut x463: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x462, &mut x463, x461, x440, (0x0 as u32)); + let mut x464: u32 = 0; + let mut x465: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x464, &mut x465, x463, x442, (0x0 as u32)); + let mut x466: u32 = 0; + let mut x467: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x466, &mut x467, x465, x444, (0x0 as u32)); + let mut x468: u32 = 0; + let mut x469: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x468, &mut x469, x467, x446, (0x0 as u32)); + let mut x470: u32 = 0; + let mut x471: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x470, &mut x471, x469, x448, (0x0 as u32)); + let mut x472: u32 = 0; + let mut x473: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x472, &mut x473, x450, 0x5cb5bb93); + let mut x474: u32 = 0; + let mut x475: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x474, &mut x475, x472, 0x8cb91e82); + let mut x476: u32 = 0; + let mut x477: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x476, &mut x477, x472, 0xa3386d28); + let mut x478: u32 = 0; + let mut x479: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x478, &mut x479, x472, 0xf5d6f7e); + let mut x480: u32 = 0; + let mut x481: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x480, &mut x481, x472, 0x50e641df); + let mut x482: u32 = 0; + let mut x483: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x482, &mut x483, x472, 0x152f7109); + let mut x484: u32 = 0; + let mut x485: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x484, &mut x485, x472, 0xed5456b3); + let mut x486: u32 = 0; + let mut x487: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x486, &mut x487, x472, 0x1f166e6c); + let mut x488: u32 = 0; + let mut x489: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x488, &mut x489, x472, 0xac0425a7); + let mut x490: u32 = 0; + let mut x491: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x490, &mut x491, x472, 0xcf3ab6af); + let mut x492: u32 = 0; + let mut x493: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x492, &mut x493, x472, 0x6b7fc310); + let mut x494: u32 = 0; + let mut x495: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x494, &mut x495, x472, 0x3b883202); + let mut x496: u32 = 0; + let mut x497: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x496, &mut x497, x472, 0xe9046565); + let mut x498: u32 = 0; + let mut x499: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x498, &mut x499, 0x0, x497, x494); + let mut x500: u32 = 0; + let mut x501: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x500, &mut x501, x499, x495, x492); + let mut x502: u32 = 0; + let mut x503: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x502, &mut x503, x501, x493, x490); + let mut x504: u32 = 0; + let mut x505: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x504, &mut x505, x503, x491, x488); + let mut x506: u32 = 0; + let mut x507: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x506, &mut x507, x505, x489, x486); + let mut x508: u32 = 0; + let mut x509: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x508, &mut x509, x507, x487, x484); + let mut x510: u32 = 0; + let mut x511: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x510, &mut x511, x509, x485, x482); + let mut x512: u32 = 0; + let mut x513: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x512, &mut x513, x511, x483, x480); + let mut x514: u32 = 0; + let mut x515: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x514, &mut x515, x513, x481, x478); + let mut x516: u32 = 0; + let mut x517: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x516, &mut x517, x515, x479, x476); + let mut x518: u32 = 0; + let mut x519: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x518, &mut x519, x517, x477, x474); + let mut x520: u32 = 0; + let mut x521: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x520, &mut x521, 0x0, x450, x496); + let mut x522: u32 = 0; + let mut x523: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x522, &mut x523, x521, x452, x498); + let mut x524: u32 = 0; + let mut x525: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x524, &mut x525, x523, x454, x500); + let mut x526: u32 = 0; + let mut x527: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x526, &mut x527, x525, x456, x502); + let mut x528: u32 = 0; + let mut x529: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x528, &mut x529, x527, x458, x504); + let mut x530: u32 = 0; + let mut x531: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x530, &mut x531, x529, x460, x506); + let mut x532: u32 = 0; + let mut x533: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x532, &mut x533, x531, x462, x508); + let mut x534: u32 = 0; + let mut x535: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x534, &mut x535, x533, x464, x510); + let mut x536: u32 = 0; + let mut x537: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x536, &mut x537, x535, x466, x512); + let mut x538: u32 = 0; + let mut x539: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x538, &mut x539, x537, x468, x514); + let mut x540: u32 = 0; + let mut x541: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x540, &mut x541, x539, x470, x516); + let mut x542: u32 = 0; + let mut x543: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x542, + &mut x543, + x541, + ((x471 as u32) + ((x449 as u32) + ((x425 as u32) + x381))), + x518, + ); + let mut x544: u32 = 0; + let mut x545: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x544, &mut x545, 0x0, x522, (arg1[6])); + let mut x546: u32 = 0; + let mut x547: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x524, (0x0 as u32)); + let mut x548: u32 = 0; + let mut x549: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x526, (0x0 as u32)); + let mut x550: u32 = 0; + let mut x551: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x528, (0x0 as u32)); + let mut x552: u32 = 0; + let mut x553: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x530, (0x0 as u32)); + let mut x554: u32 = 0; + let mut x555: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x554, &mut x555, x553, x532, (0x0 as u32)); + let mut x556: u32 = 0; + let mut x557: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x556, &mut x557, x555, x534, (0x0 as u32)); + let mut x558: u32 = 0; + let mut x559: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x558, &mut x559, x557, x536, (0x0 as u32)); + let mut x560: u32 = 0; + let mut x561: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x560, &mut x561, x559, x538, (0x0 as u32)); + let mut x562: u32 = 0; + let mut x563: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x562, &mut x563, x561, x540, (0x0 as u32)); + let mut x564: u32 = 0; + let mut x565: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x564, &mut x565, x563, x542, (0x0 as u32)); + let mut x566: u32 = 0; + let mut x567: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x566, &mut x567, x544, 0x5cb5bb93); + let mut x568: u32 = 0; + let mut x569: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x568, &mut x569, x566, 0x8cb91e82); + let mut x570: u32 = 0; + let mut x571: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x570, &mut x571, x566, 0xa3386d28); + let mut x572: u32 = 0; + let mut x573: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x572, &mut x573, x566, 0xf5d6f7e); + let mut x574: u32 = 0; + let mut x575: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x574, &mut x575, x566, 0x50e641df); + let mut x576: u32 = 0; + let mut x577: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x576, &mut x577, x566, 0x152f7109); + let mut x578: u32 = 0; + let mut x579: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x578, &mut x579, x566, 0xed5456b3); + let mut x580: u32 = 0; + let mut x581: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x580, &mut x581, x566, 0x1f166e6c); + let mut x582: u32 = 0; + let mut x583: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x582, &mut x583, x566, 0xac0425a7); + let mut x584: u32 = 0; + let mut x585: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x584, &mut x585, x566, 0xcf3ab6af); + let mut x586: u32 = 0; + let mut x587: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x586, &mut x587, x566, 0x6b7fc310); + let mut x588: u32 = 0; + let mut x589: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x588, &mut x589, x566, 0x3b883202); + let mut x590: u32 = 0; + let mut x591: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x590, &mut x591, x566, 0xe9046565); + let mut x592: u32 = 0; + let mut x593: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x592, &mut x593, 0x0, x591, x588); + let mut x594: u32 = 0; + let mut x595: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x594, &mut x595, x593, x589, x586); + let mut x596: u32 = 0; + let mut x597: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x596, &mut x597, x595, x587, x584); + let mut x598: u32 = 0; + let mut x599: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x598, &mut x599, x597, x585, x582); + let mut x600: u32 = 0; + let mut x601: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x600, &mut x601, x599, x583, x580); + let mut x602: u32 = 0; + let mut x603: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x602, &mut x603, x601, x581, x578); + let mut x604: u32 = 0; + let mut x605: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x604, &mut x605, x603, x579, x576); + let mut x606: u32 = 0; + let mut x607: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x606, &mut x607, x605, x577, x574); + let mut x608: u32 = 0; + let mut x609: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x608, &mut x609, x607, x575, x572); + let mut x610: u32 = 0; + let mut x611: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x610, &mut x611, x609, x573, x570); + let mut x612: u32 = 0; + let mut x613: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x612, &mut x613, x611, x571, x568); + let mut x614: u32 = 0; + let mut x615: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x614, &mut x615, 0x0, x544, x590); + let mut x616: u32 = 0; + let mut x617: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x616, &mut x617, x615, x546, x592); + let mut x618: u32 = 0; + let mut x619: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x618, &mut x619, x617, x548, x594); + let mut x620: u32 = 0; + let mut x621: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x620, &mut x621, x619, x550, x596); + let mut x622: u32 = 0; + let mut x623: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x622, &mut x623, x621, x552, x598); + let mut x624: u32 = 0; + let mut x625: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x624, &mut x625, x623, x554, x600); + let mut x626: u32 = 0; + let mut x627: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x626, &mut x627, x625, x556, x602); + let mut x628: u32 = 0; + let mut x629: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x628, &mut x629, x627, x558, x604); + let mut x630: u32 = 0; + let mut x631: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x630, &mut x631, x629, x560, x606); + let mut x632: u32 = 0; + let mut x633: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x632, &mut x633, x631, x562, x608); + let mut x634: u32 = 0; + let mut x635: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x634, &mut x635, x633, x564, x610); + let mut x636: u32 = 0; + let mut x637: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x636, + &mut x637, + x635, + ((x565 as u32) + ((x543 as u32) + ((x519 as u32) + x475))), + x612, + ); + let mut x638: u32 = 0; + let mut x639: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x638, &mut x639, 0x0, x616, (arg1[7])); + let mut x640: u32 = 0; + let mut x641: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x640, &mut x641, x639, x618, (0x0 as u32)); + let mut x642: u32 = 0; + let mut x643: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x642, &mut x643, x641, x620, (0x0 as u32)); + let mut x644: u32 = 0; + let mut x645: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x644, &mut x645, x643, x622, (0x0 as u32)); + let mut x646: u32 = 0; + let mut x647: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x646, &mut x647, x645, x624, (0x0 as u32)); + let mut x648: u32 = 0; + let mut x649: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x648, &mut x649, x647, x626, (0x0 as u32)); + let mut x650: u32 = 0; + let mut x651: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x650, &mut x651, x649, x628, (0x0 as u32)); + let mut x652: u32 = 0; + let mut x653: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x652, &mut x653, x651, x630, (0x0 as u32)); + let mut x654: u32 = 0; + let mut x655: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x654, &mut x655, x653, x632, (0x0 as u32)); + let mut x656: u32 = 0; + let mut x657: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x656, &mut x657, x655, x634, (0x0 as u32)); + let mut x658: u32 = 0; + let mut x659: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x658, &mut x659, x657, x636, (0x0 as u32)); + let mut x660: u32 = 0; + let mut x661: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x660, &mut x661, x638, 0x5cb5bb93); + let mut x662: u32 = 0; + let mut x663: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x662, &mut x663, x660, 0x8cb91e82); + let mut x664: u32 = 0; + let mut x665: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x664, &mut x665, x660, 0xa3386d28); + let mut x666: u32 = 0; + let mut x667: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x666, &mut x667, x660, 0xf5d6f7e); + let mut x668: u32 = 0; + let mut x669: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x668, &mut x669, x660, 0x50e641df); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x670, &mut x671, x660, 0x152f7109); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x672, &mut x673, x660, 0xed5456b3); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x674, &mut x675, x660, 0x1f166e6c); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x676, &mut x677, x660, 0xac0425a7); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x678, &mut x679, x660, 0xcf3ab6af); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x680, &mut x681, x660, 0x6b7fc310); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x682, &mut x683, x660, 0x3b883202); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x684, &mut x685, x660, 0xe9046565); + let mut x686: u32 = 0; + let mut x687: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x686, &mut x687, 0x0, x685, x682); + let mut x688: u32 = 0; + let mut x689: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x688, &mut x689, x687, x683, x680); + let mut x690: u32 = 0; + let mut x691: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x690, &mut x691, x689, x681, x678); + let mut x692: u32 = 0; + let mut x693: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x692, &mut x693, x691, x679, x676); + let mut x694: u32 = 0; + let mut x695: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x694, &mut x695, x693, x677, x674); + let mut x696: u32 = 0; + let mut x697: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x696, &mut x697, x695, x675, x672); + let mut x698: u32 = 0; + let mut x699: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x698, &mut x699, x697, x673, x670); + let mut x700: u32 = 0; + let mut x701: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x700, &mut x701, x699, x671, x668); + let mut x702: u32 = 0; + let mut x703: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x702, &mut x703, x701, x669, x666); + let mut x704: u32 = 0; + let mut x705: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x704, &mut x705, x703, x667, x664); + let mut x706: u32 = 0; + let mut x707: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x665, x662); + let mut x708: u32 = 0; + let mut x709: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x708, &mut x709, 0x0, x638, x684); + let mut x710: u32 = 0; + let mut x711: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x640, x686); + let mut x712: u32 = 0; + let mut x713: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x642, x688); + let mut x714: u32 = 0; + let mut x715: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x644, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x646, x692); + let mut x718: u32 = 0; + let mut x719: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x648, x694); + let mut x720: u32 = 0; + let mut x721: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x650, x696); + let mut x722: u32 = 0; + let mut x723: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x652, x698); + let mut x724: u32 = 0; + let mut x725: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x654, x700); + let mut x726: u32 = 0; + let mut x727: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x726, &mut x727, x725, x656, x702); + let mut x728: u32 = 0; + let mut x729: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x728, &mut x729, x727, x658, x704); + let mut x730: u32 = 0; + let mut x731: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x730, + &mut x731, + x729, + ((x659 as u32) + ((x637 as u32) + ((x613 as u32) + x569))), + x706, + ); + let mut x732: u32 = 0; + let mut x733: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x732, &mut x733, 0x0, x710, (arg1[8])); + let mut x734: u32 = 0; + let mut x735: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x734, &mut x735, x733, x712, (0x0 as u32)); + let mut x736: u32 = 0; + let mut x737: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x736, &mut x737, x735, x714, (0x0 as u32)); + let mut x738: u32 = 0; + let mut x739: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x738, &mut x739, x737, x716, (0x0 as u32)); + let mut x740: u32 = 0; + let mut x741: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x740, &mut x741, x739, x718, (0x0 as u32)); + let mut x742: u32 = 0; + let mut x743: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x742, &mut x743, x741, x720, (0x0 as u32)); + let mut x744: u32 = 0; + let mut x745: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x744, &mut x745, x743, x722, (0x0 as u32)); + let mut x746: u32 = 0; + let mut x747: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x746, &mut x747, x745, x724, (0x0 as u32)); + let mut x748: u32 = 0; + let mut x749: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x748, &mut x749, x747, x726, (0x0 as u32)); + let mut x750: u32 = 0; + let mut x751: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x750, &mut x751, x749, x728, (0x0 as u32)); + let mut x752: u32 = 0; + let mut x753: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x752, &mut x753, x751, x730, (0x0 as u32)); + let mut x754: u32 = 0; + let mut x755: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x754, &mut x755, x732, 0x5cb5bb93); + let mut x756: u32 = 0; + let mut x757: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x756, &mut x757, x754, 0x8cb91e82); + let mut x758: u32 = 0; + let mut x759: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x758, &mut x759, x754, 0xa3386d28); + let mut x760: u32 = 0; + let mut x761: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x760, &mut x761, x754, 0xf5d6f7e); + let mut x762: u32 = 0; + let mut x763: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x762, &mut x763, x754, 0x50e641df); + let mut x764: u32 = 0; + let mut x765: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x764, &mut x765, x754, 0x152f7109); + let mut x766: u32 = 0; + let mut x767: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x766, &mut x767, x754, 0xed5456b3); + let mut x768: u32 = 0; + let mut x769: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x768, &mut x769, x754, 0x1f166e6c); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x770, &mut x771, x754, 0xac0425a7); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x772, &mut x773, x754, 0xcf3ab6af); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x774, &mut x775, x754, 0x6b7fc310); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x776, &mut x777, x754, 0x3b883202); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x778, &mut x779, x754, 0xe9046565); + let mut x780: u32 = 0; + let mut x781: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x780, &mut x781, 0x0, x779, x776); + let mut x782: u32 = 0; + let mut x783: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x782, &mut x783, x781, x777, x774); + let mut x784: u32 = 0; + let mut x785: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x784, &mut x785, x783, x775, x772); + let mut x786: u32 = 0; + let mut x787: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x786, &mut x787, x785, x773, x770); + let mut x788: u32 = 0; + let mut x789: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x788, &mut x789, x787, x771, x768); + let mut x790: u32 = 0; + let mut x791: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x790, &mut x791, x789, x769, x766); + let mut x792: u32 = 0; + let mut x793: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x792, &mut x793, x791, x767, x764); + let mut x794: u32 = 0; + let mut x795: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x794, &mut x795, x793, x765, x762); + let mut x796: u32 = 0; + let mut x797: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x796, &mut x797, x795, x763, x760); + let mut x798: u32 = 0; + let mut x799: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x798, &mut x799, x797, x761, x758); + let mut x800: u32 = 0; + let mut x801: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x800, &mut x801, x799, x759, x756); + let mut x802: u32 = 0; + let mut x803: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x802, &mut x803, 0x0, x732, x778); + let mut x804: u32 = 0; + let mut x805: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x804, &mut x805, x803, x734, x780); + let mut x806: u32 = 0; + let mut x807: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x806, &mut x807, x805, x736, x782); + let mut x808: u32 = 0; + let mut x809: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x808, &mut x809, x807, x738, x784); + let mut x810: u32 = 0; + let mut x811: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x810, &mut x811, x809, x740, x786); + let mut x812: u32 = 0; + let mut x813: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x812, &mut x813, x811, x742, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x814, &mut x815, x813, x744, x790); + let mut x816: u32 = 0; + let mut x817: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x816, &mut x817, x815, x746, x792); + let mut x818: u32 = 0; + let mut x819: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x818, &mut x819, x817, x748, x794); + let mut x820: u32 = 0; + let mut x821: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x820, &mut x821, x819, x750, x796); + let mut x822: u32 = 0; + let mut x823: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x822, &mut x823, x821, x752, x798); + let mut x824: u32 = 0; + let mut x825: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x824, + &mut x825, + x823, + ((x753 as u32) + ((x731 as u32) + ((x707 as u32) + x663))), + x800, + ); + let mut x826: u32 = 0; + let mut x827: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x826, &mut x827, 0x0, x804, (arg1[9])); + let mut x828: u32 = 0; + let mut x829: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x828, &mut x829, x827, x806, (0x0 as u32)); + let mut x830: u32 = 0; + let mut x831: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x830, &mut x831, x829, x808, (0x0 as u32)); + let mut x832: u32 = 0; + let mut x833: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x832, &mut x833, x831, x810, (0x0 as u32)); + let mut x834: u32 = 0; + let mut x835: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x834, &mut x835, x833, x812, (0x0 as u32)); + let mut x836: u32 = 0; + let mut x837: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x836, &mut x837, x835, x814, (0x0 as u32)); + let mut x838: u32 = 0; + let mut x839: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x838, &mut x839, x837, x816, (0x0 as u32)); + let mut x840: u32 = 0; + let mut x841: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x840, &mut x841, x839, x818, (0x0 as u32)); + let mut x842: u32 = 0; + let mut x843: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x842, &mut x843, x841, x820, (0x0 as u32)); + let mut x844: u32 = 0; + let mut x845: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x844, &mut x845, x843, x822, (0x0 as u32)); + let mut x846: u32 = 0; + let mut x847: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x846, &mut x847, x845, x824, (0x0 as u32)); + let mut x848: u32 = 0; + let mut x849: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x848, &mut x849, x826, 0x5cb5bb93); + let mut x850: u32 = 0; + let mut x851: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x850, &mut x851, x848, 0x8cb91e82); + let mut x852: u32 = 0; + let mut x853: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x852, &mut x853, x848, 0xa3386d28); + let mut x854: u32 = 0; + let mut x855: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x854, &mut x855, x848, 0xf5d6f7e); + let mut x856: u32 = 0; + let mut x857: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x856, &mut x857, x848, 0x50e641df); + let mut x858: u32 = 0; + let mut x859: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x858, &mut x859, x848, 0x152f7109); + let mut x860: u32 = 0; + let mut x861: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x860, &mut x861, x848, 0xed5456b3); + let mut x862: u32 = 0; + let mut x863: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x862, &mut x863, x848, 0x1f166e6c); + let mut x864: u32 = 0; + let mut x865: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x864, &mut x865, x848, 0xac0425a7); + let mut x866: u32 = 0; + let mut x867: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x866, &mut x867, x848, 0xcf3ab6af); + let mut x868: u32 = 0; + let mut x869: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x868, &mut x869, x848, 0x6b7fc310); + let mut x870: u32 = 0; + let mut x871: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x870, &mut x871, x848, 0x3b883202); + let mut x872: u32 = 0; + let mut x873: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x872, &mut x873, x848, 0xe9046565); + let mut x874: u32 = 0; + let mut x875: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x874, &mut x875, 0x0, x873, x870); + let mut x876: u32 = 0; + let mut x877: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x876, &mut x877, x875, x871, x868); + let mut x878: u32 = 0; + let mut x879: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x878, &mut x879, x877, x869, x866); + let mut x880: u32 = 0; + let mut x881: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x880, &mut x881, x879, x867, x864); + let mut x882: u32 = 0; + let mut x883: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x882, &mut x883, x881, x865, x862); + let mut x884: u32 = 0; + let mut x885: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x884, &mut x885, x883, x863, x860); + let mut x886: u32 = 0; + let mut x887: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x886, &mut x887, x885, x861, x858); + let mut x888: u32 = 0; + let mut x889: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x888, &mut x889, x887, x859, x856); + let mut x890: u32 = 0; + let mut x891: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x890, &mut x891, x889, x857, x854); + let mut x892: u32 = 0; + let mut x893: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x892, &mut x893, x891, x855, x852); + let mut x894: u32 = 0; + let mut x895: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x894, &mut x895, x893, x853, x850); + let mut x896: u32 = 0; + let mut x897: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x896, &mut x897, 0x0, x826, x872); + let mut x898: u32 = 0; + let mut x899: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x898, &mut x899, x897, x828, x874); + let mut x900: u32 = 0; + let mut x901: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x900, &mut x901, x899, x830, x876); + let mut x902: u32 = 0; + let mut x903: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x902, &mut x903, x901, x832, x878); + let mut x904: u32 = 0; + let mut x905: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x904, &mut x905, x903, x834, x880); + let mut x906: u32 = 0; + let mut x907: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x906, &mut x907, x905, x836, x882); + let mut x908: u32 = 0; + let mut x909: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x908, &mut x909, x907, x838, x884); + let mut x910: u32 = 0; + let mut x911: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x910, &mut x911, x909, x840, x886); + let mut x912: u32 = 0; + let mut x913: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x912, &mut x913, x911, x842, x888); + let mut x914: u32 = 0; + let mut x915: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x914, &mut x915, x913, x844, x890); + let mut x916: u32 = 0; + let mut x917: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x916, &mut x917, x915, x846, x892); + let mut x918: u32 = 0; + let mut x919: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x918, + &mut x919, + x917, + ((x847 as u32) + ((x825 as u32) + ((x801 as u32) + x757))), + x894, + ); + let mut x920: u32 = 0; + let mut x921: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x920, &mut x921, 0x0, x898, (arg1[10])); + let mut x922: u32 = 0; + let mut x923: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x922, &mut x923, x921, x900, (0x0 as u32)); + let mut x924: u32 = 0; + let mut x925: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x924, &mut x925, x923, x902, (0x0 as u32)); + let mut x926: u32 = 0; + let mut x927: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x926, &mut x927, x925, x904, (0x0 as u32)); + let mut x928: u32 = 0; + let mut x929: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x928, &mut x929, x927, x906, (0x0 as u32)); + let mut x930: u32 = 0; + let mut x931: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x930, &mut x931, x929, x908, (0x0 as u32)); + let mut x932: u32 = 0; + let mut x933: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x932, &mut x933, x931, x910, (0x0 as u32)); + let mut x934: u32 = 0; + let mut x935: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x934, &mut x935, x933, x912, (0x0 as u32)); + let mut x936: u32 = 0; + let mut x937: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x936, &mut x937, x935, x914, (0x0 as u32)); + let mut x938: u32 = 0; + let mut x939: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x938, &mut x939, x937, x916, (0x0 as u32)); + let mut x940: u32 = 0; + let mut x941: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x940, &mut x941, x939, x918, (0x0 as u32)); + let mut x942: u32 = 0; + let mut x943: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x942, &mut x943, x920, 0x5cb5bb93); + let mut x944: u32 = 0; + let mut x945: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x944, &mut x945, x942, 0x8cb91e82); + let mut x946: u32 = 0; + let mut x947: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x946, &mut x947, x942, 0xa3386d28); + let mut x948: u32 = 0; + let mut x949: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x948, &mut x949, x942, 0xf5d6f7e); + let mut x950: u32 = 0; + let mut x951: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x950, &mut x951, x942, 0x50e641df); + let mut x952: u32 = 0; + let mut x953: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x952, &mut x953, x942, 0x152f7109); + let mut x954: u32 = 0; + let mut x955: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x954, &mut x955, x942, 0xed5456b3); + let mut x956: u32 = 0; + let mut x957: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x956, &mut x957, x942, 0x1f166e6c); + let mut x958: u32 = 0; + let mut x959: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x958, &mut x959, x942, 0xac0425a7); + let mut x960: u32 = 0; + let mut x961: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x960, &mut x961, x942, 0xcf3ab6af); + let mut x962: u32 = 0; + let mut x963: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x962, &mut x963, x942, 0x6b7fc310); + let mut x964: u32 = 0; + let mut x965: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x964, &mut x965, x942, 0x3b883202); + let mut x966: u32 = 0; + let mut x967: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x966, &mut x967, x942, 0xe9046565); + let mut x968: u32 = 0; + let mut x969: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x968, &mut x969, 0x0, x967, x964); + let mut x970: u32 = 0; + let mut x971: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x970, &mut x971, x969, x965, x962); + let mut x972: u32 = 0; + let mut x973: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x972, &mut x973, x971, x963, x960); + let mut x974: u32 = 0; + let mut x975: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x974, &mut x975, x973, x961, x958); + let mut x976: u32 = 0; + let mut x977: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x976, &mut x977, x975, x959, x956); + let mut x978: u32 = 0; + let mut x979: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x978, &mut x979, x977, x957, x954); + let mut x980: u32 = 0; + let mut x981: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x980, &mut x981, x979, x955, x952); + let mut x982: u32 = 0; + let mut x983: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x982, &mut x983, x981, x953, x950); + let mut x984: u32 = 0; + let mut x985: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x984, &mut x985, x983, x951, x948); + let mut x986: u32 = 0; + let mut x987: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x986, &mut x987, x985, x949, x946); + let mut x988: u32 = 0; + let mut x989: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x988, &mut x989, x987, x947, x944); + let mut x990: u32 = 0; + let mut x991: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x990, &mut x991, 0x0, x920, x966); + let mut x992: u32 = 0; + let mut x993: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x992, &mut x993, x991, x922, x968); + let mut x994: u32 = 0; + let mut x995: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x994, &mut x995, x993, x924, x970); + let mut x996: u32 = 0; + let mut x997: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x996, &mut x997, x995, x926, x972); + let mut x998: u32 = 0; + let mut x999: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x998, &mut x999, x997, x928, x974); + let mut x1000: u32 = 0; + let mut x1001: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1000, &mut x1001, x999, x930, x976); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1002, &mut x1003, x1001, x932, x978); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1004, &mut x1005, x1003, x934, x980); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1006, &mut x1007, x1005, x936, x982); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1008, &mut x1009, x1007, x938, x984); + let mut x1010: u32 = 0; + let mut x1011: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1010, &mut x1011, x1009, x940, x986); + let mut x1012: u32 = 0; + let mut x1013: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1012, + &mut x1013, + x1011, + ((x941 as u32) + ((x919 as u32) + ((x895 as u32) + x851))), + x988, + ); + let mut x1014: u32 = 0; + let mut x1015: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1014, &mut x1015, 0x0, x992, (arg1[11])); + let mut x1016: u32 = 0; + let mut x1017: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1016, &mut x1017, x1015, x994, (0x0 as u32)); + let mut x1018: u32 = 0; + let mut x1019: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1018, &mut x1019, x1017, x996, (0x0 as u32)); + let mut x1020: u32 = 0; + let mut x1021: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1020, &mut x1021, x1019, x998, (0x0 as u32)); + let mut x1022: u32 = 0; + let mut x1023: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1022, &mut x1023, x1021, x1000, (0x0 as u32)); + let mut x1024: u32 = 0; + let mut x1025: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1024, &mut x1025, x1023, x1002, (0x0 as u32)); + let mut x1026: u32 = 0; + let mut x1027: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1026, &mut x1027, x1025, x1004, (0x0 as u32)); + let mut x1028: u32 = 0; + let mut x1029: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1028, &mut x1029, x1027, x1006, (0x0 as u32)); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1030, &mut x1031, x1029, x1008, (0x0 as u32)); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1032, &mut x1033, x1031, x1010, (0x0 as u32)); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1034, &mut x1035, x1033, x1012, (0x0 as u32)); + let mut x1036: u32 = 0; + let mut x1037: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1036, &mut x1037, x1014, 0x5cb5bb93); + let mut x1038: u32 = 0; + let mut x1039: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1038, &mut x1039, x1036, 0x8cb91e82); + let mut x1040: u32 = 0; + let mut x1041: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1040, &mut x1041, x1036, 0xa3386d28); + let mut x1042: u32 = 0; + let mut x1043: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1042, &mut x1043, x1036, 0xf5d6f7e); + let mut x1044: u32 = 0; + let mut x1045: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1044, &mut x1045, x1036, 0x50e641df); + let mut x1046: u32 = 0; + let mut x1047: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1046, &mut x1047, x1036, 0x152f7109); + let mut x1048: u32 = 0; + let mut x1049: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1048, &mut x1049, x1036, 0xed5456b3); + let mut x1050: u32 = 0; + let mut x1051: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1050, &mut x1051, x1036, 0x1f166e6c); + let mut x1052: u32 = 0; + let mut x1053: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1052, &mut x1053, x1036, 0xac0425a7); + let mut x1054: u32 = 0; + let mut x1055: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1054, &mut x1055, x1036, 0xcf3ab6af); + let mut x1056: u32 = 0; + let mut x1057: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1056, &mut x1057, x1036, 0x6b7fc310); + let mut x1058: u32 = 0; + let mut x1059: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1058, &mut x1059, x1036, 0x3b883202); + let mut x1060: u32 = 0; + let mut x1061: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1060, &mut x1061, x1036, 0xe9046565); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1062, &mut x1063, 0x0, x1061, x1058); + let mut x1064: u32 = 0; + let mut x1065: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1059, x1056); + let mut x1066: u32 = 0; + let mut x1067: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1057, x1054); + let mut x1068: u32 = 0; + let mut x1069: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1055, x1052); + let mut x1070: u32 = 0; + let mut x1071: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1053, x1050); + let mut x1072: u32 = 0; + let mut x1073: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1051, x1048); + let mut x1074: u32 = 0; + let mut x1075: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1074, &mut x1075, x1073, x1049, x1046); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1076, &mut x1077, x1075, x1047, x1044); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1078, &mut x1079, x1077, x1045, x1042); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1080, &mut x1081, x1079, x1043, x1040); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1082, &mut x1083, x1081, x1041, x1038); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1084, &mut x1085, 0x0, x1014, x1060); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1086, &mut x1087, x1085, x1016, x1062); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1088, &mut x1089, x1087, x1018, x1064); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1090, &mut x1091, x1089, x1020, x1066); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1092, &mut x1093, x1091, x1022, x1068); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1024, x1070); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1026, x1072); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1028, x1074); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1030, x1076); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1032, x1078); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1034, x1080); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1106, + &mut x1107, + x1105, + ((x1035 as u32) + ((x1013 as u32) + ((x989 as u32) + x945))), + x1082, + ); + let x1108: u32 = ((x1107 as u32) + ((x1083 as u32) + x1039)); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1109, &mut x1110, 0x0, x1086, 0xe9046565); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1111, &mut x1112, x1110, x1088, 0x3b883202); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1113, &mut x1114, x1112, x1090, 0x6b7fc310); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1115, &mut x1116, x1114, x1092, 0xcf3ab6af); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1117, &mut x1118, x1116, x1094, 0xac0425a7); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1119, &mut x1120, x1118, x1096, 0x1f166e6c); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1121, &mut x1122, x1120, x1098, 0xed5456b3); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1123, &mut x1124, x1122, x1100, 0x152f7109); + let mut x1125: u32 = 0; + let mut x1126: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1125, &mut x1126, x1124, x1102, 0x50e641df); + let mut x1127: u32 = 0; + let mut x1128: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1127, &mut x1128, x1126, x1104, 0xf5d6f7e); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1129, &mut x1130, x1128, x1106, 0xa3386d28); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1131, &mut x1132, x1130, x1108, 0x8cb91e82); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1133, &mut x1134, x1132, (0x0 as u32), (0x0 as u32)); + let mut x1135: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1135, x1134, x1109, x1086); + let mut x1136: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1136, x1134, x1111, x1088); + let mut x1137: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1137, x1134, x1113, x1090); + let mut x1138: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1138, x1134, x1115, x1092); + let mut x1139: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1139, x1134, x1117, x1094); + let mut x1140: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1140, x1134, x1119, x1096); + let mut x1141: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1141, x1134, x1121, x1098); + let mut x1142: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1142, x1134, x1123, x1100); + let mut x1143: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1143, x1134, x1125, x1102); + let mut x1144: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1144, x1134, x1127, x1104); + let mut x1145: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1145, x1134, x1129, x1106); + let mut x1146: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1146, x1134, x1131, x1108); + out1[0] = x1135; + out1[1] = x1136; + out1[2] = x1137; + out1[3] = x1138; + out1[4] = x1139; + out1[5] = x1140; + out1[6] = x1141; + out1[7] = x1142; + out1[8] = x1143; + out1[9] = x1144; + out1[10] = x1145; + out1[11] = x1146; +} +/// The function fiat_bp384_scalar_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_to_montgomery( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_non_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[0]); + let mut x13: u32 = 0; + let mut x14: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x13, &mut x14, x12, 0xce8941a); + let mut x15: u32 = 0; + let mut x16: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x15, &mut x16, x12, 0x614e97c2); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x17, &mut x18, x12, 0x8f886dc9); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x19, &mut x20, x12, 0x65165fdb); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x21, &mut x22, x12, 0x574a74cb); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x23, &mut x24, x12, 0x52d748ff); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x25, &mut x26, x12, 0x2a927e3b); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x27, &mut x28, x12, 0x9802688a); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x29, &mut x30, x12, 0x37264e20); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x31, &mut x32, x12, 0x2f2b6b6e); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x33, &mut x34, x12, 0xac4ed3a2); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x35, &mut x36, x12, 0xde771c8e); + let mut x37: u32 = 0; + let mut x38: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x37, &mut x38, 0x0, x36, x33); + let mut x39: u32 = 0; + let mut x40: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x39, &mut x40, x38, x34, x31); + let mut x41: u32 = 0; + let mut x42: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x41, &mut x42, x40, x32, x29); + let mut x43: u32 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x43, &mut x44, x42, x30, x27); + let mut x45: u32 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x45, &mut x46, x44, x28, x25); + let mut x47: u32 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x47, &mut x48, x46, x26, x23); + let mut x49: u32 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x49, &mut x50, x48, x24, x21); + let mut x51: u32 = 0; + let mut x52: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x22, x19); + let mut x53: u32 = 0; + let mut x54: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x20, x17); + let mut x55: u32 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x18, x15); + let mut x57: u32 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x16, x13); + let mut x59: u32 = 0; + let mut x60: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x59, &mut x60, x35, 0x5cb5bb93); + let mut x61: u32 = 0; + let mut x62: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x61, &mut x62, x59, 0x8cb91e82); + let mut x63: u32 = 0; + let mut x64: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x63, &mut x64, x59, 0xa3386d28); + let mut x65: u32 = 0; + let mut x66: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x65, &mut x66, x59, 0xf5d6f7e); + let mut x67: u32 = 0; + let mut x68: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x67, &mut x68, x59, 0x50e641df); + let mut x69: u32 = 0; + let mut x70: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x69, &mut x70, x59, 0x152f7109); + let mut x71: u32 = 0; + let mut x72: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x71, &mut x72, x59, 0xed5456b3); + let mut x73: u32 = 0; + let mut x74: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x73, &mut x74, x59, 0x1f166e6c); + let mut x75: u32 = 0; + let mut x76: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x75, &mut x76, x59, 0xac0425a7); + let mut x77: u32 = 0; + let mut x78: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x77, &mut x78, x59, 0xcf3ab6af); + let mut x79: u32 = 0; + let mut x80: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x79, &mut x80, x59, 0x6b7fc310); + let mut x81: u32 = 0; + let mut x82: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x81, &mut x82, x59, 0x3b883202); + let mut x83: u32 = 0; + let mut x84: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x83, &mut x84, x59, 0xe9046565); + let mut x85: u32 = 0; + let mut x86: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x85, &mut x86, 0x0, x84, x81); + let mut x87: u32 = 0; + let mut x88: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x87, &mut x88, x86, x82, x79); + let mut x89: u32 = 0; + let mut x90: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x89, &mut x90, x88, x80, x77); + let mut x91: u32 = 0; + let mut x92: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x91, &mut x92, x90, x78, x75); + let mut x93: u32 = 0; + let mut x94: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x93, &mut x94, x92, x76, x73); + let mut x95: u32 = 0; + let mut x96: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x95, &mut x96, x94, x74, x71); + let mut x97: u32 = 0; + let mut x98: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x97, &mut x98, x96, x72, x69); + let mut x99: u32 = 0; + let mut x100: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x99, &mut x100, x98, x70, x67); + let mut x101: u32 = 0; + let mut x102: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x101, &mut x102, x100, x68, x65); + let mut x103: u32 = 0; + let mut x104: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x103, &mut x104, x102, x66, x63); + let mut x105: u32 = 0; + let mut x106: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x105, &mut x106, x104, x64, x61); + let mut x107: u32 = 0; + let mut x108: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x107, &mut x108, 0x0, x35, x83); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x109, &mut x110, x108, x37, x85); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x111, &mut x112, x110, x39, x87); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x113, &mut x114, x112, x41, x89); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x115, &mut x116, x114, x43, x91); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x117, &mut x118, x116, x45, x93); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x119, &mut x120, x118, x47, x95); + let mut x121: u32 = 0; + let mut x122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x121, &mut x122, x120, x49, x97); + let mut x123: u32 = 0; + let mut x124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x123, &mut x124, x122, x51, x99); + let mut x125: u32 = 0; + let mut x126: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x125, &mut x126, x124, x53, x101); + let mut x127: u32 = 0; + let mut x128: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x127, &mut x128, x126, x55, x103); + let mut x129: u32 = 0; + let mut x130: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x129, &mut x130, x128, x57, x105); + let mut x131: u32 = 0; + let mut x132: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x131, &mut x132, x1, 0xce8941a); + let mut x133: u32 = 0; + let mut x134: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x133, &mut x134, x1, 0x614e97c2); + let mut x135: u32 = 0; + let mut x136: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x135, &mut x136, x1, 0x8f886dc9); + let mut x137: u32 = 0; + let mut x138: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x137, &mut x138, x1, 0x65165fdb); + let mut x139: u32 = 0; + let mut x140: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x139, &mut x140, x1, 0x574a74cb); + let mut x141: u32 = 0; + let mut x142: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x141, &mut x142, x1, 0x52d748ff); + let mut x143: u32 = 0; + let mut x144: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x143, &mut x144, x1, 0x2a927e3b); + let mut x145: u32 = 0; + let mut x146: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x145, &mut x146, x1, 0x9802688a); + let mut x147: u32 = 0; + let mut x148: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x147, &mut x148, x1, 0x37264e20); + let mut x149: u32 = 0; + let mut x150: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x149, &mut x150, x1, 0x2f2b6b6e); + let mut x151: u32 = 0; + let mut x152: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x151, &mut x152, x1, 0xac4ed3a2); + let mut x153: u32 = 0; + let mut x154: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x153, &mut x154, x1, 0xde771c8e); + let mut x155: u32 = 0; + let mut x156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x155, &mut x156, 0x0, x154, x151); + let mut x157: u32 = 0; + let mut x158: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x157, &mut x158, x156, x152, x149); + let mut x159: u32 = 0; + let mut x160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x159, &mut x160, x158, x150, x147); + let mut x161: u32 = 0; + let mut x162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x148, x145); + let mut x163: u32 = 0; + let mut x164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x146, x143); + let mut x165: u32 = 0; + let mut x166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x144, x141); + let mut x167: u32 = 0; + let mut x168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x142, x139); + let mut x169: u32 = 0; + let mut x170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x140, x137); + let mut x171: u32 = 0; + let mut x172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x138, x135); + let mut x173: u32 = 0; + let mut x174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x136, x133); + let mut x175: u32 = 0; + let mut x176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x175, &mut x176, x174, x134, x131); + let mut x177: u32 = 0; + let mut x178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x177, &mut x178, 0x0, x109, x153); + let mut x179: u32 = 0; + let mut x180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x179, &mut x180, x178, x111, x155); + let mut x181: u32 = 0; + let mut x182: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x181, &mut x182, x180, x113, x157); + let mut x183: u32 = 0; + let mut x184: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x183, &mut x184, x182, x115, x159); + let mut x185: u32 = 0; + let mut x186: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x185, &mut x186, x184, x117, x161); + let mut x187: u32 = 0; + let mut x188: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x187, &mut x188, x186, x119, x163); + let mut x189: u32 = 0; + let mut x190: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x189, &mut x190, x188, x121, x165); + let mut x191: u32 = 0; + let mut x192: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x191, &mut x192, x190, x123, x167); + let mut x193: u32 = 0; + let mut x194: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x193, &mut x194, x192, x125, x169); + let mut x195: u32 = 0; + let mut x196: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x195, &mut x196, x194, x127, x171); + let mut x197: u32 = 0; + let mut x198: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x197, &mut x198, x196, x129, x173); + let mut x199: u32 = 0; + let mut x200: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x199, + &mut x200, + x198, + (((x130 as u32) + ((x58 as u32) + x14)) + ((x106 as u32) + x62)), + x175, + ); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x201, &mut x202, x177, 0x5cb5bb93); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x203, &mut x204, x201, 0x8cb91e82); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x205, &mut x206, x201, 0xa3386d28); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x207, &mut x208, x201, 0xf5d6f7e); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x209, &mut x210, x201, 0x50e641df); + let mut x211: u32 = 0; + let mut x212: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x211, &mut x212, x201, 0x152f7109); + let mut x213: u32 = 0; + let mut x214: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x213, &mut x214, x201, 0xed5456b3); + let mut x215: u32 = 0; + let mut x216: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x215, &mut x216, x201, 0x1f166e6c); + let mut x217: u32 = 0; + let mut x218: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x217, &mut x218, x201, 0xac0425a7); + let mut x219: u32 = 0; + let mut x220: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x219, &mut x220, x201, 0xcf3ab6af); + let mut x221: u32 = 0; + let mut x222: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x221, &mut x222, x201, 0x6b7fc310); + let mut x223: u32 = 0; + let mut x224: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x223, &mut x224, x201, 0x3b883202); + let mut x225: u32 = 0; + let mut x226: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x225, &mut x226, x201, 0xe9046565); + let mut x227: u32 = 0; + let mut x228: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x227, &mut x228, 0x0, x226, x223); + let mut x229: u32 = 0; + let mut x230: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x229, &mut x230, x228, x224, x221); + let mut x231: u32 = 0; + let mut x232: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x231, &mut x232, x230, x222, x219); + let mut x233: u32 = 0; + let mut x234: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x233, &mut x234, x232, x220, x217); + let mut x235: u32 = 0; + let mut x236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x235, &mut x236, x234, x218, x215); + let mut x237: u32 = 0; + let mut x238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x237, &mut x238, x236, x216, x213); + let mut x239: u32 = 0; + let mut x240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x239, &mut x240, x238, x214, x211); + let mut x241: u32 = 0; + let mut x242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x241, &mut x242, x240, x212, x209); + let mut x243: u32 = 0; + let mut x244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x243, &mut x244, x242, x210, x207); + let mut x245: u32 = 0; + let mut x246: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x245, &mut x246, x244, x208, x205); + let mut x247: u32 = 0; + let mut x248: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x247, &mut x248, x246, x206, x203); + let mut x249: u32 = 0; + let mut x250: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x249, &mut x250, 0x0, x177, x225); + let mut x251: u32 = 0; + let mut x252: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x251, &mut x252, x250, x179, x227); + let mut x253: u32 = 0; + let mut x254: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x253, &mut x254, x252, x181, x229); + let mut x255: u32 = 0; + let mut x256: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x255, &mut x256, x254, x183, x231); + let mut x257: u32 = 0; + let mut x258: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x257, &mut x258, x256, x185, x233); + let mut x259: u32 = 0; + let mut x260: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x259, &mut x260, x258, x187, x235); + let mut x261: u32 = 0; + let mut x262: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x261, &mut x262, x260, x189, x237); + let mut x263: u32 = 0; + let mut x264: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x263, &mut x264, x262, x191, x239); + let mut x265: u32 = 0; + let mut x266: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x265, &mut x266, x264, x193, x241); + let mut x267: u32 = 0; + let mut x268: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x267, &mut x268, x266, x195, x243); + let mut x269: u32 = 0; + let mut x270: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x269, &mut x270, x268, x197, x245); + let mut x271: u32 = 0; + let mut x272: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x271, &mut x272, x270, x199, x247); + let mut x273: u32 = 0; + let mut x274: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x273, &mut x274, x2, 0xce8941a); + let mut x275: u32 = 0; + let mut x276: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x275, &mut x276, x2, 0x614e97c2); + let mut x277: u32 = 0; + let mut x278: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x277, &mut x278, x2, 0x8f886dc9); + let mut x279: u32 = 0; + let mut x280: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x279, &mut x280, x2, 0x65165fdb); + let mut x281: u32 = 0; + let mut x282: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x281, &mut x282, x2, 0x574a74cb); + let mut x283: u32 = 0; + let mut x284: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x283, &mut x284, x2, 0x52d748ff); + let mut x285: u32 = 0; + let mut x286: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x285, &mut x286, x2, 0x2a927e3b); + let mut x287: u32 = 0; + let mut x288: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x287, &mut x288, x2, 0x9802688a); + let mut x289: u32 = 0; + let mut x290: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x289, &mut x290, x2, 0x37264e20); + let mut x291: u32 = 0; + let mut x292: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x291, &mut x292, x2, 0x2f2b6b6e); + let mut x293: u32 = 0; + let mut x294: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x293, &mut x294, x2, 0xac4ed3a2); + let mut x295: u32 = 0; + let mut x296: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x295, &mut x296, x2, 0xde771c8e); + let mut x297: u32 = 0; + let mut x298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x297, &mut x298, 0x0, x296, x293); + let mut x299: u32 = 0; + let mut x300: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x299, &mut x300, x298, x294, x291); + let mut x301: u32 = 0; + let mut x302: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x301, &mut x302, x300, x292, x289); + let mut x303: u32 = 0; + let mut x304: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x303, &mut x304, x302, x290, x287); + let mut x305: u32 = 0; + let mut x306: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x305, &mut x306, x304, x288, x285); + let mut x307: u32 = 0; + let mut x308: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x307, &mut x308, x306, x286, x283); + let mut x309: u32 = 0; + let mut x310: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x309, &mut x310, x308, x284, x281); + let mut x311: u32 = 0; + let mut x312: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x311, &mut x312, x310, x282, x279); + let mut x313: u32 = 0; + let mut x314: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x313, &mut x314, x312, x280, x277); + let mut x315: u32 = 0; + let mut x316: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x315, &mut x316, x314, x278, x275); + let mut x317: u32 = 0; + let mut x318: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x317, &mut x318, x316, x276, x273); + let mut x319: u32 = 0; + let mut x320: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x319, &mut x320, 0x0, x251, x295); + let mut x321: u32 = 0; + let mut x322: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x321, &mut x322, x320, x253, x297); + let mut x323: u32 = 0; + let mut x324: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x323, &mut x324, x322, x255, x299); + let mut x325: u32 = 0; + let mut x326: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x325, &mut x326, x324, x257, x301); + let mut x327: u32 = 0; + let mut x328: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x327, &mut x328, x326, x259, x303); + let mut x329: u32 = 0; + let mut x330: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x329, &mut x330, x328, x261, x305); + let mut x331: u32 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x331, &mut x332, x330, x263, x307); + let mut x333: u32 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x333, &mut x334, x332, x265, x309); + let mut x335: u32 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x335, &mut x336, x334, x267, x311); + let mut x337: u32 = 0; + let mut x338: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x337, &mut x338, x336, x269, x313); + let mut x339: u32 = 0; + let mut x340: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x339, &mut x340, x338, x271, x315); + let mut x341: u32 = 0; + let mut x342: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x341, + &mut x342, + x340, + (((x272 as u32) + ((x200 as u32) + ((x176 as u32) + x132))) + ((x248 as u32) + x204)), + x317, + ); + let mut x343: u32 = 0; + let mut x344: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x343, &mut x344, x319, 0x5cb5bb93); + let mut x345: u32 = 0; + let mut x346: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x345, &mut x346, x343, 0x8cb91e82); + let mut x347: u32 = 0; + let mut x348: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x347, &mut x348, x343, 0xa3386d28); + let mut x349: u32 = 0; + let mut x350: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x349, &mut x350, x343, 0xf5d6f7e); + let mut x351: u32 = 0; + let mut x352: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x351, &mut x352, x343, 0x50e641df); + let mut x353: u32 = 0; + let mut x354: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x353, &mut x354, x343, 0x152f7109); + let mut x355: u32 = 0; + let mut x356: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x355, &mut x356, x343, 0xed5456b3); + let mut x357: u32 = 0; + let mut x358: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x357, &mut x358, x343, 0x1f166e6c); + let mut x359: u32 = 0; + let mut x360: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x359, &mut x360, x343, 0xac0425a7); + let mut x361: u32 = 0; + let mut x362: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x361, &mut x362, x343, 0xcf3ab6af); + let mut x363: u32 = 0; + let mut x364: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x363, &mut x364, x343, 0x6b7fc310); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x365, &mut x366, x343, 0x3b883202); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x367, &mut x368, x343, 0xe9046565); + let mut x369: u32 = 0; + let mut x370: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x369, &mut x370, 0x0, x368, x365); + let mut x371: u32 = 0; + let mut x372: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x371, &mut x372, x370, x366, x363); + let mut x373: u32 = 0; + let mut x374: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x373, &mut x374, x372, x364, x361); + let mut x375: u32 = 0; + let mut x376: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x375, &mut x376, x374, x362, x359); + let mut x377: u32 = 0; + let mut x378: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x377, &mut x378, x376, x360, x357); + let mut x379: u32 = 0; + let mut x380: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x379, &mut x380, x378, x358, x355); + let mut x381: u32 = 0; + let mut x382: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x381, &mut x382, x380, x356, x353); + let mut x383: u32 = 0; + let mut x384: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x383, &mut x384, x382, x354, x351); + let mut x385: u32 = 0; + let mut x386: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x385, &mut x386, x384, x352, x349); + let mut x387: u32 = 0; + let mut x388: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x387, &mut x388, x386, x350, x347); + let mut x389: u32 = 0; + let mut x390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x389, &mut x390, x388, x348, x345); + let mut x391: u32 = 0; + let mut x392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x391, &mut x392, 0x0, x319, x367); + let mut x393: u32 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x393, &mut x394, x392, x321, x369); + let mut x395: u32 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x395, &mut x396, x394, x323, x371); + let mut x397: u32 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x397, &mut x398, x396, x325, x373); + let mut x399: u32 = 0; + let mut x400: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x399, &mut x400, x398, x327, x375); + let mut x401: u32 = 0; + let mut x402: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x401, &mut x402, x400, x329, x377); + let mut x403: u32 = 0; + let mut x404: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x403, &mut x404, x402, x331, x379); + let mut x405: u32 = 0; + let mut x406: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x405, &mut x406, x404, x333, x381); + let mut x407: u32 = 0; + let mut x408: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x407, &mut x408, x406, x335, x383); + let mut x409: u32 = 0; + let mut x410: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x409, &mut x410, x408, x337, x385); + let mut x411: u32 = 0; + let mut x412: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x411, &mut x412, x410, x339, x387); + let mut x413: u32 = 0; + let mut x414: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x413, &mut x414, x412, x341, x389); + let mut x415: u32 = 0; + let mut x416: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x415, &mut x416, x3, 0xce8941a); + let mut x417: u32 = 0; + let mut x418: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x417, &mut x418, x3, 0x614e97c2); + let mut x419: u32 = 0; + let mut x420: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x419, &mut x420, x3, 0x8f886dc9); + let mut x421: u32 = 0; + let mut x422: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x421, &mut x422, x3, 0x65165fdb); + let mut x423: u32 = 0; + let mut x424: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x423, &mut x424, x3, 0x574a74cb); + let mut x425: u32 = 0; + let mut x426: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x425, &mut x426, x3, 0x52d748ff); + let mut x427: u32 = 0; + let mut x428: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x427, &mut x428, x3, 0x2a927e3b); + let mut x429: u32 = 0; + let mut x430: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x429, &mut x430, x3, 0x9802688a); + let mut x431: u32 = 0; + let mut x432: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x431, &mut x432, x3, 0x37264e20); + let mut x433: u32 = 0; + let mut x434: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x433, &mut x434, x3, 0x2f2b6b6e); + let mut x435: u32 = 0; + let mut x436: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x435, &mut x436, x3, 0xac4ed3a2); + let mut x437: u32 = 0; + let mut x438: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x437, &mut x438, x3, 0xde771c8e); + let mut x439: u32 = 0; + let mut x440: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x439, &mut x440, 0x0, x438, x435); + let mut x441: u32 = 0; + let mut x442: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x441, &mut x442, x440, x436, x433); + let mut x443: u32 = 0; + let mut x444: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x443, &mut x444, x442, x434, x431); + let mut x445: u32 = 0; + let mut x446: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x445, &mut x446, x444, x432, x429); + let mut x447: u32 = 0; + let mut x448: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x447, &mut x448, x446, x430, x427); + let mut x449: u32 = 0; + let mut x450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x449, &mut x450, x448, x428, x425); + let mut x451: u32 = 0; + let mut x452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x451, &mut x452, x450, x426, x423); + let mut x453: u32 = 0; + let mut x454: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x453, &mut x454, x452, x424, x421); + let mut x455: u32 = 0; + let mut x456: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x455, &mut x456, x454, x422, x419); + let mut x457: u32 = 0; + let mut x458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x457, &mut x458, x456, x420, x417); + let mut x459: u32 = 0; + let mut x460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x418, x415); + let mut x461: u32 = 0; + let mut x462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x461, &mut x462, 0x0, x393, x437); + let mut x463: u32 = 0; + let mut x464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x463, &mut x464, x462, x395, x439); + let mut x465: u32 = 0; + let mut x466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x465, &mut x466, x464, x397, x441); + let mut x467: u32 = 0; + let mut x468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x467, &mut x468, x466, x399, x443); + let mut x469: u32 = 0; + let mut x470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x469, &mut x470, x468, x401, x445); + let mut x471: u32 = 0; + let mut x472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x471, &mut x472, x470, x403, x447); + let mut x473: u32 = 0; + let mut x474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x473, &mut x474, x472, x405, x449); + let mut x475: u32 = 0; + let mut x476: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x475, &mut x476, x474, x407, x451); + let mut x477: u32 = 0; + let mut x478: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x477, &mut x478, x476, x409, x453); + let mut x479: u32 = 0; + let mut x480: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x479, &mut x480, x478, x411, x455); + let mut x481: u32 = 0; + let mut x482: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x481, &mut x482, x480, x413, x457); + let mut x483: u32 = 0; + let mut x484: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x483, + &mut x484, + x482, + (((x414 as u32) + ((x342 as u32) + ((x318 as u32) + x274))) + ((x390 as u32) + x346)), + x459, + ); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x485, &mut x486, x461, 0x5cb5bb93); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x487, &mut x488, x485, 0x8cb91e82); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x489, &mut x490, x485, 0xa3386d28); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x491, &mut x492, x485, 0xf5d6f7e); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x493, &mut x494, x485, 0x50e641df); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x495, &mut x496, x485, 0x152f7109); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x497, &mut x498, x485, 0xed5456b3); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x499, &mut x500, x485, 0x1f166e6c); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x501, &mut x502, x485, 0xac0425a7); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x503, &mut x504, x485, 0xcf3ab6af); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x505, &mut x506, x485, 0x6b7fc310); + let mut x507: u32 = 0; + let mut x508: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x507, &mut x508, x485, 0x3b883202); + let mut x509: u32 = 0; + let mut x510: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x509, &mut x510, x485, 0xe9046565); + let mut x511: u32 = 0; + let mut x512: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u32 = 0; + let mut x514: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u32 = 0; + let mut x516: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u32 = 0; + let mut x518: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u32 = 0; + let mut x520: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u32 = 0; + let mut x522: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u32 = 0; + let mut x524: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x523, &mut x524, x522, x498, x495); + let mut x525: u32 = 0; + let mut x526: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x525, &mut x526, x524, x496, x493); + let mut x527: u32 = 0; + let mut x528: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x527, &mut x528, x526, x494, x491); + let mut x529: u32 = 0; + let mut x530: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x529, &mut x530, x528, x492, x489); + let mut x531: u32 = 0; + let mut x532: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x531, &mut x532, x530, x490, x487); + let mut x533: u32 = 0; + let mut x534: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x533, &mut x534, 0x0, x461, x509); + let mut x535: u32 = 0; + let mut x536: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x535, &mut x536, x534, x463, x511); + let mut x537: u32 = 0; + let mut x538: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x537, &mut x538, x536, x465, x513); + let mut x539: u32 = 0; + let mut x540: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x539, &mut x540, x538, x467, x515); + let mut x541: u32 = 0; + let mut x542: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x541, &mut x542, x540, x469, x517); + let mut x543: u32 = 0; + let mut x544: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x543, &mut x544, x542, x471, x519); + let mut x545: u32 = 0; + let mut x546: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x545, &mut x546, x544, x473, x521); + let mut x547: u32 = 0; + let mut x548: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x547, &mut x548, x546, x475, x523); + let mut x549: u32 = 0; + let mut x550: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x549, &mut x550, x548, x477, x525); + let mut x551: u32 = 0; + let mut x552: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x551, &mut x552, x550, x479, x527); + let mut x553: u32 = 0; + let mut x554: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x553, &mut x554, x552, x481, x529); + let mut x555: u32 = 0; + let mut x556: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x555, &mut x556, x554, x483, x531); + let mut x557: u32 = 0; + let mut x558: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x557, &mut x558, x4, 0xce8941a); + let mut x559: u32 = 0; + let mut x560: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x559, &mut x560, x4, 0x614e97c2); + let mut x561: u32 = 0; + let mut x562: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x561, &mut x562, x4, 0x8f886dc9); + let mut x563: u32 = 0; + let mut x564: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x563, &mut x564, x4, 0x65165fdb); + let mut x565: u32 = 0; + let mut x566: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x565, &mut x566, x4, 0x574a74cb); + let mut x567: u32 = 0; + let mut x568: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x567, &mut x568, x4, 0x52d748ff); + let mut x569: u32 = 0; + let mut x570: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x569, &mut x570, x4, 0x2a927e3b); + let mut x571: u32 = 0; + let mut x572: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x571, &mut x572, x4, 0x9802688a); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x573, &mut x574, x4, 0x37264e20); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x575, &mut x576, x4, 0x2f2b6b6e); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x577, &mut x578, x4, 0xac4ed3a2); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x579, &mut x580, x4, 0xde771c8e); + let mut x581: u32 = 0; + let mut x582: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x581, &mut x582, 0x0, x580, x577); + let mut x583: u32 = 0; + let mut x584: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x583, &mut x584, x582, x578, x575); + let mut x585: u32 = 0; + let mut x586: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x585, &mut x586, x584, x576, x573); + let mut x587: u32 = 0; + let mut x588: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x587, &mut x588, x586, x574, x571); + let mut x589: u32 = 0; + let mut x590: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x589, &mut x590, x588, x572, x569); + let mut x591: u32 = 0; + let mut x592: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x591, &mut x592, x590, x570, x567); + let mut x593: u32 = 0; + let mut x594: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x593, &mut x594, x592, x568, x565); + let mut x595: u32 = 0; + let mut x596: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x595, &mut x596, x594, x566, x563); + let mut x597: u32 = 0; + let mut x598: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x597, &mut x598, x596, x564, x561); + let mut x599: u32 = 0; + let mut x600: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x599, &mut x600, x598, x562, x559); + let mut x601: u32 = 0; + let mut x602: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x601, &mut x602, x600, x560, x557); + let mut x603: u32 = 0; + let mut x604: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x603, &mut x604, 0x0, x535, x579); + let mut x605: u32 = 0; + let mut x606: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x605, &mut x606, x604, x537, x581); + let mut x607: u32 = 0; + let mut x608: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x607, &mut x608, x606, x539, x583); + let mut x609: u32 = 0; + let mut x610: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x609, &mut x610, x608, x541, x585); + let mut x611: u32 = 0; + let mut x612: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x611, &mut x612, x610, x543, x587); + let mut x613: u32 = 0; + let mut x614: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x613, &mut x614, x612, x545, x589); + let mut x615: u32 = 0; + let mut x616: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x615, &mut x616, x614, x547, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x617, &mut x618, x616, x549, x593); + let mut x619: u32 = 0; + let mut x620: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x619, &mut x620, x618, x551, x595); + let mut x621: u32 = 0; + let mut x622: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x621, &mut x622, x620, x553, x597); + let mut x623: u32 = 0; + let mut x624: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x623, &mut x624, x622, x555, x599); + let mut x625: u32 = 0; + let mut x626: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x625, + &mut x626, + x624, + (((x556 as u32) + ((x484 as u32) + ((x460 as u32) + x416))) + ((x532 as u32) + x488)), + x601, + ); + let mut x627: u32 = 0; + let mut x628: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x627, &mut x628, x603, 0x5cb5bb93); + let mut x629: u32 = 0; + let mut x630: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x629, &mut x630, x627, 0x8cb91e82); + let mut x631: u32 = 0; + let mut x632: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x631, &mut x632, x627, 0xa3386d28); + let mut x633: u32 = 0; + let mut x634: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x633, &mut x634, x627, 0xf5d6f7e); + let mut x635: u32 = 0; + let mut x636: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x635, &mut x636, x627, 0x50e641df); + let mut x637: u32 = 0; + let mut x638: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x637, &mut x638, x627, 0x152f7109); + let mut x639: u32 = 0; + let mut x640: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x639, &mut x640, x627, 0xed5456b3); + let mut x641: u32 = 0; + let mut x642: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x641, &mut x642, x627, 0x1f166e6c); + let mut x643: u32 = 0; + let mut x644: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x643, &mut x644, x627, 0xac0425a7); + let mut x645: u32 = 0; + let mut x646: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x645, &mut x646, x627, 0xcf3ab6af); + let mut x647: u32 = 0; + let mut x648: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x647, &mut x648, x627, 0x6b7fc310); + let mut x649: u32 = 0; + let mut x650: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x649, &mut x650, x627, 0x3b883202); + let mut x651: u32 = 0; + let mut x652: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x651, &mut x652, x627, 0xe9046565); + let mut x653: u32 = 0; + let mut x654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x653, &mut x654, 0x0, x652, x649); + let mut x655: u32 = 0; + let mut x656: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x655, &mut x656, x654, x650, x647); + let mut x657: u32 = 0; + let mut x658: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x657, &mut x658, x656, x648, x645); + let mut x659: u32 = 0; + let mut x660: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x659, &mut x660, x658, x646, x643); + let mut x661: u32 = 0; + let mut x662: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x661, &mut x662, x660, x644, x641); + let mut x663: u32 = 0; + let mut x664: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x663, &mut x664, x662, x642, x639); + let mut x665: u32 = 0; + let mut x666: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x665, &mut x666, x664, x640, x637); + let mut x667: u32 = 0; + let mut x668: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x667, &mut x668, x666, x638, x635); + let mut x669: u32 = 0; + let mut x670: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x669, &mut x670, x668, x636, x633); + let mut x671: u32 = 0; + let mut x672: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x671, &mut x672, x670, x634, x631); + let mut x673: u32 = 0; + let mut x674: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x673, &mut x674, x672, x632, x629); + let mut x675: u32 = 0; + let mut x676: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x675, &mut x676, 0x0, x603, x651); + let mut x677: u32 = 0; + let mut x678: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x677, &mut x678, x676, x605, x653); + let mut x679: u32 = 0; + let mut x680: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x679, &mut x680, x678, x607, x655); + let mut x681: u32 = 0; + let mut x682: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x681, &mut x682, x680, x609, x657); + let mut x683: u32 = 0; + let mut x684: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x683, &mut x684, x682, x611, x659); + let mut x685: u32 = 0; + let mut x686: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x685, &mut x686, x684, x613, x661); + let mut x687: u32 = 0; + let mut x688: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x687, &mut x688, x686, x615, x663); + let mut x689: u32 = 0; + let mut x690: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x689, &mut x690, x688, x617, x665); + let mut x691: u32 = 0; + let mut x692: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x691, &mut x692, x690, x619, x667); + let mut x693: u32 = 0; + let mut x694: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x693, &mut x694, x692, x621, x669); + let mut x695: u32 = 0; + let mut x696: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x695, &mut x696, x694, x623, x671); + let mut x697: u32 = 0; + let mut x698: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x697, &mut x698, x696, x625, x673); + let mut x699: u32 = 0; + let mut x700: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x699, &mut x700, x5, 0xce8941a); + let mut x701: u32 = 0; + let mut x702: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x701, &mut x702, x5, 0x614e97c2); + let mut x703: u32 = 0; + let mut x704: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x703, &mut x704, x5, 0x8f886dc9); + let mut x705: u32 = 0; + let mut x706: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x705, &mut x706, x5, 0x65165fdb); + let mut x707: u32 = 0; + let mut x708: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x707, &mut x708, x5, 0x574a74cb); + let mut x709: u32 = 0; + let mut x710: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x709, &mut x710, x5, 0x52d748ff); + let mut x711: u32 = 0; + let mut x712: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x711, &mut x712, x5, 0x2a927e3b); + let mut x713: u32 = 0; + let mut x714: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x713, &mut x714, x5, 0x9802688a); + let mut x715: u32 = 0; + let mut x716: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x715, &mut x716, x5, 0x37264e20); + let mut x717: u32 = 0; + let mut x718: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x717, &mut x718, x5, 0x2f2b6b6e); + let mut x719: u32 = 0; + let mut x720: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x719, &mut x720, x5, 0xac4ed3a2); + let mut x721: u32 = 0; + let mut x722: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x721, &mut x722, x5, 0xde771c8e); + let mut x723: u32 = 0; + let mut x724: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x723, &mut x724, 0x0, x722, x719); + let mut x725: u32 = 0; + let mut x726: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x725, &mut x726, x724, x720, x717); + let mut x727: u32 = 0; + let mut x728: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x727, &mut x728, x726, x718, x715); + let mut x729: u32 = 0; + let mut x730: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x729, &mut x730, x728, x716, x713); + let mut x731: u32 = 0; + let mut x732: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x731, &mut x732, x730, x714, x711); + let mut x733: u32 = 0; + let mut x734: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x733, &mut x734, x732, x712, x709); + let mut x735: u32 = 0; + let mut x736: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x735, &mut x736, x734, x710, x707); + let mut x737: u32 = 0; + let mut x738: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x737, &mut x738, x736, x708, x705); + let mut x739: u32 = 0; + let mut x740: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x739, &mut x740, x738, x706, x703); + let mut x741: u32 = 0; + let mut x742: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x741, &mut x742, x740, x704, x701); + let mut x743: u32 = 0; + let mut x744: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x743, &mut x744, x742, x702, x699); + let mut x745: u32 = 0; + let mut x746: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x745, &mut x746, 0x0, x677, x721); + let mut x747: u32 = 0; + let mut x748: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x747, &mut x748, x746, x679, x723); + let mut x749: u32 = 0; + let mut x750: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x749, &mut x750, x748, x681, x725); + let mut x751: u32 = 0; + let mut x752: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x751, &mut x752, x750, x683, x727); + let mut x753: u32 = 0; + let mut x754: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x753, &mut x754, x752, x685, x729); + let mut x755: u32 = 0; + let mut x756: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x755, &mut x756, x754, x687, x731); + let mut x757: u32 = 0; + let mut x758: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x757, &mut x758, x756, x689, x733); + let mut x759: u32 = 0; + let mut x760: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x759, &mut x760, x758, x691, x735); + let mut x761: u32 = 0; + let mut x762: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x761, &mut x762, x760, x693, x737); + let mut x763: u32 = 0; + let mut x764: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x763, &mut x764, x762, x695, x739); + let mut x765: u32 = 0; + let mut x766: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x765, &mut x766, x764, x697, x741); + let mut x767: u32 = 0; + let mut x768: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x767, + &mut x768, + x766, + (((x698 as u32) + ((x626 as u32) + ((x602 as u32) + x558))) + ((x674 as u32) + x630)), + x743, + ); + let mut x769: u32 = 0; + let mut x770: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x769, &mut x770, x745, 0x5cb5bb93); + let mut x771: u32 = 0; + let mut x772: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x771, &mut x772, x769, 0x8cb91e82); + let mut x773: u32 = 0; + let mut x774: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x773, &mut x774, x769, 0xa3386d28); + let mut x775: u32 = 0; + let mut x776: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x775, &mut x776, x769, 0xf5d6f7e); + let mut x777: u32 = 0; + let mut x778: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x777, &mut x778, x769, 0x50e641df); + let mut x779: u32 = 0; + let mut x780: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x779, &mut x780, x769, 0x152f7109); + let mut x781: u32 = 0; + let mut x782: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x781, &mut x782, x769, 0xed5456b3); + let mut x783: u32 = 0; + let mut x784: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x783, &mut x784, x769, 0x1f166e6c); + let mut x785: u32 = 0; + let mut x786: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x785, &mut x786, x769, 0xac0425a7); + let mut x787: u32 = 0; + let mut x788: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x787, &mut x788, x769, 0xcf3ab6af); + let mut x789: u32 = 0; + let mut x790: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x789, &mut x790, x769, 0x6b7fc310); + let mut x791: u32 = 0; + let mut x792: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x791, &mut x792, x769, 0x3b883202); + let mut x793: u32 = 0; + let mut x794: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x793, &mut x794, x769, 0xe9046565); + let mut x795: u32 = 0; + let mut x796: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x795, &mut x796, 0x0, x794, x791); + let mut x797: u32 = 0; + let mut x798: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x797, &mut x798, x796, x792, x789); + let mut x799: u32 = 0; + let mut x800: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x799, &mut x800, x798, x790, x787); + let mut x801: u32 = 0; + let mut x802: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x801, &mut x802, x800, x788, x785); + let mut x803: u32 = 0; + let mut x804: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x803, &mut x804, x802, x786, x783); + let mut x805: u32 = 0; + let mut x806: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x805, &mut x806, x804, x784, x781); + let mut x807: u32 = 0; + let mut x808: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x807, &mut x808, x806, x782, x779); + let mut x809: u32 = 0; + let mut x810: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x809, &mut x810, x808, x780, x777); + let mut x811: u32 = 0; + let mut x812: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x811, &mut x812, x810, x778, x775); + let mut x813: u32 = 0; + let mut x814: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x813, &mut x814, x812, x776, x773); + let mut x815: u32 = 0; + let mut x816: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x815, &mut x816, x814, x774, x771); + let mut x817: u32 = 0; + let mut x818: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x817, &mut x818, 0x0, x745, x793); + let mut x819: u32 = 0; + let mut x820: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x819, &mut x820, x818, x747, x795); + let mut x821: u32 = 0; + let mut x822: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x821, &mut x822, x820, x749, x797); + let mut x823: u32 = 0; + let mut x824: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x823, &mut x824, x822, x751, x799); + let mut x825: u32 = 0; + let mut x826: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x825, &mut x826, x824, x753, x801); + let mut x827: u32 = 0; + let mut x828: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x827, &mut x828, x826, x755, x803); + let mut x829: u32 = 0; + let mut x830: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x829, &mut x830, x828, x757, x805); + let mut x831: u32 = 0; + let mut x832: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x831, &mut x832, x830, x759, x807); + let mut x833: u32 = 0; + let mut x834: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x833, &mut x834, x832, x761, x809); + let mut x835: u32 = 0; + let mut x836: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x835, &mut x836, x834, x763, x811); + let mut x837: u32 = 0; + let mut x838: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x837, &mut x838, x836, x765, x813); + let mut x839: u32 = 0; + let mut x840: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x839, &mut x840, x838, x767, x815); + let mut x841: u32 = 0; + let mut x842: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x841, &mut x842, x6, 0xce8941a); + let mut x843: u32 = 0; + let mut x844: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x843, &mut x844, x6, 0x614e97c2); + let mut x845: u32 = 0; + let mut x846: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x845, &mut x846, x6, 0x8f886dc9); + let mut x847: u32 = 0; + let mut x848: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x847, &mut x848, x6, 0x65165fdb); + let mut x849: u32 = 0; + let mut x850: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x849, &mut x850, x6, 0x574a74cb); + let mut x851: u32 = 0; + let mut x852: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x851, &mut x852, x6, 0x52d748ff); + let mut x853: u32 = 0; + let mut x854: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x853, &mut x854, x6, 0x2a927e3b); + let mut x855: u32 = 0; + let mut x856: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x855, &mut x856, x6, 0x9802688a); + let mut x857: u32 = 0; + let mut x858: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x857, &mut x858, x6, 0x37264e20); + let mut x859: u32 = 0; + let mut x860: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x859, &mut x860, x6, 0x2f2b6b6e); + let mut x861: u32 = 0; + let mut x862: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x861, &mut x862, x6, 0xac4ed3a2); + let mut x863: u32 = 0; + let mut x864: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x863, &mut x864, x6, 0xde771c8e); + let mut x865: u32 = 0; + let mut x866: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x865, &mut x866, 0x0, x864, x861); + let mut x867: u32 = 0; + let mut x868: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x867, &mut x868, x866, x862, x859); + let mut x869: u32 = 0; + let mut x870: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x869, &mut x870, x868, x860, x857); + let mut x871: u32 = 0; + let mut x872: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x871, &mut x872, x870, x858, x855); + let mut x873: u32 = 0; + let mut x874: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x873, &mut x874, x872, x856, x853); + let mut x875: u32 = 0; + let mut x876: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x875, &mut x876, x874, x854, x851); + let mut x877: u32 = 0; + let mut x878: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x877, &mut x878, x876, x852, x849); + let mut x879: u32 = 0; + let mut x880: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x879, &mut x880, x878, x850, x847); + let mut x881: u32 = 0; + let mut x882: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x881, &mut x882, x880, x848, x845); + let mut x883: u32 = 0; + let mut x884: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x883, &mut x884, x882, x846, x843); + let mut x885: u32 = 0; + let mut x886: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x885, &mut x886, x884, x844, x841); + let mut x887: u32 = 0; + let mut x888: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x887, &mut x888, 0x0, x819, x863); + let mut x889: u32 = 0; + let mut x890: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x889, &mut x890, x888, x821, x865); + let mut x891: u32 = 0; + let mut x892: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x891, &mut x892, x890, x823, x867); + let mut x893: u32 = 0; + let mut x894: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x893, &mut x894, x892, x825, x869); + let mut x895: u32 = 0; + let mut x896: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x895, &mut x896, x894, x827, x871); + let mut x897: u32 = 0; + let mut x898: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x897, &mut x898, x896, x829, x873); + let mut x899: u32 = 0; + let mut x900: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x899, &mut x900, x898, x831, x875); + let mut x901: u32 = 0; + let mut x902: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x901, &mut x902, x900, x833, x877); + let mut x903: u32 = 0; + let mut x904: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x903, &mut x904, x902, x835, x879); + let mut x905: u32 = 0; + let mut x906: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x905, &mut x906, x904, x837, x881); + let mut x907: u32 = 0; + let mut x908: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x907, &mut x908, x906, x839, x883); + let mut x909: u32 = 0; + let mut x910: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x909, + &mut x910, + x908, + (((x840 as u32) + ((x768 as u32) + ((x744 as u32) + x700))) + ((x816 as u32) + x772)), + x885, + ); + let mut x911: u32 = 0; + let mut x912: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x911, &mut x912, x887, 0x5cb5bb93); + let mut x913: u32 = 0; + let mut x914: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x913, &mut x914, x911, 0x8cb91e82); + let mut x915: u32 = 0; + let mut x916: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x915, &mut x916, x911, 0xa3386d28); + let mut x917: u32 = 0; + let mut x918: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x917, &mut x918, x911, 0xf5d6f7e); + let mut x919: u32 = 0; + let mut x920: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x919, &mut x920, x911, 0x50e641df); + let mut x921: u32 = 0; + let mut x922: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x921, &mut x922, x911, 0x152f7109); + let mut x923: u32 = 0; + let mut x924: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x923, &mut x924, x911, 0xed5456b3); + let mut x925: u32 = 0; + let mut x926: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x925, &mut x926, x911, 0x1f166e6c); + let mut x927: u32 = 0; + let mut x928: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x927, &mut x928, x911, 0xac0425a7); + let mut x929: u32 = 0; + let mut x930: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x929, &mut x930, x911, 0xcf3ab6af); + let mut x931: u32 = 0; + let mut x932: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x931, &mut x932, x911, 0x6b7fc310); + let mut x933: u32 = 0; + let mut x934: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x933, &mut x934, x911, 0x3b883202); + let mut x935: u32 = 0; + let mut x936: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x935, &mut x936, x911, 0xe9046565); + let mut x937: u32 = 0; + let mut x938: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x937, &mut x938, 0x0, x936, x933); + let mut x939: u32 = 0; + let mut x940: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x939, &mut x940, x938, x934, x931); + let mut x941: u32 = 0; + let mut x942: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x941, &mut x942, x940, x932, x929); + let mut x943: u32 = 0; + let mut x944: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x943, &mut x944, x942, x930, x927); + let mut x945: u32 = 0; + let mut x946: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x945, &mut x946, x944, x928, x925); + let mut x947: u32 = 0; + let mut x948: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x947, &mut x948, x946, x926, x923); + let mut x949: u32 = 0; + let mut x950: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x949, &mut x950, x948, x924, x921); + let mut x951: u32 = 0; + let mut x952: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x951, &mut x952, x950, x922, x919); + let mut x953: u32 = 0; + let mut x954: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x953, &mut x954, x952, x920, x917); + let mut x955: u32 = 0; + let mut x956: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x955, &mut x956, x954, x918, x915); + let mut x957: u32 = 0; + let mut x958: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x957, &mut x958, x956, x916, x913); + let mut x959: u32 = 0; + let mut x960: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x959, &mut x960, 0x0, x887, x935); + let mut x961: u32 = 0; + let mut x962: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x961, &mut x962, x960, x889, x937); + let mut x963: u32 = 0; + let mut x964: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x963, &mut x964, x962, x891, x939); + let mut x965: u32 = 0; + let mut x966: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x965, &mut x966, x964, x893, x941); + let mut x967: u32 = 0; + let mut x968: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x967, &mut x968, x966, x895, x943); + let mut x969: u32 = 0; + let mut x970: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x969, &mut x970, x968, x897, x945); + let mut x971: u32 = 0; + let mut x972: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x971, &mut x972, x970, x899, x947); + let mut x973: u32 = 0; + let mut x974: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x973, &mut x974, x972, x901, x949); + let mut x975: u32 = 0; + let mut x976: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x975, &mut x976, x974, x903, x951); + let mut x977: u32 = 0; + let mut x978: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x977, &mut x978, x976, x905, x953); + let mut x979: u32 = 0; + let mut x980: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x979, &mut x980, x978, x907, x955); + let mut x981: u32 = 0; + let mut x982: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x981, &mut x982, x980, x909, x957); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x983, &mut x984, x7, 0xce8941a); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x985, &mut x986, x7, 0x614e97c2); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x987, &mut x988, x7, 0x8f886dc9); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x989, &mut x990, x7, 0x65165fdb); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x991, &mut x992, x7, 0x574a74cb); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x993, &mut x994, x7, 0x52d748ff); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x995, &mut x996, x7, 0x2a927e3b); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x997, &mut x998, x7, 0x9802688a); + let mut x999: u32 = 0; + let mut x1000: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x999, &mut x1000, x7, 0x37264e20); + let mut x1001: u32 = 0; + let mut x1002: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1001, &mut x1002, x7, 0x2f2b6b6e); + let mut x1003: u32 = 0; + let mut x1004: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1003, &mut x1004, x7, 0xac4ed3a2); + let mut x1005: u32 = 0; + let mut x1006: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1005, &mut x1006, x7, 0xde771c8e); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1007, &mut x1008, 0x0, x1006, x1003); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1009, &mut x1010, x1008, x1004, x1001); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1011, &mut x1012, x1010, x1002, x999); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1013, &mut x1014, x1012, x1000, x997); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1015, &mut x1016, x1014, x998, x995); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1017, &mut x1018, x1016, x996, x993); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1019, &mut x1020, x1018, x994, x991); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1021, &mut x1022, x1020, x992, x989); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1023, &mut x1024, x1022, x990, x987); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1025, &mut x1026, x1024, x988, x985); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1027, &mut x1028, x1026, x986, x983); + let mut x1029: u32 = 0; + let mut x1030: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1029, &mut x1030, 0x0, x961, x1005); + let mut x1031: u32 = 0; + let mut x1032: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1031, &mut x1032, x1030, x963, x1007); + let mut x1033: u32 = 0; + let mut x1034: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1033, &mut x1034, x1032, x965, x1009); + let mut x1035: u32 = 0; + let mut x1036: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1035, &mut x1036, x1034, x967, x1011); + let mut x1037: u32 = 0; + let mut x1038: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1037, &mut x1038, x1036, x969, x1013); + let mut x1039: u32 = 0; + let mut x1040: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1039, &mut x1040, x1038, x971, x1015); + let mut x1041: u32 = 0; + let mut x1042: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1041, &mut x1042, x1040, x973, x1017); + let mut x1043: u32 = 0; + let mut x1044: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1043, &mut x1044, x1042, x975, x1019); + let mut x1045: u32 = 0; + let mut x1046: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1045, &mut x1046, x1044, x977, x1021); + let mut x1047: u32 = 0; + let mut x1048: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1047, &mut x1048, x1046, x979, x1023); + let mut x1049: u32 = 0; + let mut x1050: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1049, &mut x1050, x1048, x981, x1025); + let mut x1051: u32 = 0; + let mut x1052: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1051, + &mut x1052, + x1050, + (((x982 as u32) + ((x910 as u32) + ((x886 as u32) + x842))) + ((x958 as u32) + x914)), + x1027, + ); + let mut x1053: u32 = 0; + let mut x1054: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1053, &mut x1054, x1029, 0x5cb5bb93); + let mut x1055: u32 = 0; + let mut x1056: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1055, &mut x1056, x1053, 0x8cb91e82); + let mut x1057: u32 = 0; + let mut x1058: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1057, &mut x1058, x1053, 0xa3386d28); + let mut x1059: u32 = 0; + let mut x1060: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1059, &mut x1060, x1053, 0xf5d6f7e); + let mut x1061: u32 = 0; + let mut x1062: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1061, &mut x1062, x1053, 0x50e641df); + let mut x1063: u32 = 0; + let mut x1064: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1063, &mut x1064, x1053, 0x152f7109); + let mut x1065: u32 = 0; + let mut x1066: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1065, &mut x1066, x1053, 0xed5456b3); + let mut x1067: u32 = 0; + let mut x1068: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1067, &mut x1068, x1053, 0x1f166e6c); + let mut x1069: u32 = 0; + let mut x1070: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1069, &mut x1070, x1053, 0xac0425a7); + let mut x1071: u32 = 0; + let mut x1072: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1071, &mut x1072, x1053, 0xcf3ab6af); + let mut x1073: u32 = 0; + let mut x1074: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1073, &mut x1074, x1053, 0x6b7fc310); + let mut x1075: u32 = 0; + let mut x1076: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1075, &mut x1076, x1053, 0x3b883202); + let mut x1077: u32 = 0; + let mut x1078: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1077, &mut x1078, x1053, 0xe9046565); + let mut x1079: u32 = 0; + let mut x1080: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1079, &mut x1080, 0x0, x1078, x1075); + let mut x1081: u32 = 0; + let mut x1082: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1076, x1073); + let mut x1083: u32 = 0; + let mut x1084: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1074, x1071); + let mut x1085: u32 = 0; + let mut x1086: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1072, x1069); + let mut x1087: u32 = 0; + let mut x1088: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1070, x1067); + let mut x1089: u32 = 0; + let mut x1090: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1068, x1065); + let mut x1091: u32 = 0; + let mut x1092: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1066, x1063); + let mut x1093: u32 = 0; + let mut x1094: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1093, &mut x1094, x1092, x1064, x1061); + let mut x1095: u32 = 0; + let mut x1096: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1095, &mut x1096, x1094, x1062, x1059); + let mut x1097: u32 = 0; + let mut x1098: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1060, x1057); + let mut x1099: u32 = 0; + let mut x1100: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1058, x1055); + let mut x1101: u32 = 0; + let mut x1102: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1101, &mut x1102, 0x0, x1029, x1077); + let mut x1103: u32 = 0; + let mut x1104: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1103, &mut x1104, x1102, x1031, x1079); + let mut x1105: u32 = 0; + let mut x1106: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1033, x1081); + let mut x1107: u32 = 0; + let mut x1108: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1035, x1083); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1037, x1085); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1039, x1087); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1041, x1089); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1043, x1091); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1045, x1093); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1047, x1095); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1049, x1097); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1051, x1099); + let mut x1125: u32 = 0; + let mut x1126: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1125, &mut x1126, x8, 0xce8941a); + let mut x1127: u32 = 0; + let mut x1128: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1127, &mut x1128, x8, 0x614e97c2); + let mut x1129: u32 = 0; + let mut x1130: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1129, &mut x1130, x8, 0x8f886dc9); + let mut x1131: u32 = 0; + let mut x1132: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1131, &mut x1132, x8, 0x65165fdb); + let mut x1133: u32 = 0; + let mut x1134: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1133, &mut x1134, x8, 0x574a74cb); + let mut x1135: u32 = 0; + let mut x1136: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1135, &mut x1136, x8, 0x52d748ff); + let mut x1137: u32 = 0; + let mut x1138: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1137, &mut x1138, x8, 0x2a927e3b); + let mut x1139: u32 = 0; + let mut x1140: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1139, &mut x1140, x8, 0x9802688a); + let mut x1141: u32 = 0; + let mut x1142: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1141, &mut x1142, x8, 0x37264e20); + let mut x1143: u32 = 0; + let mut x1144: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1143, &mut x1144, x8, 0x2f2b6b6e); + let mut x1145: u32 = 0; + let mut x1146: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1145, &mut x1146, x8, 0xac4ed3a2); + let mut x1147: u32 = 0; + let mut x1148: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1147, &mut x1148, x8, 0xde771c8e); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1149, &mut x1150, 0x0, x1148, x1145); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1146, x1143); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1144, x1141); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1142, x1139); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1140, x1137); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1138, x1135); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1136, x1133); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1134, x1131); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1132, x1129); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1130, x1127); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1128, x1125); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1171, &mut x1172, 0x0, x1103, x1147); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1105, x1149); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1107, x1151); + let mut x1177: u32 = 0; + let mut x1178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1109, x1153); + let mut x1179: u32 = 0; + let mut x1180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1111, x1155); + let mut x1181: u32 = 0; + let mut x1182: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1113, x1157); + let mut x1183: u32 = 0; + let mut x1184: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1115, x1159); + let mut x1185: u32 = 0; + let mut x1186: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1117, x1161); + let mut x1187: u32 = 0; + let mut x1188: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1187, &mut x1188, x1186, x1119, x1163); + let mut x1189: u32 = 0; + let mut x1190: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1121, x1165); + let mut x1191: u32 = 0; + let mut x1192: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1123, x1167); + let mut x1193: u32 = 0; + let mut x1194: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1193, + &mut x1194, + x1192, + (((x1124 as u32) + ((x1052 as u32) + ((x1028 as u32) + x984))) + ((x1100 as u32) + x1056)), + x1169, + ); + let mut x1195: u32 = 0; + let mut x1196: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1195, &mut x1196, x1171, 0x5cb5bb93); + let mut x1197: u32 = 0; + let mut x1198: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1197, &mut x1198, x1195, 0x8cb91e82); + let mut x1199: u32 = 0; + let mut x1200: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1199, &mut x1200, x1195, 0xa3386d28); + let mut x1201: u32 = 0; + let mut x1202: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1201, &mut x1202, x1195, 0xf5d6f7e); + let mut x1203: u32 = 0; + let mut x1204: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1203, &mut x1204, x1195, 0x50e641df); + let mut x1205: u32 = 0; + let mut x1206: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1205, &mut x1206, x1195, 0x152f7109); + let mut x1207: u32 = 0; + let mut x1208: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1207, &mut x1208, x1195, 0xed5456b3); + let mut x1209: u32 = 0; + let mut x1210: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1209, &mut x1210, x1195, 0x1f166e6c); + let mut x1211: u32 = 0; + let mut x1212: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1211, &mut x1212, x1195, 0xac0425a7); + let mut x1213: u32 = 0; + let mut x1214: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1213, &mut x1214, x1195, 0xcf3ab6af); + let mut x1215: u32 = 0; + let mut x1216: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1215, &mut x1216, x1195, 0x6b7fc310); + let mut x1217: u32 = 0; + let mut x1218: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1217, &mut x1218, x1195, 0x3b883202); + let mut x1219: u32 = 0; + let mut x1220: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1219, &mut x1220, x1195, 0xe9046565); + let mut x1221: u32 = 0; + let mut x1222: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1221, &mut x1222, 0x0, x1220, x1217); + let mut x1223: u32 = 0; + let mut x1224: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1223, &mut x1224, x1222, x1218, x1215); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1225, &mut x1226, x1224, x1216, x1213); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1214, x1211); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1212, x1209); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1210, x1207); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1208, x1205); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1206, x1203); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1204, x1201); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1202, x1199); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1200, x1197); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1243, &mut x1244, 0x0, x1171, x1219); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1173, x1221); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1175, x1223); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1177, x1225); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1179, x1227); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1181, x1229); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1183, x1231); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1185, x1233); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1187, x1235); + let mut x1261: u32 = 0; + let mut x1262: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1261, &mut x1262, x1260, x1189, x1237); + let mut x1263: u32 = 0; + let mut x1264: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1263, &mut x1264, x1262, x1191, x1239); + let mut x1265: u32 = 0; + let mut x1266: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1265, &mut x1266, x1264, x1193, x1241); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1267, &mut x1268, x9, 0xce8941a); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1269, &mut x1270, x9, 0x614e97c2); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1271, &mut x1272, x9, 0x8f886dc9); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1273, &mut x1274, x9, 0x65165fdb); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1275, &mut x1276, x9, 0x574a74cb); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1277, &mut x1278, x9, 0x52d748ff); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1279, &mut x1280, x9, 0x2a927e3b); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1281, &mut x1282, x9, 0x9802688a); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1283, &mut x1284, x9, 0x37264e20); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1285, &mut x1286, x9, 0x2f2b6b6e); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1287, &mut x1288, x9, 0xac4ed3a2); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1289, &mut x1290, x9, 0xde771c8e); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1291, &mut x1292, 0x0, x1290, x1287); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1288, x1285); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1286, x1283); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1284, x1281); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1282, x1279); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1280, x1277); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1278, x1275); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1276, x1273); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1274, x1271); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1272, x1269); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1270, x1267); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1313, &mut x1314, 0x0, x1245, x1289); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1247, x1291); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1249, x1293); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1251, x1295); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1253, x1297); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1255, x1299); + let mut x1325: u32 = 0; + let mut x1326: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1325, &mut x1326, x1324, x1257, x1301); + let mut x1327: u32 = 0; + let mut x1328: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1327, &mut x1328, x1326, x1259, x1303); + let mut x1329: u32 = 0; + let mut x1330: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1329, &mut x1330, x1328, x1261, x1305); + let mut x1331: u32 = 0; + let mut x1332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1331, &mut x1332, x1330, x1263, x1307); + let mut x1333: u32 = 0; + let mut x1334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1333, &mut x1334, x1332, x1265, x1309); + let mut x1335: u32 = 0; + let mut x1336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1335, + &mut x1336, + x1334, + (((x1266 as u32) + ((x1194 as u32) + ((x1170 as u32) + x1126))) + ((x1242 as u32) + x1198)), + x1311, + ); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1337, &mut x1338, x1313, 0x5cb5bb93); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1339, &mut x1340, x1337, 0x8cb91e82); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1341, &mut x1342, x1337, 0xa3386d28); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1343, &mut x1344, x1337, 0xf5d6f7e); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1345, &mut x1346, x1337, 0x50e641df); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1347, &mut x1348, x1337, 0x152f7109); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1349, &mut x1350, x1337, 0xed5456b3); + let mut x1351: u32 = 0; + let mut x1352: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1351, &mut x1352, x1337, 0x1f166e6c); + let mut x1353: u32 = 0; + let mut x1354: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1353, &mut x1354, x1337, 0xac0425a7); + let mut x1355: u32 = 0; + let mut x1356: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1355, &mut x1356, x1337, 0xcf3ab6af); + let mut x1357: u32 = 0; + let mut x1358: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1357, &mut x1358, x1337, 0x6b7fc310); + let mut x1359: u32 = 0; + let mut x1360: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1359, &mut x1360, x1337, 0x3b883202); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1361, &mut x1362, x1337, 0xe9046565); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1363, &mut x1364, 0x0, x1362, x1359); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1360, x1357); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1358, x1355); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1356, x1353); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1354, x1351); + let mut x1373: u32 = 0; + let mut x1374: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1352, x1349); + let mut x1375: u32 = 0; + let mut x1376: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1350, x1347); + let mut x1377: u32 = 0; + let mut x1378: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1377, &mut x1378, x1376, x1348, x1345); + let mut x1379: u32 = 0; + let mut x1380: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1346, x1343); + let mut x1381: u32 = 0; + let mut x1382: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1344, x1341); + let mut x1383: u32 = 0; + let mut x1384: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1342, x1339); + let mut x1385: u32 = 0; + let mut x1386: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1385, &mut x1386, 0x0, x1313, x1361); + let mut x1387: u32 = 0; + let mut x1388: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1315, x1363); + let mut x1389: u32 = 0; + let mut x1390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1317, x1365); + let mut x1391: u32 = 0; + let mut x1392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1391, &mut x1392, x1390, x1319, x1367); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1321, x1369); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1323, x1371); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1325, x1373); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1327, x1375); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1329, x1377); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1331, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1333, x1381); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1335, x1383); + let mut x1409: u32 = 0; + let mut x1410: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1409, &mut x1410, x10, 0xce8941a); + let mut x1411: u32 = 0; + let mut x1412: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1411, &mut x1412, x10, 0x614e97c2); + let mut x1413: u32 = 0; + let mut x1414: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1413, &mut x1414, x10, 0x8f886dc9); + let mut x1415: u32 = 0; + let mut x1416: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1415, &mut x1416, x10, 0x65165fdb); + let mut x1417: u32 = 0; + let mut x1418: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1417, &mut x1418, x10, 0x574a74cb); + let mut x1419: u32 = 0; + let mut x1420: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1419, &mut x1420, x10, 0x52d748ff); + let mut x1421: u32 = 0; + let mut x1422: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1421, &mut x1422, x10, 0x2a927e3b); + let mut x1423: u32 = 0; + let mut x1424: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1423, &mut x1424, x10, 0x9802688a); + let mut x1425: u32 = 0; + let mut x1426: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1425, &mut x1426, x10, 0x37264e20); + let mut x1427: u32 = 0; + let mut x1428: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1427, &mut x1428, x10, 0x2f2b6b6e); + let mut x1429: u32 = 0; + let mut x1430: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1429, &mut x1430, x10, 0xac4ed3a2); + let mut x1431: u32 = 0; + let mut x1432: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1431, &mut x1432, x10, 0xde771c8e); + let mut x1433: u32 = 0; + let mut x1434: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1433, &mut x1434, 0x0, x1432, x1429); + let mut x1435: u32 = 0; + let mut x1436: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1435, &mut x1436, x1434, x1430, x1427); + let mut x1437: u32 = 0; + let mut x1438: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1437, &mut x1438, x1436, x1428, x1425); + let mut x1439: u32 = 0; + let mut x1440: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1439, &mut x1440, x1438, x1426, x1423); + let mut x1441: u32 = 0; + let mut x1442: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1441, &mut x1442, x1440, x1424, x1421); + let mut x1443: u32 = 0; + let mut x1444: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1443, &mut x1444, x1442, x1422, x1419); + let mut x1445: u32 = 0; + let mut x1446: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1445, &mut x1446, x1444, x1420, x1417); + let mut x1447: u32 = 0; + let mut x1448: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1447, &mut x1448, x1446, x1418, x1415); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1449, &mut x1450, x1448, x1416, x1413); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1414, x1411); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1412, x1409); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1455, &mut x1456, 0x0, x1387, x1431); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1389, x1433); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1391, x1435); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1393, x1437); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1395, x1439); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1397, x1441); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1399, x1443); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1401, x1445); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1403, x1447); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1405, x1449); + let mut x1475: u32 = 0; + let mut x1476: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1407, x1451); + let mut x1477: u32 = 0; + let mut x1478: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1477, + &mut x1478, + x1476, + (((x1408 as u32) + ((x1336 as u32) + ((x1312 as u32) + x1268))) + ((x1384 as u32) + x1340)), + x1453, + ); + let mut x1479: u32 = 0; + let mut x1480: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1479, &mut x1480, x1455, 0x5cb5bb93); + let mut x1481: u32 = 0; + let mut x1482: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1481, &mut x1482, x1479, 0x8cb91e82); + let mut x1483: u32 = 0; + let mut x1484: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1483, &mut x1484, x1479, 0xa3386d28); + let mut x1485: u32 = 0; + let mut x1486: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1485, &mut x1486, x1479, 0xf5d6f7e); + let mut x1487: u32 = 0; + let mut x1488: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1487, &mut x1488, x1479, 0x50e641df); + let mut x1489: u32 = 0; + let mut x1490: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1489, &mut x1490, x1479, 0x152f7109); + let mut x1491: u32 = 0; + let mut x1492: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1491, &mut x1492, x1479, 0xed5456b3); + let mut x1493: u32 = 0; + let mut x1494: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1493, &mut x1494, x1479, 0x1f166e6c); + let mut x1495: u32 = 0; + let mut x1496: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1495, &mut x1496, x1479, 0xac0425a7); + let mut x1497: u32 = 0; + let mut x1498: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1497, &mut x1498, x1479, 0xcf3ab6af); + let mut x1499: u32 = 0; + let mut x1500: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1499, &mut x1500, x1479, 0x6b7fc310); + let mut x1501: u32 = 0; + let mut x1502: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1501, &mut x1502, x1479, 0x3b883202); + let mut x1503: u32 = 0; + let mut x1504: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1503, &mut x1504, x1479, 0xe9046565); + let mut x1505: u32 = 0; + let mut x1506: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1505, &mut x1506, 0x0, x1504, x1501); + let mut x1507: u32 = 0; + let mut x1508: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1507, &mut x1508, x1506, x1502, x1499); + let mut x1509: u32 = 0; + let mut x1510: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1509, &mut x1510, x1508, x1500, x1497); + let mut x1511: u32 = 0; + let mut x1512: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1511, &mut x1512, x1510, x1498, x1495); + let mut x1513: u32 = 0; + let mut x1514: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1513, &mut x1514, x1512, x1496, x1493); + let mut x1515: u32 = 0; + let mut x1516: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1515, &mut x1516, x1514, x1494, x1491); + let mut x1517: u32 = 0; + let mut x1518: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1517, &mut x1518, x1516, x1492, x1489); + let mut x1519: u32 = 0; + let mut x1520: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1519, &mut x1520, x1518, x1490, x1487); + let mut x1521: u32 = 0; + let mut x1522: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1521, &mut x1522, x1520, x1488, x1485); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1523, &mut x1524, x1522, x1486, x1483); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1484, x1481); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1527, &mut x1528, 0x0, x1455, x1503); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1457, x1505); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1459, x1507); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1461, x1509); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1463, x1511); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1465, x1513); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1467, x1515); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1469, x1517); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1471, x1519); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1473, x1521); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1475, x1523); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1477, x1525); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1551, &mut x1552, x11, 0xce8941a); + let mut x1553: u32 = 0; + let mut x1554: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1553, &mut x1554, x11, 0x614e97c2); + let mut x1555: u32 = 0; + let mut x1556: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1555, &mut x1556, x11, 0x8f886dc9); + let mut x1557: u32 = 0; + let mut x1558: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1557, &mut x1558, x11, 0x65165fdb); + let mut x1559: u32 = 0; + let mut x1560: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1559, &mut x1560, x11, 0x574a74cb); + let mut x1561: u32 = 0; + let mut x1562: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1561, &mut x1562, x11, 0x52d748ff); + let mut x1563: u32 = 0; + let mut x1564: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1563, &mut x1564, x11, 0x2a927e3b); + let mut x1565: u32 = 0; + let mut x1566: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1565, &mut x1566, x11, 0x9802688a); + let mut x1567: u32 = 0; + let mut x1568: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1567, &mut x1568, x11, 0x37264e20); + let mut x1569: u32 = 0; + let mut x1570: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1569, &mut x1570, x11, 0x2f2b6b6e); + let mut x1571: u32 = 0; + let mut x1572: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1571, &mut x1572, x11, 0xac4ed3a2); + let mut x1573: u32 = 0; + let mut x1574: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1573, &mut x1574, x11, 0xde771c8e); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1575, &mut x1576, 0x0, x1574, x1571); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1572, x1569); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1570, x1567); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1568, x1565); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1566, x1563); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1564, x1561); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1562, x1559); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1560, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1558, x1555); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1556, x1553); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1554, x1551); + let mut x1597: u32 = 0; + let mut x1598: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1597, &mut x1598, 0x0, x1529, x1573); + let mut x1599: u32 = 0; + let mut x1600: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1599, &mut x1600, x1598, x1531, x1575); + let mut x1601: u32 = 0; + let mut x1602: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1601, &mut x1602, x1600, x1533, x1577); + let mut x1603: u32 = 0; + let mut x1604: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1603, &mut x1604, x1602, x1535, x1579); + let mut x1605: u32 = 0; + let mut x1606: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1605, &mut x1606, x1604, x1537, x1581); + let mut x1607: u32 = 0; + let mut x1608: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1607, &mut x1608, x1606, x1539, x1583); + let mut x1609: u32 = 0; + let mut x1610: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1609, &mut x1610, x1608, x1541, x1585); + let mut x1611: u32 = 0; + let mut x1612: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1611, &mut x1612, x1610, x1543, x1587); + let mut x1613: u32 = 0; + let mut x1614: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1613, &mut x1614, x1612, x1545, x1589); + let mut x1615: u32 = 0; + let mut x1616: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1615, &mut x1616, x1614, x1547, x1591); + let mut x1617: u32 = 0; + let mut x1618: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1617, &mut x1618, x1616, x1549, x1593); + let mut x1619: u32 = 0; + let mut x1620: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32( + &mut x1619, + &mut x1620, + x1618, + (((x1550 as u32) + ((x1478 as u32) + ((x1454 as u32) + x1410))) + ((x1526 as u32) + x1482)), + x1595, + ); + let mut x1621: u32 = 0; + let mut x1622: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1621, &mut x1622, x1597, 0x5cb5bb93); + let mut x1623: u32 = 0; + let mut x1624: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1623, &mut x1624, x1621, 0x8cb91e82); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1625, &mut x1626, x1621, 0xa3386d28); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1627, &mut x1628, x1621, 0xf5d6f7e); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1629, &mut x1630, x1621, 0x50e641df); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1631, &mut x1632, x1621, 0x152f7109); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1633, &mut x1634, x1621, 0xed5456b3); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1635, &mut x1636, x1621, 0x1f166e6c); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1637, &mut x1638, x1621, 0xac0425a7); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1639, &mut x1640, x1621, 0xcf3ab6af); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1641, &mut x1642, x1621, 0x6b7fc310); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1643, &mut x1644, x1621, 0x3b883202); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp384_scalar_mulx_u32(&mut x1645, &mut x1646, x1621, 0xe9046565); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1647, &mut x1648, 0x0, x1646, x1643); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1644, x1641); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1642, x1639); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1640, x1637); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1638, x1635); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1636, x1633); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1634, x1631); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1632, x1629); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1630, x1627); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1628, x1625); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1626, x1623); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1669, &mut x1670, 0x0, x1597, x1645); + let mut x1671: u32 = 0; + let mut x1672: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1599, x1647); + let mut x1673: u32 = 0; + let mut x1674: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1601, x1649); + let mut x1675: u32 = 0; + let mut x1676: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1603, x1651); + let mut x1677: u32 = 0; + let mut x1678: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1605, x1653); + let mut x1679: u32 = 0; + let mut x1680: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1679, &mut x1680, x1678, x1607, x1655); + let mut x1681: u32 = 0; + let mut x1682: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1609, x1657); + let mut x1683: u32 = 0; + let mut x1684: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1611, x1659); + let mut x1685: u32 = 0; + let mut x1686: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1613, x1661); + let mut x1687: u32 = 0; + let mut x1688: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1615, x1663); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1617, x1665); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1619, x1667); + let x1693: u32 = + (((x1692 as u32) + ((x1620 as u32) + ((x1596 as u32) + x1552))) + ((x1668 as u32) + x1624)); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1694, &mut x1695, 0x0, x1671, 0xe9046565); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1696, &mut x1697, x1695, x1673, 0x3b883202); + let mut x1698: u32 = 0; + let mut x1699: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1698, &mut x1699, x1697, x1675, 0x6b7fc310); + let mut x1700: u32 = 0; + let mut x1701: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1700, &mut x1701, x1699, x1677, 0xcf3ab6af); + let mut x1702: u32 = 0; + let mut x1703: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1702, &mut x1703, x1701, x1679, 0xac0425a7); + let mut x1704: u32 = 0; + let mut x1705: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1704, &mut x1705, x1703, x1681, 0x1f166e6c); + let mut x1706: u32 = 0; + let mut x1707: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1706, &mut x1707, x1705, x1683, 0xed5456b3); + let mut x1708: u32 = 0; + let mut x1709: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1708, &mut x1709, x1707, x1685, 0x152f7109); + let mut x1710: u32 = 0; + let mut x1711: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1710, &mut x1711, x1709, x1687, 0x50e641df); + let mut x1712: u32 = 0; + let mut x1713: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1712, &mut x1713, x1711, x1689, 0xf5d6f7e); + let mut x1714: u32 = 0; + let mut x1715: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1714, &mut x1715, x1713, x1691, 0xa3386d28); + let mut x1716: u32 = 0; + let mut x1717: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1716, &mut x1717, x1715, x1693, 0x8cb91e82); + let mut x1718: u32 = 0; + let mut x1719: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x1718, &mut x1719, x1717, (0x0 as u32), (0x0 as u32)); + let mut x1720: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1720, x1719, x1694, x1671); + let mut x1721: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1721, x1719, x1696, x1673); + let mut x1722: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1722, x1719, x1698, x1675); + let mut x1723: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1723, x1719, x1700, x1677); + let mut x1724: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1724, x1719, x1702, x1679); + let mut x1725: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1725, x1719, x1704, x1681); + let mut x1726: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1726, x1719, x1706, x1683); + let mut x1727: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1727, x1719, x1708, x1685); + let mut x1728: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1728, x1719, x1710, x1687); + let mut x1729: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1729, x1719, x1712, x1689); + let mut x1730: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1730, x1719, x1714, x1691); + let mut x1731: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1731, x1719, x1716, x1693); + out1[0] = x1720; + out1[1] = x1721; + out1[2] = x1722; + out1[3] = x1723; + out1[4] = x1724; + out1[5] = x1725; + out1[6] = x1726; + out1[7] = x1727; + out1[8] = x1728; + out1[9] = x1729; + out1[10] = x1730; + out1[11] = x1731; +} +/// The function fiat_bp384_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub const fn fiat_bp384_scalar_nonzero(out1: &mut u32, arg1: &[u32; 12]) { + let x1: u32 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) + | ((arg1[3]) + | ((arg1[4]) + | ((arg1[5]) + | ((arg1[6]) + | ((arg1[7]) + | ((arg1[8]) | ((arg1[9]) | ((arg1[10]) | (arg1[11])))))))))))); + *out1 = x1; +} +/// The function fiat_bp384_scalar_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_selectznz( + out1: &mut [u32; 12], + arg1: fiat_bp384_scalar_u1, + arg2: &[u32; 12], + arg3: &[u32; 12], +) { + let mut x1: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); + let mut x9: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); + let mut x10: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); + let mut x11: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); + let mut x12: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; + out1[8] = x9; + out1[9] = x10; + out1[10] = x11; + out1[11] = x12; +} +/// The function fiat_bp384_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..47] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub const fn fiat_bp384_scalar_to_bytes(out1: &mut [u8; 48], arg1: &[u32; 12]) { + let x1: u32 = (arg1[11]); + let x2: u32 = (arg1[10]); + let x3: u32 = (arg1[9]); + let x4: u32 = (arg1[8]); + let x5: u32 = (arg1[7]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[5]); + let x8: u32 = (arg1[4]); + let x9: u32 = (arg1[3]); + let x10: u32 = (arg1[2]); + let x11: u32 = (arg1[1]); + let x12: u32 = (arg1[0]); + let x13: u8 = ((x12 & (0xff as u32)) as u8); + let x14: u32 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u32)) as u8); + let x16: u32 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u32)) as u8); + let x18: u8 = ((x16 >> 8) as u8); + let x19: u8 = ((x11 & (0xff as u32)) as u8); + let x20: u32 = (x11 >> 8); + let x21: u8 = ((x20 & (0xff as u32)) as u8); + let x22: u32 = (x20 >> 8); + let x23: u8 = ((x22 & (0xff as u32)) as u8); + let x24: u8 = ((x22 >> 8) as u8); + let x25: u8 = ((x10 & (0xff as u32)) as u8); + let x26: u32 = (x10 >> 8); + let x27: u8 = ((x26 & (0xff as u32)) as u8); + let x28: u32 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u32)) as u8); + let x30: u8 = ((x28 >> 8) as u8); + let x31: u8 = ((x9 & (0xff as u32)) as u8); + let x32: u32 = (x9 >> 8); + let x33: u8 = ((x32 & (0xff as u32)) as u8); + let x34: u32 = (x32 >> 8); + let x35: u8 = ((x34 & (0xff as u32)) as u8); + let x36: u8 = ((x34 >> 8) as u8); + let x37: u8 = ((x8 & (0xff as u32)) as u8); + let x38: u32 = (x8 >> 8); + let x39: u8 = ((x38 & (0xff as u32)) as u8); + let x40: u32 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u32)) as u8); + let x42: u8 = ((x40 >> 8) as u8); + let x43: u8 = ((x7 & (0xff as u32)) as u8); + let x44: u32 = (x7 >> 8); + let x45: u8 = ((x44 & (0xff as u32)) as u8); + let x46: u32 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u32)) as u8); + let x48: u8 = ((x46 >> 8) as u8); + let x49: u8 = ((x6 & (0xff as u32)) as u8); + let x50: u32 = (x6 >> 8); + let x51: u8 = ((x50 & (0xff as u32)) as u8); + let x52: u32 = (x50 >> 8); + let x53: u8 = ((x52 & (0xff as u32)) as u8); + let x54: u8 = ((x52 >> 8) as u8); + let x55: u8 = ((x5 & (0xff as u32)) as u8); + let x56: u32 = (x5 >> 8); + let x57: u8 = ((x56 & (0xff as u32)) as u8); + let x58: u32 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u32)) as u8); + let x60: u8 = ((x58 >> 8) as u8); + let x61: u8 = ((x4 & (0xff as u32)) as u8); + let x62: u32 = (x4 >> 8); + let x63: u8 = ((x62 & (0xff as u32)) as u8); + let x64: u32 = (x62 >> 8); + let x65: u8 = ((x64 & (0xff as u32)) as u8); + let x66: u8 = ((x64 >> 8) as u8); + let x67: u8 = ((x3 & (0xff as u32)) as u8); + let x68: u32 = (x3 >> 8); + let x69: u8 = ((x68 & (0xff as u32)) as u8); + let x70: u32 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u32)) as u8); + let x72: u8 = ((x70 >> 8) as u8); + let x73: u8 = ((x2 & (0xff as u32)) as u8); + let x74: u32 = (x2 >> 8); + let x75: u8 = ((x74 & (0xff as u32)) as u8); + let x76: u32 = (x74 >> 8); + let x77: u8 = ((x76 & (0xff as u32)) as u8); + let x78: u8 = ((x76 >> 8) as u8); + let x79: u8 = ((x1 & (0xff as u32)) as u8); + let x80: u32 = (x1 >> 8); + let x81: u8 = ((x80 & (0xff as u32)) as u8); + let x82: u32 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u32)) as u8); + let x84: u8 = ((x82 >> 8) as u8); + out1[0] = x13; + out1[1] = x15; + out1[2] = x17; + out1[3] = x18; + out1[4] = x19; + out1[5] = x21; + out1[6] = x23; + out1[7] = x24; + out1[8] = x25; + out1[9] = x27; + out1[10] = x29; + out1[11] = x30; + out1[12] = x31; + out1[13] = x33; + out1[14] = x35; + out1[15] = x36; + out1[16] = x37; + out1[17] = x39; + out1[18] = x41; + out1[19] = x42; + out1[20] = x43; + out1[21] = x45; + out1[22] = x47; + out1[23] = x48; + out1[24] = x49; + out1[25] = x51; + out1[26] = x53; + out1[27] = x54; + out1[28] = x55; + out1[29] = x57; + out1[30] = x59; + out1[31] = x60; + out1[32] = x61; + out1[33] = x63; + out1[34] = x65; + out1[35] = x66; + out1[36] = x67; + out1[37] = x69; + out1[38] = x71; + out1[39] = x72; + out1[40] = x73; + out1[41] = x75; + out1[42] = x77; + out1[43] = x78; + out1[44] = x79; + out1[45] = x81; + out1[46] = x83; + out1[47] = x84; +} +/// The function fiat_bp384_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_from_bytes(out1: &mut [u32; 12], arg1: &[u8; 48]) { + let x1: u32 = (((arg1[47]) as u32) << 24); + let x2: u32 = (((arg1[46]) as u32) << 16); + let x3: u32 = (((arg1[45]) as u32) << 8); + let x4: u8 = (arg1[44]); + let x5: u32 = (((arg1[43]) as u32) << 24); + let x6: u32 = (((arg1[42]) as u32) << 16); + let x7: u32 = (((arg1[41]) as u32) << 8); + let x8: u8 = (arg1[40]); + let x9: u32 = (((arg1[39]) as u32) << 24); + let x10: u32 = (((arg1[38]) as u32) << 16); + let x11: u32 = (((arg1[37]) as u32) << 8); + let x12: u8 = (arg1[36]); + let x13: u32 = (((arg1[35]) as u32) << 24); + let x14: u32 = (((arg1[34]) as u32) << 16); + let x15: u32 = (((arg1[33]) as u32) << 8); + let x16: u8 = (arg1[32]); + let x17: u32 = (((arg1[31]) as u32) << 24); + let x18: u32 = (((arg1[30]) as u32) << 16); + let x19: u32 = (((arg1[29]) as u32) << 8); + let x20: u8 = (arg1[28]); + let x21: u32 = (((arg1[27]) as u32) << 24); + let x22: u32 = (((arg1[26]) as u32) << 16); + let x23: u32 = (((arg1[25]) as u32) << 8); + let x24: u8 = (arg1[24]); + let x25: u32 = (((arg1[23]) as u32) << 24); + let x26: u32 = (((arg1[22]) as u32) << 16); + let x27: u32 = (((arg1[21]) as u32) << 8); + let x28: u8 = (arg1[20]); + let x29: u32 = (((arg1[19]) as u32) << 24); + let x30: u32 = (((arg1[18]) as u32) << 16); + let x31: u32 = (((arg1[17]) as u32) << 8); + let x32: u8 = (arg1[16]); + let x33: u32 = (((arg1[15]) as u32) << 24); + let x34: u32 = (((arg1[14]) as u32) << 16); + let x35: u32 = (((arg1[13]) as u32) << 8); + let x36: u8 = (arg1[12]); + let x37: u32 = (((arg1[11]) as u32) << 24); + let x38: u32 = (((arg1[10]) as u32) << 16); + let x39: u32 = (((arg1[9]) as u32) << 8); + let x40: u8 = (arg1[8]); + let x41: u32 = (((arg1[7]) as u32) << 24); + let x42: u32 = (((arg1[6]) as u32) << 16); + let x43: u32 = (((arg1[5]) as u32) << 8); + let x44: u8 = (arg1[4]); + let x45: u32 = (((arg1[3]) as u32) << 24); + let x46: u32 = (((arg1[2]) as u32) << 16); + let x47: u32 = (((arg1[1]) as u32) << 8); + let x48: u8 = (arg1[0]); + let x49: u32 = (x47 + (x48 as u32)); + let x50: u32 = (x46 + x49); + let x51: u32 = (x45 + x50); + let x52: u32 = (x43 + (x44 as u32)); + let x53: u32 = (x42 + x52); + let x54: u32 = (x41 + x53); + let x55: u32 = (x39 + (x40 as u32)); + let x56: u32 = (x38 + x55); + let x57: u32 = (x37 + x56); + let x58: u32 = (x35 + (x36 as u32)); + let x59: u32 = (x34 + x58); + let x60: u32 = (x33 + x59); + let x61: u32 = (x31 + (x32 as u32)); + let x62: u32 = (x30 + x61); + let x63: u32 = (x29 + x62); + let x64: u32 = (x27 + (x28 as u32)); + let x65: u32 = (x26 + x64); + let x66: u32 = (x25 + x65); + let x67: u32 = (x23 + (x24 as u32)); + let x68: u32 = (x22 + x67); + let x69: u32 = (x21 + x68); + let x70: u32 = (x19 + (x20 as u32)); + let x71: u32 = (x18 + x70); + let x72: u32 = (x17 + x71); + let x73: u32 = (x15 + (x16 as u32)); + let x74: u32 = (x14 + x73); + let x75: u32 = (x13 + x74); + let x76: u32 = (x11 + (x12 as u32)); + let x77: u32 = (x10 + x76); + let x78: u32 = (x9 + x77); + let x79: u32 = (x7 + (x8 as u32)); + let x80: u32 = (x6 + x79); + let x81: u32 = (x5 + x80); + let x82: u32 = (x3 + (x4 as u32)); + let x83: u32 = (x2 + x82); + let x84: u32 = (x1 + x83); + out1[0] = x51; + out1[1] = x54; + out1[2] = x57; + out1[3] = x60; + out1[4] = x63; + out1[5] = x66; + out1[6] = x69; + out1[7] = x72; + out1[8] = x75; + out1[9] = x78; + out1[10] = x81; + out1[11] = x84; +} +/// The function fiat_bp384_scalar_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_set_one( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + out1[0] = 0x16fb9a9b; + out1[1] = 0xc477cdfd; + out1[2] = 0x94803cef; + out1[3] = 0x30c54950; + out1[4] = 0x53fbda58; + out1[5] = 0xe0e99193; + out1[6] = 0x12aba94c; + out1[7] = 0xead08ef6; + out1[8] = 0xaf19be20; + out1[9] = 0xf0a29081; + out1[10] = 0x5cc792d7; + out1[11] = 0x7346e17d; +} +/// The function fiat_bp384_scalar_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_msat(out1: &mut [u32; 13]) { + out1[0] = 0xe9046565; + out1[1] = 0x3b883202; + out1[2] = 0x6b7fc310; + out1[3] = 0xcf3ab6af; + out1[4] = 0xac0425a7; + out1[5] = 0x1f166e6c; + out1[6] = 0xed5456b3; + out1[7] = 0x152f7109; + out1[8] = 0x50e641df; + out1[9] = 0xf5d6f7e; + out1[10] = 0xa3386d28; + out1[11] = 0x8cb91e82; + out1[12] = (0x0 as u32); +} +/// The function fiat_bp384_scalar_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_divstep( + out1: &mut u32, + out2: &mut [u32; 13], + out3: &mut [u32; 13], + out4: &mut [u32; 12], + out5: &mut [u32; 12], + arg1: u32, + arg2: &[u32; 13], + arg3: &[u32; 13], + arg4: &[u32; 12], + arg5: &[u32; 12], +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); + let x3: fiat_bp384_scalar_u1 = (((x1 >> 31) as fiat_bp384_scalar_u1) + & (((arg3[0]) & (0x1 as u32)) as fiat_bp384_scalar_u1)); + let mut x4: u32 = 0; + let mut x5: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); + let mut x6: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x6, x3, arg1, x4); + let mut x7: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); + let mut x17: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); + let mut x18: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); + let mut x19: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); + let mut x20: u32 = 0; + let mut x21: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x20, &mut x21, 0x0, (0x1 as u32), (!(arg2[0]))); + let mut x22: u32 = 0; + let mut x23: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x22, &mut x23, x21, (0x0 as u32), (!(arg2[1]))); + let mut x24: u32 = 0; + let mut x25: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x24, &mut x25, x23, (0x0 as u32), (!(arg2[2]))); + let mut x26: u32 = 0; + let mut x27: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[3]))); + let mut x28: u32 = 0; + let mut x29: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[4]))); + let mut x30: u32 = 0; + let mut x31: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[5]))); + let mut x32: u32 = 0; + let mut x33: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[6]))); + let mut x34: u32 = 0; + let mut x35: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[7]))); + let mut x36: u32 = 0; + let mut x37: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[8]))); + let mut x38: u32 = 0; + let mut x39: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[9]))); + let mut x40: u32 = 0; + let mut x41: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[10]))); + let mut x42: u32 = 0; + let mut x43: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[11]))); + let mut x44: u32 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[12]))); + let mut x46: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x46, x3, (arg3[0]), x20); + let mut x47: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x47, x3, (arg3[1]), x22); + let mut x48: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x48, x3, (arg3[2]), x24); + let mut x49: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x49, x3, (arg3[3]), x26); + let mut x50: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x50, x3, (arg3[4]), x28); + let mut x51: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x51, x3, (arg3[5]), x30); + let mut x52: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x52, x3, (arg3[6]), x32); + let mut x53: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x53, x3, (arg3[7]), x34); + let mut x54: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x54, x3, (arg3[8]), x36); + let mut x55: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x55, x3, (arg3[9]), x38); + let mut x56: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x56, x3, (arg3[10]), x40); + let mut x57: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x57, x3, (arg3[11]), x42); + let mut x58: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x58, x3, (arg3[12]), x44); + let mut x59: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x59, x3, (arg4[0]), (arg5[0])); + let mut x60: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x60, x3, (arg4[1]), (arg5[1])); + let mut x61: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x61, x3, (arg4[2]), (arg5[2])); + let mut x62: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x62, x3, (arg4[3]), (arg5[3])); + let mut x63: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x63, x3, (arg4[4]), (arg5[4])); + let mut x64: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x64, x3, (arg4[5]), (arg5[5])); + let mut x65: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x65, x3, (arg4[6]), (arg5[6])); + let mut x66: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x66, x3, (arg4[7]), (arg5[7])); + let mut x67: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x67, x3, (arg4[8]), (arg5[8])); + let mut x68: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x68, x3, (arg4[9]), (arg5[9])); + let mut x69: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x69, x3, (arg4[10]), (arg5[10])); + let mut x70: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x70, x3, (arg4[11]), (arg5[11])); + let mut x71: u32 = 0; + let mut x72: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x71, &mut x72, 0x0, x59, x59); + let mut x73: u32 = 0; + let mut x74: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x73, &mut x74, x72, x60, x60); + let mut x75: u32 = 0; + let mut x76: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x75, &mut x76, x74, x61, x61); + let mut x77: u32 = 0; + let mut x78: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x77, &mut x78, x76, x62, x62); + let mut x79: u32 = 0; + let mut x80: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x79, &mut x80, x78, x63, x63); + let mut x81: u32 = 0; + let mut x82: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x81, &mut x82, x80, x64, x64); + let mut x83: u32 = 0; + let mut x84: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x83, &mut x84, x82, x65, x65); + let mut x85: u32 = 0; + let mut x86: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x85, &mut x86, x84, x66, x66); + let mut x87: u32 = 0; + let mut x88: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x87, &mut x88, x86, x67, x67); + let mut x89: u32 = 0; + let mut x90: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x89, &mut x90, x88, x68, x68); + let mut x91: u32 = 0; + let mut x92: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x91, &mut x92, x90, x69, x69); + let mut x93: u32 = 0; + let mut x94: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x93, &mut x94, x92, x70, x70); + let mut x95: u32 = 0; + let mut x96: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x95, &mut x96, 0x0, x71, 0xe9046565); + let mut x97: u32 = 0; + let mut x98: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x97, &mut x98, x96, x73, 0x3b883202); + let mut x99: u32 = 0; + let mut x100: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x99, &mut x100, x98, x75, 0x6b7fc310); + let mut x101: u32 = 0; + let mut x102: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x101, &mut x102, x100, x77, 0xcf3ab6af); + let mut x103: u32 = 0; + let mut x104: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x103, &mut x104, x102, x79, 0xac0425a7); + let mut x105: u32 = 0; + let mut x106: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x105, &mut x106, x104, x81, 0x1f166e6c); + let mut x107: u32 = 0; + let mut x108: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x107, &mut x108, x106, x83, 0xed5456b3); + let mut x109: u32 = 0; + let mut x110: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x109, &mut x110, x108, x85, 0x152f7109); + let mut x111: u32 = 0; + let mut x112: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x111, &mut x112, x110, x87, 0x50e641df); + let mut x113: u32 = 0; + let mut x114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x113, &mut x114, x112, x89, 0xf5d6f7e); + let mut x115: u32 = 0; + let mut x116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x115, &mut x116, x114, x91, 0xa3386d28); + let mut x117: u32 = 0; + let mut x118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x117, &mut x118, x116, x93, 0x8cb91e82); + let mut x119: u32 = 0; + let mut x120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x119, &mut x120, x118, (x94 as u32), (0x0 as u32)); + let x121: u32 = (arg4[11]); + let x122: u32 = (arg4[10]); + let x123: u32 = (arg4[9]); + let x124: u32 = (arg4[8]); + let x125: u32 = (arg4[7]); + let x126: u32 = (arg4[6]); + let x127: u32 = (arg4[5]); + let x128: u32 = (arg4[4]); + let x129: u32 = (arg4[3]); + let x130: u32 = (arg4[2]); + let x131: u32 = (arg4[1]); + let x132: u32 = (arg4[0]); + let mut x133: u32 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x133, &mut x134, 0x0, (0x0 as u32), x132); + let mut x135: u32 = 0; + let mut x136: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x135, &mut x136, x134, (0x0 as u32), x131); + let mut x137: u32 = 0; + let mut x138: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x137, &mut x138, x136, (0x0 as u32), x130); + let mut x139: u32 = 0; + let mut x140: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x139, &mut x140, x138, (0x0 as u32), x129); + let mut x141: u32 = 0; + let mut x142: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x141, &mut x142, x140, (0x0 as u32), x128); + let mut x143: u32 = 0; + let mut x144: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x143, &mut x144, x142, (0x0 as u32), x127); + let mut x145: u32 = 0; + let mut x146: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x145, &mut x146, x144, (0x0 as u32), x126); + let mut x147: u32 = 0; + let mut x148: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x147, &mut x148, x146, (0x0 as u32), x125); + let mut x149: u32 = 0; + let mut x150: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x149, &mut x150, x148, (0x0 as u32), x124); + let mut x151: u32 = 0; + let mut x152: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x151, &mut x152, x150, (0x0 as u32), x123); + let mut x153: u32 = 0; + let mut x154: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x153, &mut x154, x152, (0x0 as u32), x122); + let mut x155: u32 = 0; + let mut x156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x155, &mut x156, x154, (0x0 as u32), x121); + let mut x157: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x157, x156, (0x0 as u32), 0xffffffff); + let mut x158: u32 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x158, &mut x159, 0x0, x133, (x157 & 0xe9046565)); + let mut x160: u32 = 0; + let mut x161: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x160, &mut x161, x159, x135, (x157 & 0x3b883202)); + let mut x162: u32 = 0; + let mut x163: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x162, &mut x163, x161, x137, (x157 & 0x6b7fc310)); + let mut x164: u32 = 0; + let mut x165: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x164, &mut x165, x163, x139, (x157 & 0xcf3ab6af)); + let mut x166: u32 = 0; + let mut x167: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x166, &mut x167, x165, x141, (x157 & 0xac0425a7)); + let mut x168: u32 = 0; + let mut x169: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x168, &mut x169, x167, x143, (x157 & 0x1f166e6c)); + let mut x170: u32 = 0; + let mut x171: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x170, &mut x171, x169, x145, (x157 & 0xed5456b3)); + let mut x172: u32 = 0; + let mut x173: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x172, &mut x173, x171, x147, (x157 & 0x152f7109)); + let mut x174: u32 = 0; + let mut x175: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x174, &mut x175, x173, x149, (x157 & 0x50e641df)); + let mut x176: u32 = 0; + let mut x177: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x176, &mut x177, x175, x151, (x157 & 0xf5d6f7e)); + let mut x178: u32 = 0; + let mut x179: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x178, &mut x179, x177, x153, (x157 & 0xa3386d28)); + let mut x180: u32 = 0; + let mut x181: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x180, &mut x181, x179, x155, (x157 & 0x8cb91e82)); + let mut x182: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x182, x3, (arg5[0]), x158); + let mut x183: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x183, x3, (arg5[1]), x160); + let mut x184: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x184, x3, (arg5[2]), x162); + let mut x185: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x185, x3, (arg5[3]), x164); + let mut x186: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x186, x3, (arg5[4]), x166); + let mut x187: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x187, x3, (arg5[5]), x168); + let mut x188: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x188, x3, (arg5[6]), x170); + let mut x189: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x189, x3, (arg5[7]), x172); + let mut x190: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x190, x3, (arg5[8]), x174); + let mut x191: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x191, x3, (arg5[9]), x176); + let mut x192: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x192, x3, (arg5[10]), x178); + let mut x193: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x193, x3, (arg5[11]), x180); + let x194: fiat_bp384_scalar_u1 = ((x46 & (0x1 as u32)) as fiat_bp384_scalar_u1); + let mut x195: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x195, x194, (0x0 as u32), x7); + let mut x196: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x196, x194, (0x0 as u32), x8); + let mut x197: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x197, x194, (0x0 as u32), x9); + let mut x198: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x198, x194, (0x0 as u32), x10); + let mut x199: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x199, x194, (0x0 as u32), x11); + let mut x200: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x200, x194, (0x0 as u32), x12); + let mut x201: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x201, x194, (0x0 as u32), x13); + let mut x202: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x202, x194, (0x0 as u32), x14); + let mut x203: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x203, x194, (0x0 as u32), x15); + let mut x204: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x204, x194, (0x0 as u32), x16); + let mut x205: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x205, x194, (0x0 as u32), x17); + let mut x206: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x206, x194, (0x0 as u32), x18); + let mut x207: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x207, x194, (0x0 as u32), x19); + let mut x208: u32 = 0; + let mut x209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x208, &mut x209, 0x0, x46, x195); + let mut x210: u32 = 0; + let mut x211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x210, &mut x211, x209, x47, x196); + let mut x212: u32 = 0; + let mut x213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x212, &mut x213, x211, x48, x197); + let mut x214: u32 = 0; + let mut x215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x214, &mut x215, x213, x49, x198); + let mut x216: u32 = 0; + let mut x217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x216, &mut x217, x215, x50, x199); + let mut x218: u32 = 0; + let mut x219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x218, &mut x219, x217, x51, x200); + let mut x220: u32 = 0; + let mut x221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x220, &mut x221, x219, x52, x201); + let mut x222: u32 = 0; + let mut x223: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x222, &mut x223, x221, x53, x202); + let mut x224: u32 = 0; + let mut x225: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x224, &mut x225, x223, x54, x203); + let mut x226: u32 = 0; + let mut x227: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x226, &mut x227, x225, x55, x204); + let mut x228: u32 = 0; + let mut x229: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x228, &mut x229, x227, x56, x205); + let mut x230: u32 = 0; + let mut x231: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x230, &mut x231, x229, x57, x206); + let mut x232: u32 = 0; + let mut x233: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x232, &mut x233, x231, x58, x207); + let mut x234: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x234, x194, (0x0 as u32), x59); + let mut x235: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x235, x194, (0x0 as u32), x60); + let mut x236: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x236, x194, (0x0 as u32), x61); + let mut x237: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x237, x194, (0x0 as u32), x62); + let mut x238: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x238, x194, (0x0 as u32), x63); + let mut x239: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x239, x194, (0x0 as u32), x64); + let mut x240: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x240, x194, (0x0 as u32), x65); + let mut x241: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x241, x194, (0x0 as u32), x66); + let mut x242: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x242, x194, (0x0 as u32), x67); + let mut x243: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x243, x194, (0x0 as u32), x68); + let mut x244: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x244, x194, (0x0 as u32), x69); + let mut x245: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x245, x194, (0x0 as u32), x70); + let mut x246: u32 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x246, &mut x247, 0x0, x182, x234); + let mut x248: u32 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x183, x235); + let mut x250: u32 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x184, x236); + let mut x252: u32 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x185, x237); + let mut x254: u32 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x186, x238); + let mut x256: u32 = 0; + let mut x257: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x256, &mut x257, x255, x187, x239); + let mut x258: u32 = 0; + let mut x259: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x258, &mut x259, x257, x188, x240); + let mut x260: u32 = 0; + let mut x261: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x260, &mut x261, x259, x189, x241); + let mut x262: u32 = 0; + let mut x263: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x262, &mut x263, x261, x190, x242); + let mut x264: u32 = 0; + let mut x265: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x264, &mut x265, x263, x191, x243); + let mut x266: u32 = 0; + let mut x267: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x266, &mut x267, x265, x192, x244); + let mut x268: u32 = 0; + let mut x269: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x268, &mut x269, x267, x193, x245); + let mut x270: u32 = 0; + let mut x271: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x270, &mut x271, 0x0, x246, 0xe9046565); + let mut x272: u32 = 0; + let mut x273: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x272, &mut x273, x271, x248, 0x3b883202); + let mut x274: u32 = 0; + let mut x275: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x274, &mut x275, x273, x250, 0x6b7fc310); + let mut x276: u32 = 0; + let mut x277: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x276, &mut x277, x275, x252, 0xcf3ab6af); + let mut x278: u32 = 0; + let mut x279: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x278, &mut x279, x277, x254, 0xac0425a7); + let mut x280: u32 = 0; + let mut x281: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x280, &mut x281, x279, x256, 0x1f166e6c); + let mut x282: u32 = 0; + let mut x283: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x282, &mut x283, x281, x258, 0xed5456b3); + let mut x284: u32 = 0; + let mut x285: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x284, &mut x285, x283, x260, 0x152f7109); + let mut x286: u32 = 0; + let mut x287: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x286, &mut x287, x285, x262, 0x50e641df); + let mut x288: u32 = 0; + let mut x289: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x288, &mut x289, x287, x264, 0xf5d6f7e); + let mut x290: u32 = 0; + let mut x291: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x290, &mut x291, x289, x266, 0xa3386d28); + let mut x292: u32 = 0; + let mut x293: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x292, &mut x293, x291, x268, 0x8cb91e82); + let mut x294: u32 = 0; + let mut x295: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u32(&mut x294, &mut x295, x293, (x269 as u32), (0x0 as u32)); + let mut x296: u32 = 0; + let mut x297: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u32(&mut x296, &mut x297, 0x0, x6, (0x1 as u32)); + let x298: u32 = ((x208 >> 1) | ((x210 << 31) & 0xffffffff)); + let x299: u32 = ((x210 >> 1) | ((x212 << 31) & 0xffffffff)); + let x300: u32 = ((x212 >> 1) | ((x214 << 31) & 0xffffffff)); + let x301: u32 = ((x214 >> 1) | ((x216 << 31) & 0xffffffff)); + let x302: u32 = ((x216 >> 1) | ((x218 << 31) & 0xffffffff)); + let x303: u32 = ((x218 >> 1) | ((x220 << 31) & 0xffffffff)); + let x304: u32 = ((x220 >> 1) | ((x222 << 31) & 0xffffffff)); + let x305: u32 = ((x222 >> 1) | ((x224 << 31) & 0xffffffff)); + let x306: u32 = ((x224 >> 1) | ((x226 << 31) & 0xffffffff)); + let x307: u32 = ((x226 >> 1) | ((x228 << 31) & 0xffffffff)); + let x308: u32 = ((x228 >> 1) | ((x230 << 31) & 0xffffffff)); + let x309: u32 = ((x230 >> 1) | ((x232 << 31) & 0xffffffff)); + let x310: u32 = ((x232 & 0x80000000) | (x232 >> 1)); + let mut x311: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x311, x120, x95, x71); + let mut x312: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x312, x120, x97, x73); + let mut x313: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x313, x120, x99, x75); + let mut x314: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x314, x120, x101, x77); + let mut x315: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x315, x120, x103, x79); + let mut x316: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x316, x120, x105, x81); + let mut x317: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x317, x120, x107, x83); + let mut x318: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x318, x120, x109, x85); + let mut x319: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x319, x120, x111, x87); + let mut x320: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x320, x120, x113, x89); + let mut x321: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x321, x120, x115, x91); + let mut x322: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x322, x120, x117, x93); + let mut x323: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x323, x295, x270, x246); + let mut x324: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x324, x295, x272, x248); + let mut x325: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x325, x295, x274, x250); + let mut x326: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x326, x295, x276, x252); + let mut x327: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x327, x295, x278, x254); + let mut x328: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x328, x295, x280, x256); + let mut x329: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x329, x295, x282, x258); + let mut x330: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x330, x295, x284, x260); + let mut x331: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x331, x295, x286, x262); + let mut x332: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x332, x295, x288, x264); + let mut x333: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x333, x295, x290, x266); + let mut x334: u32 = 0; + fiat_bp384_scalar_cmovznz_u32(&mut x334, x295, x292, x268); + *out1 = x296; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out2[9] = x16; + out2[10] = x17; + out2[11] = x18; + out2[12] = x19; + out3[0] = x298; + out3[1] = x299; + out3[2] = x300; + out3[3] = x301; + out3[4] = x302; + out3[5] = x303; + out3[6] = x304; + out3[7] = x305; + out3[8] = x306; + out3[9] = x307; + out3[10] = x308; + out3[11] = x309; + out3[12] = x310; + out4[0] = x311; + out4[1] = x312; + out4[2] = x313; + out4[3] = x314; + out4[4] = x315; + out4[5] = x316; + out4[6] = x317; + out4[7] = x318; + out4[8] = x319; + out4[9] = x320; + out4[10] = x321; + out4[11] = x322; + out5[0] = x323; + out5[1] = x324; + out5[2] = x325; + out5[3] = x326; + out5[4] = x327; + out5[5] = x328; + out5[6] = x329; + out5[7] = x330; + out5[8] = x331; + out5[9] = x332; + out5[10] = x333; + out5[11] = x334; +} +/// The function fiat_bp384_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_divstep_precomp(out1: &mut [u32; 12]) { + out1[0] = 0xb5e6aea2; + out1[1] = 0x26e1306b; + out1[2] = 0xc99a457c; + out1[3] = 0xfe4a7c4a; + out1[4] = 0x4f6e75c5; + out1[5] = 0xbe760ac8; + out1[6] = 0xcb3165d9; + out1[7] = 0x98ce8ae5; + out1[8] = 0x68c0bdd1; + out1[9] = 0x24edee8; + out1[10] = 0x187624d8; + out1[11] = 0x5077d4c3; +} diff --git a/bp512/src/arithmetic/scalar/bp384_scalar_64.rs b/bp512/src/arithmetic/scalar/bp384_scalar_64.rs new file mode 100644 index 000000000..b94a343f0 --- /dev/null +++ b/bp512/src/arithmetic/scalar/bp384_scalar_64.rs @@ -0,0 +1,3733 @@ +//! fiat-crypto output postprocessed by fiat-constify: +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp384_scalar 64 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp384_scalar +//! machine_wordsize = 64 (from "64") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565 (from "0x8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b31f166e6cac0425a7cf3ab6af6b7fc3103b883202e9046565") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) in +//! if x1 & (2^384-1) < 2^383 then x1 & (2^384-1) else (x1 & (2^384-1)) - 2^384 +#![allow(unused_parens)] +#![allow(non_camel_case_types)] +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp384_scalar_u1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_scalar_u1 = u8; +/// fiat_bp384_scalar_i1 represents values of 1 bits, stored in one byte. +pub type fiat_bp384_scalar_i1 = i8; +/// fiat_bp384_scalar_u2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_scalar_u2 = u8; +/// fiat_bp384_scalar_i2 represents values of 2 bits, stored in one byte. +pub type fiat_bp384_scalar_i2 = i8; +/// The type fiat_bp384_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_scalar_montgomery_domain_field_element(pub [u64; 6]); +impl core::ops::Index for fiat_bp384_scalar_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_scalar_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The type fiat_bp384_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +pub struct fiat_bp384_scalar_non_montgomery_domain_field_element(pub [u64; 6]); +impl core::ops::Index for fiat_bp384_scalar_non_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} +impl core::ops::IndexMut for fiat_bp384_scalar_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} +/// The function fiat_bp384_scalar_addcarryx_u64 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^64 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_scalar_addcarryx_u64( + out1: &mut u64, + out2: &mut fiat_bp384_scalar_u1, + arg1: fiat_bp384_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: fiat_bp384_scalar_u1 = ((x1 >> 64) as fiat_bp384_scalar_u1); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_scalar_subborrowx_u64 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^64 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub const fn fiat_bp384_scalar_subborrowx_u64( + out1: &mut u64, + out2: &mut fiat_bp384_scalar_u1, + arg1: fiat_bp384_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); + let x2: fiat_bp384_scalar_i1 = ((x1 >> 64) as fiat_bp384_scalar_i1); + let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); + *out1 = x3; + *out2 = + (((0x0 as fiat_bp384_scalar_i2) - (x2 as fiat_bp384_scalar_i2)) as fiat_bp384_scalar_u1); +} +/// The function fiat_bp384_scalar_mulx_u64 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^64 +/// out2 = ⌊arg1 * arg2 / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_scalar_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { + let x1: u128 = ((arg1 as u128) * (arg2 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: u64 = ((x1 >> 64) as u64); + *out1 = x2; + *out2 = x3; +} +/// The function fiat_bp384_scalar_cmovznz_u64 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_scalar_cmovznz_u64( + out1: &mut u64, + arg1: fiat_bp384_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: fiat_bp384_scalar_u1 = (!(!arg1)); + let x2: u64 = ((((((0x0 as fiat_bp384_scalar_i2) - (x1 as fiat_bp384_scalar_i2)) + as fiat_bp384_scalar_i1) as i128) + & (0xffffffffffffffff as i128)) as u64); + let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} +/// The function fiat_bp384_scalar_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_mul( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x7, &mut x8, x6, (arg2[5])); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x9, &mut x10, x6, (arg2[4])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x11, &mut x12, x6, (arg2[3])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x13, &mut x14, x6, (arg2[2])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x15, &mut x16, x6, (arg2[1])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x17, &mut x18, x6, (arg2[0])); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let x29: u64 = ((x28 as u64) + x8); + let mut x30: u64 = 0; + let mut x31: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x30, &mut x31, x17, 0x5cfedd2a5cb5bb93); + let mut x32: u64 = 0; + let mut x33: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x32, &mut x33, x30, 0x8cb91e82a3386d28); + let mut x34: u64 = 0; + let mut x35: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x34, &mut x35, x30, 0xf5d6f7e50e641df); + let mut x36: u64 = 0; + let mut x37: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x36, &mut x37, x30, 0x152f7109ed5456b3); + let mut x38: u64 = 0; + let mut x39: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x38, &mut x39, x30, 0x1f166e6cac0425a7); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x40, &mut x41, x30, 0xcf3ab6af6b7fc310); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x42, &mut x43, x30, 0x3b883202e9046565); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x44, &mut x45, 0x0, x43, x40); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x46, &mut x47, x45, x41, x38); + let mut x48: u64 = 0; + let mut x49: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x48, &mut x49, x47, x39, x36); + let mut x50: u64 = 0; + let mut x51: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x50, &mut x51, x49, x37, x34); + let mut x52: u64 = 0; + let mut x53: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x52, &mut x53, x51, x35, x32); + let x54: u64 = ((x53 as u64) + x33); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x55, &mut x56, 0x0, x17, x42); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x57, &mut x58, x56, x19, x44); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x59, &mut x60, x58, x21, x46); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x61, &mut x62, x60, x23, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x63, &mut x64, x62, x25, x50); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x65, &mut x66, x64, x27, x52); + let mut x67: u64 = 0; + let mut x68: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x67, &mut x68, x66, x29, x54); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x69, &mut x70, x1, (arg2[5])); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x71, &mut x72, x1, (arg2[4])); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x73, &mut x74, x1, (arg2[3])); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x75, &mut x76, x1, (arg2[2])); + let mut x77: u64 = 0; + let mut x78: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x77, &mut x78, x1, (arg2[1])); + let mut x79: u64 = 0; + let mut x80: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x79, &mut x80, x1, (arg2[0])); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x81, &mut x82, 0x0, x80, x77); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x78, x75); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x76, x73); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x87, &mut x88, x86, x74, x71); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x89, &mut x90, x88, x72, x69); + let x91: u64 = ((x90 as u64) + x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x92, &mut x93, 0x0, x57, x79); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x94, &mut x95, x93, x59, x81); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x96, &mut x97, x95, x61, x83); + let mut x98: u64 = 0; + let mut x99: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x98, &mut x99, x97, x63, x85); + let mut x100: u64 = 0; + let mut x101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x100, &mut x101, x99, x65, x87); + let mut x102: u64 = 0; + let mut x103: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x102, &mut x103, x101, x67, x89); + let mut x104: u64 = 0; + let mut x105: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x104, &mut x105, x103, (x68 as u64), x91); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x106, &mut x107, x92, 0x5cfedd2a5cb5bb93); + let mut x108: u64 = 0; + let mut x109: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x108, &mut x109, x106, 0x8cb91e82a3386d28); + let mut x110: u64 = 0; + let mut x111: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x110, &mut x111, x106, 0xf5d6f7e50e641df); + let mut x112: u64 = 0; + let mut x113: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x112, &mut x113, x106, 0x152f7109ed5456b3); + let mut x114: u64 = 0; + let mut x115: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x114, &mut x115, x106, 0x1f166e6cac0425a7); + let mut x116: u64 = 0; + let mut x117: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x116, &mut x117, x106, 0xcf3ab6af6b7fc310); + let mut x118: u64 = 0; + let mut x119: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x118, &mut x119, x106, 0x3b883202e9046565); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x120, &mut x121, 0x0, x119, x116); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x122, &mut x123, x121, x117, x114); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x115, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x126, &mut x127, x125, x113, x110); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x128, &mut x129, x127, x111, x108); + let x130: u64 = ((x129 as u64) + x109); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x131, &mut x132, 0x0, x92, x118); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x133, &mut x134, x132, x94, x120); + let mut x135: u64 = 0; + let mut x136: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x135, &mut x136, x134, x96, x122); + let mut x137: u64 = 0; + let mut x138: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x137, &mut x138, x136, x98, x124); + let mut x139: u64 = 0; + let mut x140: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x139, &mut x140, x138, x100, x126); + let mut x141: u64 = 0; + let mut x142: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x141, &mut x142, x140, x102, x128); + let mut x143: u64 = 0; + let mut x144: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x143, &mut x144, x142, x104, x130); + let x145: u64 = ((x144 as u64) + (x105 as u64)); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x146, &mut x147, x2, (arg2[5])); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x148, &mut x149, x2, (arg2[4])); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x150, &mut x151, x2, (arg2[3])); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x152, &mut x153, x2, (arg2[2])); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x154, &mut x155, x2, (arg2[1])); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x156, &mut x157, x2, (arg2[0])); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let x168: u64 = ((x167 as u64) + x147); + let mut x169: u64 = 0; + let mut x170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x169, &mut x170, 0x0, x133, x156); + let mut x171: u64 = 0; + let mut x172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x171, &mut x172, x170, x135, x158); + let mut x173: u64 = 0; + let mut x174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x173, &mut x174, x172, x137, x160); + let mut x175: u64 = 0; + let mut x176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x175, &mut x176, x174, x139, x162); + let mut x177: u64 = 0; + let mut x178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x177, &mut x178, x176, x141, x164); + let mut x179: u64 = 0; + let mut x180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x179, &mut x180, x178, x143, x166); + let mut x181: u64 = 0; + let mut x182: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x181, &mut x182, x180, x145, x168); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x183, &mut x184, x169, 0x5cfedd2a5cb5bb93); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x185, &mut x186, x183, 0x8cb91e82a3386d28); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x187, &mut x188, x183, 0xf5d6f7e50e641df); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x189, &mut x190, x183, 0x152f7109ed5456b3); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x191, &mut x192, x183, 0x1f166e6cac0425a7); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x193, &mut x194, x183, 0xcf3ab6af6b7fc310); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x195, &mut x196, x183, 0x3b883202e9046565); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let x207: u64 = ((x206 as u64) + x186); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x208, &mut x209, 0x0, x169, x195); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x210, &mut x211, x209, x171, x197); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x173, x199); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x175, x201); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x177, x203); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x179, x205); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x220, &mut x221, x219, x181, x207); + let x222: u64 = ((x221 as u64) + (x182 as u64)); + let mut x223: u64 = 0; + let mut x224: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x223, &mut x224, x3, (arg2[5])); + let mut x225: u64 = 0; + let mut x226: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x225, &mut x226, x3, (arg2[4])); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x227, &mut x228, x3, (arg2[3])); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x229, &mut x230, x3, (arg2[2])); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x231, &mut x232, x3, (arg2[1])); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x233, &mut x234, x3, (arg2[0])); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x235, &mut x236, 0x0, x234, x231); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x237, &mut x238, x236, x232, x229); + let mut x239: u64 = 0; + let mut x240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x239, &mut x240, x238, x230, x227); + let mut x241: u64 = 0; + let mut x242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x241, &mut x242, x240, x228, x225); + let mut x243: u64 = 0; + let mut x244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x243, &mut x244, x242, x226, x223); + let x245: u64 = ((x244 as u64) + x224); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x246, &mut x247, 0x0, x210, x233); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x248, &mut x249, x247, x212, x235); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x250, &mut x251, x249, x214, x237); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x252, &mut x253, x251, x216, x239); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x254, &mut x255, x253, x218, x241); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x256, &mut x257, x255, x220, x243); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x258, &mut x259, x257, x222, x245); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x260, &mut x261, x246, 0x5cfedd2a5cb5bb93); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x262, &mut x263, x260, 0x8cb91e82a3386d28); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x264, &mut x265, x260, 0xf5d6f7e50e641df); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x266, &mut x267, x260, 0x152f7109ed5456b3); + let mut x268: u64 = 0; + let mut x269: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x268, &mut x269, x260, 0x1f166e6cac0425a7); + let mut x270: u64 = 0; + let mut x271: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x270, &mut x271, x260, 0xcf3ab6af6b7fc310); + let mut x272: u64 = 0; + let mut x273: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x272, &mut x273, x260, 0x3b883202e9046565); + let mut x274: u64 = 0; + let mut x275: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x274, &mut x275, 0x0, x273, x270); + let mut x276: u64 = 0; + let mut x277: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x276, &mut x277, x275, x271, x268); + let mut x278: u64 = 0; + let mut x279: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x278, &mut x279, x277, x269, x266); + let mut x280: u64 = 0; + let mut x281: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x280, &mut x281, x279, x267, x264); + let mut x282: u64 = 0; + let mut x283: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x282, &mut x283, x281, x265, x262); + let x284: u64 = ((x283 as u64) + x263); + let mut x285: u64 = 0; + let mut x286: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x285, &mut x286, 0x0, x246, x272); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x287, &mut x288, x286, x248, x274); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x289, &mut x290, x288, x250, x276); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x291, &mut x292, x290, x252, x278); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x293, &mut x294, x292, x254, x280); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x295, &mut x296, x294, x256, x282); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x297, &mut x298, x296, x258, x284); + let x299: u64 = ((x298 as u64) + (x259 as u64)); + let mut x300: u64 = 0; + let mut x301: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x300, &mut x301, x4, (arg2[5])); + let mut x302: u64 = 0; + let mut x303: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x302, &mut x303, x4, (arg2[4])); + let mut x304: u64 = 0; + let mut x305: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x304, &mut x305, x4, (arg2[3])); + let mut x306: u64 = 0; + let mut x307: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x306, &mut x307, x4, (arg2[2])); + let mut x308: u64 = 0; + let mut x309: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x308, &mut x309, x4, (arg2[1])); + let mut x310: u64 = 0; + let mut x311: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x310, &mut x311, x4, (arg2[0])); + let mut x312: u64 = 0; + let mut x313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x312, &mut x313, 0x0, x311, x308); + let mut x314: u64 = 0; + let mut x315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x314, &mut x315, x313, x309, x306); + let mut x316: u64 = 0; + let mut x317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x316, &mut x317, x315, x307, x304); + let mut x318: u64 = 0; + let mut x319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x318, &mut x319, x317, x305, x302); + let mut x320: u64 = 0; + let mut x321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x320, &mut x321, x319, x303, x300); + let x322: u64 = ((x321 as u64) + x301); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x323, &mut x324, 0x0, x287, x310); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x325, &mut x326, x324, x289, x312); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x327, &mut x328, x326, x291, x314); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x329, &mut x330, x328, x293, x316); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x331, &mut x332, x330, x295, x318); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x333, &mut x334, x332, x297, x320); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x335, &mut x336, x334, x299, x322); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x337, &mut x338, x323, 0x5cfedd2a5cb5bb93); + let mut x339: u64 = 0; + let mut x340: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x339, &mut x340, x337, 0x8cb91e82a3386d28); + let mut x341: u64 = 0; + let mut x342: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x341, &mut x342, x337, 0xf5d6f7e50e641df); + let mut x343: u64 = 0; + let mut x344: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x343, &mut x344, x337, 0x152f7109ed5456b3); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x345, &mut x346, x337, 0x1f166e6cac0425a7); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x347, &mut x348, x337, 0xcf3ab6af6b7fc310); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x349, &mut x350, x337, 0x3b883202e9046565); + let mut x351: u64 = 0; + let mut x352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x351, &mut x352, 0x0, x350, x347); + let mut x353: u64 = 0; + let mut x354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x353, &mut x354, x352, x348, x345); + let mut x355: u64 = 0; + let mut x356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x355, &mut x356, x354, x346, x343); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x357, &mut x358, x356, x344, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x359, &mut x360, x358, x342, x339); + let x361: u64 = ((x360 as u64) + x340); + let mut x362: u64 = 0; + let mut x363: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x362, &mut x363, 0x0, x323, x349); + let mut x364: u64 = 0; + let mut x365: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x364, &mut x365, x363, x325, x351); + let mut x366: u64 = 0; + let mut x367: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x366, &mut x367, x365, x327, x353); + let mut x368: u64 = 0; + let mut x369: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x368, &mut x369, x367, x329, x355); + let mut x370: u64 = 0; + let mut x371: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x370, &mut x371, x369, x331, x357); + let mut x372: u64 = 0; + let mut x373: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x372, &mut x373, x371, x333, x359); + let mut x374: u64 = 0; + let mut x375: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x374, &mut x375, x373, x335, x361); + let x376: u64 = ((x375 as u64) + (x336 as u64)); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x377, &mut x378, x5, (arg2[5])); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x379, &mut x380, x5, (arg2[4])); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x381, &mut x382, x5, (arg2[3])); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x383, &mut x384, x5, (arg2[2])); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x385, &mut x386, x5, (arg2[1])); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x387, &mut x388, x5, (arg2[0])); + let mut x389: u64 = 0; + let mut x390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x389, &mut x390, 0x0, x388, x385); + let mut x391: u64 = 0; + let mut x392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x391, &mut x392, x390, x386, x383); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x393, &mut x394, x392, x384, x381); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x395, &mut x396, x394, x382, x379); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x397, &mut x398, x396, x380, x377); + let x399: u64 = ((x398 as u64) + x378); + let mut x400: u64 = 0; + let mut x401: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x400, &mut x401, 0x0, x364, x387); + let mut x402: u64 = 0; + let mut x403: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x402, &mut x403, x401, x366, x389); + let mut x404: u64 = 0; + let mut x405: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x404, &mut x405, x403, x368, x391); + let mut x406: u64 = 0; + let mut x407: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x406, &mut x407, x405, x370, x393); + let mut x408: u64 = 0; + let mut x409: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x408, &mut x409, x407, x372, x395); + let mut x410: u64 = 0; + let mut x411: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x410, &mut x411, x409, x374, x397); + let mut x412: u64 = 0; + let mut x413: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x412, &mut x413, x411, x376, x399); + let mut x414: u64 = 0; + let mut x415: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x414, &mut x415, x400, 0x5cfedd2a5cb5bb93); + let mut x416: u64 = 0; + let mut x417: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x416, &mut x417, x414, 0x8cb91e82a3386d28); + let mut x418: u64 = 0; + let mut x419: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x418, &mut x419, x414, 0xf5d6f7e50e641df); + let mut x420: u64 = 0; + let mut x421: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x420, &mut x421, x414, 0x152f7109ed5456b3); + let mut x422: u64 = 0; + let mut x423: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x422, &mut x423, x414, 0x1f166e6cac0425a7); + let mut x424: u64 = 0; + let mut x425: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x424, &mut x425, x414, 0xcf3ab6af6b7fc310); + let mut x426: u64 = 0; + let mut x427: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x426, &mut x427, x414, 0x3b883202e9046565); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x428, &mut x429, 0x0, x427, x424); + let mut x430: u64 = 0; + let mut x431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x430, &mut x431, x429, x425, x422); + let mut x432: u64 = 0; + let mut x433: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x432, &mut x433, x431, x423, x420); + let mut x434: u64 = 0; + let mut x435: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x434, &mut x435, x433, x421, x418); + let mut x436: u64 = 0; + let mut x437: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x436, &mut x437, x435, x419, x416); + let x438: u64 = ((x437 as u64) + x417); + let mut x439: u64 = 0; + let mut x440: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x439, &mut x440, 0x0, x400, x426); + let mut x441: u64 = 0; + let mut x442: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x441, &mut x442, x440, x402, x428); + let mut x443: u64 = 0; + let mut x444: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x443, &mut x444, x442, x404, x430); + let mut x445: u64 = 0; + let mut x446: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x445, &mut x446, x444, x406, x432); + let mut x447: u64 = 0; + let mut x448: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x447, &mut x448, x446, x408, x434); + let mut x449: u64 = 0; + let mut x450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x449, &mut x450, x448, x410, x436); + let mut x451: u64 = 0; + let mut x452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x451, &mut x452, x450, x412, x438); + let x453: u64 = ((x452 as u64) + (x413 as u64)); + let mut x454: u64 = 0; + let mut x455: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x454, &mut x455, 0x0, x441, 0x3b883202e9046565); + let mut x456: u64 = 0; + let mut x457: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x456, &mut x457, x455, x443, 0xcf3ab6af6b7fc310); + let mut x458: u64 = 0; + let mut x459: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x458, &mut x459, x457, x445, 0x1f166e6cac0425a7); + let mut x460: u64 = 0; + let mut x461: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x460, &mut x461, x459, x447, 0x152f7109ed5456b3); + let mut x462: u64 = 0; + let mut x463: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x462, &mut x463, x461, x449, 0xf5d6f7e50e641df); + let mut x464: u64 = 0; + let mut x465: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x464, &mut x465, x463, x451, 0x8cb91e82a3386d28); + let mut x466: u64 = 0; + let mut x467: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x466, &mut x467, x465, x453, (0x0 as u64)); + let mut x468: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x468, x467, x454, x441); + let mut x469: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x469, x467, x456, x443); + let mut x470: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x470, x467, x458, x445); + let mut x471: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x471, x467, x460, x447); + let mut x472: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x472, x467, x462, x449); + let mut x473: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x473, x467, x464, x451); + out1[0] = x468; + out1[1] = x469; + out1[2] = x470; + out1[3] = x471; + out1[4] = x472; + out1[5] = x473; +} +/// The function fiat_bp384_scalar_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_square( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x7, &mut x8, x6, (arg1[5])); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x9, &mut x10, x6, (arg1[4])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x11, &mut x12, x6, (arg1[3])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x13, &mut x14, x6, (arg1[2])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x15, &mut x16, x6, (arg1[1])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x17, &mut x18, x6, (arg1[0])); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let x29: u64 = ((x28 as u64) + x8); + let mut x30: u64 = 0; + let mut x31: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x30, &mut x31, x17, 0x5cfedd2a5cb5bb93); + let mut x32: u64 = 0; + let mut x33: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x32, &mut x33, x30, 0x8cb91e82a3386d28); + let mut x34: u64 = 0; + let mut x35: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x34, &mut x35, x30, 0xf5d6f7e50e641df); + let mut x36: u64 = 0; + let mut x37: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x36, &mut x37, x30, 0x152f7109ed5456b3); + let mut x38: u64 = 0; + let mut x39: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x38, &mut x39, x30, 0x1f166e6cac0425a7); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x40, &mut x41, x30, 0xcf3ab6af6b7fc310); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x42, &mut x43, x30, 0x3b883202e9046565); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x44, &mut x45, 0x0, x43, x40); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x46, &mut x47, x45, x41, x38); + let mut x48: u64 = 0; + let mut x49: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x48, &mut x49, x47, x39, x36); + let mut x50: u64 = 0; + let mut x51: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x50, &mut x51, x49, x37, x34); + let mut x52: u64 = 0; + let mut x53: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x52, &mut x53, x51, x35, x32); + let x54: u64 = ((x53 as u64) + x33); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x55, &mut x56, 0x0, x17, x42); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x57, &mut x58, x56, x19, x44); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x59, &mut x60, x58, x21, x46); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x61, &mut x62, x60, x23, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x63, &mut x64, x62, x25, x50); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x65, &mut x66, x64, x27, x52); + let mut x67: u64 = 0; + let mut x68: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x67, &mut x68, x66, x29, x54); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x69, &mut x70, x1, (arg1[5])); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x71, &mut x72, x1, (arg1[4])); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x73, &mut x74, x1, (arg1[3])); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x75, &mut x76, x1, (arg1[2])); + let mut x77: u64 = 0; + let mut x78: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x77, &mut x78, x1, (arg1[1])); + let mut x79: u64 = 0; + let mut x80: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x79, &mut x80, x1, (arg1[0])); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x81, &mut x82, 0x0, x80, x77); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x78, x75); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x76, x73); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x87, &mut x88, x86, x74, x71); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x89, &mut x90, x88, x72, x69); + let x91: u64 = ((x90 as u64) + x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x92, &mut x93, 0x0, x57, x79); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x94, &mut x95, x93, x59, x81); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x96, &mut x97, x95, x61, x83); + let mut x98: u64 = 0; + let mut x99: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x98, &mut x99, x97, x63, x85); + let mut x100: u64 = 0; + let mut x101: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x100, &mut x101, x99, x65, x87); + let mut x102: u64 = 0; + let mut x103: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x102, &mut x103, x101, x67, x89); + let mut x104: u64 = 0; + let mut x105: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x104, &mut x105, x103, (x68 as u64), x91); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x106, &mut x107, x92, 0x5cfedd2a5cb5bb93); + let mut x108: u64 = 0; + let mut x109: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x108, &mut x109, x106, 0x8cb91e82a3386d28); + let mut x110: u64 = 0; + let mut x111: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x110, &mut x111, x106, 0xf5d6f7e50e641df); + let mut x112: u64 = 0; + let mut x113: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x112, &mut x113, x106, 0x152f7109ed5456b3); + let mut x114: u64 = 0; + let mut x115: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x114, &mut x115, x106, 0x1f166e6cac0425a7); + let mut x116: u64 = 0; + let mut x117: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x116, &mut x117, x106, 0xcf3ab6af6b7fc310); + let mut x118: u64 = 0; + let mut x119: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x118, &mut x119, x106, 0x3b883202e9046565); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x120, &mut x121, 0x0, x119, x116); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x122, &mut x123, x121, x117, x114); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x115, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x126, &mut x127, x125, x113, x110); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x128, &mut x129, x127, x111, x108); + let x130: u64 = ((x129 as u64) + x109); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x131, &mut x132, 0x0, x92, x118); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x133, &mut x134, x132, x94, x120); + let mut x135: u64 = 0; + let mut x136: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x135, &mut x136, x134, x96, x122); + let mut x137: u64 = 0; + let mut x138: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x137, &mut x138, x136, x98, x124); + let mut x139: u64 = 0; + let mut x140: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x139, &mut x140, x138, x100, x126); + let mut x141: u64 = 0; + let mut x142: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x141, &mut x142, x140, x102, x128); + let mut x143: u64 = 0; + let mut x144: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x143, &mut x144, x142, x104, x130); + let x145: u64 = ((x144 as u64) + (x105 as u64)); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x146, &mut x147, x2, (arg1[5])); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x148, &mut x149, x2, (arg1[4])); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x150, &mut x151, x2, (arg1[3])); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x152, &mut x153, x2, (arg1[2])); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x154, &mut x155, x2, (arg1[1])); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x156, &mut x157, x2, (arg1[0])); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let x168: u64 = ((x167 as u64) + x147); + let mut x169: u64 = 0; + let mut x170: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x169, &mut x170, 0x0, x133, x156); + let mut x171: u64 = 0; + let mut x172: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x171, &mut x172, x170, x135, x158); + let mut x173: u64 = 0; + let mut x174: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x173, &mut x174, x172, x137, x160); + let mut x175: u64 = 0; + let mut x176: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x175, &mut x176, x174, x139, x162); + let mut x177: u64 = 0; + let mut x178: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x177, &mut x178, x176, x141, x164); + let mut x179: u64 = 0; + let mut x180: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x179, &mut x180, x178, x143, x166); + let mut x181: u64 = 0; + let mut x182: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x181, &mut x182, x180, x145, x168); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x183, &mut x184, x169, 0x5cfedd2a5cb5bb93); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x185, &mut x186, x183, 0x8cb91e82a3386d28); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x187, &mut x188, x183, 0xf5d6f7e50e641df); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x189, &mut x190, x183, 0x152f7109ed5456b3); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x191, &mut x192, x183, 0x1f166e6cac0425a7); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x193, &mut x194, x183, 0xcf3ab6af6b7fc310); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x195, &mut x196, x183, 0x3b883202e9046565); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let x207: u64 = ((x206 as u64) + x186); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x208, &mut x209, 0x0, x169, x195); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x210, &mut x211, x209, x171, x197); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x173, x199); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x175, x201); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x177, x203); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x179, x205); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x220, &mut x221, x219, x181, x207); + let x222: u64 = ((x221 as u64) + (x182 as u64)); + let mut x223: u64 = 0; + let mut x224: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x223, &mut x224, x3, (arg1[5])); + let mut x225: u64 = 0; + let mut x226: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x225, &mut x226, x3, (arg1[4])); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x227, &mut x228, x3, (arg1[3])); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x229, &mut x230, x3, (arg1[2])); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x231, &mut x232, x3, (arg1[1])); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x233, &mut x234, x3, (arg1[0])); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x235, &mut x236, 0x0, x234, x231); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x237, &mut x238, x236, x232, x229); + let mut x239: u64 = 0; + let mut x240: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x239, &mut x240, x238, x230, x227); + let mut x241: u64 = 0; + let mut x242: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x241, &mut x242, x240, x228, x225); + let mut x243: u64 = 0; + let mut x244: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x243, &mut x244, x242, x226, x223); + let x245: u64 = ((x244 as u64) + x224); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x246, &mut x247, 0x0, x210, x233); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x248, &mut x249, x247, x212, x235); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x250, &mut x251, x249, x214, x237); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x252, &mut x253, x251, x216, x239); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x254, &mut x255, x253, x218, x241); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x256, &mut x257, x255, x220, x243); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x258, &mut x259, x257, x222, x245); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x260, &mut x261, x246, 0x5cfedd2a5cb5bb93); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x262, &mut x263, x260, 0x8cb91e82a3386d28); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x264, &mut x265, x260, 0xf5d6f7e50e641df); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x266, &mut x267, x260, 0x152f7109ed5456b3); + let mut x268: u64 = 0; + let mut x269: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x268, &mut x269, x260, 0x1f166e6cac0425a7); + let mut x270: u64 = 0; + let mut x271: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x270, &mut x271, x260, 0xcf3ab6af6b7fc310); + let mut x272: u64 = 0; + let mut x273: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x272, &mut x273, x260, 0x3b883202e9046565); + let mut x274: u64 = 0; + let mut x275: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x274, &mut x275, 0x0, x273, x270); + let mut x276: u64 = 0; + let mut x277: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x276, &mut x277, x275, x271, x268); + let mut x278: u64 = 0; + let mut x279: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x278, &mut x279, x277, x269, x266); + let mut x280: u64 = 0; + let mut x281: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x280, &mut x281, x279, x267, x264); + let mut x282: u64 = 0; + let mut x283: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x282, &mut x283, x281, x265, x262); + let x284: u64 = ((x283 as u64) + x263); + let mut x285: u64 = 0; + let mut x286: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x285, &mut x286, 0x0, x246, x272); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x287, &mut x288, x286, x248, x274); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x289, &mut x290, x288, x250, x276); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x291, &mut x292, x290, x252, x278); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x293, &mut x294, x292, x254, x280); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x295, &mut x296, x294, x256, x282); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x297, &mut x298, x296, x258, x284); + let x299: u64 = ((x298 as u64) + (x259 as u64)); + let mut x300: u64 = 0; + let mut x301: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x300, &mut x301, x4, (arg1[5])); + let mut x302: u64 = 0; + let mut x303: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x302, &mut x303, x4, (arg1[4])); + let mut x304: u64 = 0; + let mut x305: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x304, &mut x305, x4, (arg1[3])); + let mut x306: u64 = 0; + let mut x307: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x306, &mut x307, x4, (arg1[2])); + let mut x308: u64 = 0; + let mut x309: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x308, &mut x309, x4, (arg1[1])); + let mut x310: u64 = 0; + let mut x311: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x310, &mut x311, x4, (arg1[0])); + let mut x312: u64 = 0; + let mut x313: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x312, &mut x313, 0x0, x311, x308); + let mut x314: u64 = 0; + let mut x315: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x314, &mut x315, x313, x309, x306); + let mut x316: u64 = 0; + let mut x317: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x316, &mut x317, x315, x307, x304); + let mut x318: u64 = 0; + let mut x319: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x318, &mut x319, x317, x305, x302); + let mut x320: u64 = 0; + let mut x321: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x320, &mut x321, x319, x303, x300); + let x322: u64 = ((x321 as u64) + x301); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x323, &mut x324, 0x0, x287, x310); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x325, &mut x326, x324, x289, x312); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x327, &mut x328, x326, x291, x314); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x329, &mut x330, x328, x293, x316); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x331, &mut x332, x330, x295, x318); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x333, &mut x334, x332, x297, x320); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x335, &mut x336, x334, x299, x322); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x337, &mut x338, x323, 0x5cfedd2a5cb5bb93); + let mut x339: u64 = 0; + let mut x340: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x339, &mut x340, x337, 0x8cb91e82a3386d28); + let mut x341: u64 = 0; + let mut x342: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x341, &mut x342, x337, 0xf5d6f7e50e641df); + let mut x343: u64 = 0; + let mut x344: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x343, &mut x344, x337, 0x152f7109ed5456b3); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x345, &mut x346, x337, 0x1f166e6cac0425a7); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x347, &mut x348, x337, 0xcf3ab6af6b7fc310); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x349, &mut x350, x337, 0x3b883202e9046565); + let mut x351: u64 = 0; + let mut x352: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x351, &mut x352, 0x0, x350, x347); + let mut x353: u64 = 0; + let mut x354: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x353, &mut x354, x352, x348, x345); + let mut x355: u64 = 0; + let mut x356: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x355, &mut x356, x354, x346, x343); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x357, &mut x358, x356, x344, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x359, &mut x360, x358, x342, x339); + let x361: u64 = ((x360 as u64) + x340); + let mut x362: u64 = 0; + let mut x363: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x362, &mut x363, 0x0, x323, x349); + let mut x364: u64 = 0; + let mut x365: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x364, &mut x365, x363, x325, x351); + let mut x366: u64 = 0; + let mut x367: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x366, &mut x367, x365, x327, x353); + let mut x368: u64 = 0; + let mut x369: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x368, &mut x369, x367, x329, x355); + let mut x370: u64 = 0; + let mut x371: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x370, &mut x371, x369, x331, x357); + let mut x372: u64 = 0; + let mut x373: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x372, &mut x373, x371, x333, x359); + let mut x374: u64 = 0; + let mut x375: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x374, &mut x375, x373, x335, x361); + let x376: u64 = ((x375 as u64) + (x336 as u64)); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x377, &mut x378, x5, (arg1[5])); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x379, &mut x380, x5, (arg1[4])); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x381, &mut x382, x5, (arg1[3])); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x383, &mut x384, x5, (arg1[2])); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x385, &mut x386, x5, (arg1[1])); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x387, &mut x388, x5, (arg1[0])); + let mut x389: u64 = 0; + let mut x390: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x389, &mut x390, 0x0, x388, x385); + let mut x391: u64 = 0; + let mut x392: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x391, &mut x392, x390, x386, x383); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x393, &mut x394, x392, x384, x381); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x395, &mut x396, x394, x382, x379); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x397, &mut x398, x396, x380, x377); + let x399: u64 = ((x398 as u64) + x378); + let mut x400: u64 = 0; + let mut x401: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x400, &mut x401, 0x0, x364, x387); + let mut x402: u64 = 0; + let mut x403: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x402, &mut x403, x401, x366, x389); + let mut x404: u64 = 0; + let mut x405: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x404, &mut x405, x403, x368, x391); + let mut x406: u64 = 0; + let mut x407: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x406, &mut x407, x405, x370, x393); + let mut x408: u64 = 0; + let mut x409: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x408, &mut x409, x407, x372, x395); + let mut x410: u64 = 0; + let mut x411: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x410, &mut x411, x409, x374, x397); + let mut x412: u64 = 0; + let mut x413: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x412, &mut x413, x411, x376, x399); + let mut x414: u64 = 0; + let mut x415: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x414, &mut x415, x400, 0x5cfedd2a5cb5bb93); + let mut x416: u64 = 0; + let mut x417: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x416, &mut x417, x414, 0x8cb91e82a3386d28); + let mut x418: u64 = 0; + let mut x419: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x418, &mut x419, x414, 0xf5d6f7e50e641df); + let mut x420: u64 = 0; + let mut x421: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x420, &mut x421, x414, 0x152f7109ed5456b3); + let mut x422: u64 = 0; + let mut x423: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x422, &mut x423, x414, 0x1f166e6cac0425a7); + let mut x424: u64 = 0; + let mut x425: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x424, &mut x425, x414, 0xcf3ab6af6b7fc310); + let mut x426: u64 = 0; + let mut x427: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x426, &mut x427, x414, 0x3b883202e9046565); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x428, &mut x429, 0x0, x427, x424); + let mut x430: u64 = 0; + let mut x431: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x430, &mut x431, x429, x425, x422); + let mut x432: u64 = 0; + let mut x433: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x432, &mut x433, x431, x423, x420); + let mut x434: u64 = 0; + let mut x435: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x434, &mut x435, x433, x421, x418); + let mut x436: u64 = 0; + let mut x437: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x436, &mut x437, x435, x419, x416); + let x438: u64 = ((x437 as u64) + x417); + let mut x439: u64 = 0; + let mut x440: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x439, &mut x440, 0x0, x400, x426); + let mut x441: u64 = 0; + let mut x442: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x441, &mut x442, x440, x402, x428); + let mut x443: u64 = 0; + let mut x444: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x443, &mut x444, x442, x404, x430); + let mut x445: u64 = 0; + let mut x446: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x445, &mut x446, x444, x406, x432); + let mut x447: u64 = 0; + let mut x448: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x447, &mut x448, x446, x408, x434); + let mut x449: u64 = 0; + let mut x450: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x449, &mut x450, x448, x410, x436); + let mut x451: u64 = 0; + let mut x452: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x451, &mut x452, x450, x412, x438); + let x453: u64 = ((x452 as u64) + (x413 as u64)); + let mut x454: u64 = 0; + let mut x455: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x454, &mut x455, 0x0, x441, 0x3b883202e9046565); + let mut x456: u64 = 0; + let mut x457: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x456, &mut x457, x455, x443, 0xcf3ab6af6b7fc310); + let mut x458: u64 = 0; + let mut x459: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x458, &mut x459, x457, x445, 0x1f166e6cac0425a7); + let mut x460: u64 = 0; + let mut x461: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x460, &mut x461, x459, x447, 0x152f7109ed5456b3); + let mut x462: u64 = 0; + let mut x463: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x462, &mut x463, x461, x449, 0xf5d6f7e50e641df); + let mut x464: u64 = 0; + let mut x465: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x464, &mut x465, x463, x451, 0x8cb91e82a3386d28); + let mut x466: u64 = 0; + let mut x467: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x466, &mut x467, x465, x453, (0x0 as u64)); + let mut x468: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x468, x467, x454, x441); + let mut x469: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x469, x467, x456, x443); + let mut x470: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x470, x467, x458, x445); + let mut x471: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x471, x467, x460, x447); + let mut x472: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x472, x467, x462, x449); + let mut x473: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x473, x467, x464, x451); + out1[0] = x468; + out1[1] = x469; + out1[2] = x470; + out1[3] = x471; + out1[4] = x472; + out1[5] = x473; +} +/// The function fiat_bp384_scalar_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_add( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x13, &mut x14, 0x0, x1, 0x3b883202e9046565); + let mut x15: u64 = 0; + let mut x16: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x15, &mut x16, x14, x3, 0xcf3ab6af6b7fc310); + let mut x17: u64 = 0; + let mut x18: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x17, &mut x18, x16, x5, 0x1f166e6cac0425a7); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x19, &mut x20, x18, x7, 0x152f7109ed5456b3); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x21, &mut x22, x20, x9, 0xf5d6f7e50e641df); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x23, &mut x24, x22, x11, 0x8cb91e82a3386d28); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x25, &mut x26, x24, (x12 as u64), (0x0 as u64)); + let mut x27: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x27, x26, x13, x1); + let mut x28: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x28, x26, x15, x3); + let mut x29: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x29, x26, x17, x5); + let mut x30: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x30, x26, x19, x7); + let mut x31: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x31, x26, x21, x9); + let mut x32: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x32, x26, x23, x11); + out1[0] = x27; + out1[1] = x28; + out1[2] = x29; + out1[3] = x30; + out1[4] = x31; + out1[5] = x32; +} +/// The function fiat_bp384_scalar_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_sub( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, + arg2: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x13, x12, (0x0 as u64), 0xffffffffffffffff); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x14, &mut x15, 0x0, x1, (x13 & 0x3b883202e9046565)); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x16, &mut x17, x15, x3, (x13 & 0xcf3ab6af6b7fc310)); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x18, &mut x19, x17, x5, (x13 & 0x1f166e6cac0425a7)); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x20, &mut x21, x19, x7, (x13 & 0x152f7109ed5456b3)); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x9, (x13 & 0xf5d6f7e50e641df)); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x11, (x13 & 0x8cb91e82a3386d28)); + out1[0] = x14; + out1[1] = x16; + out1[2] = x18; + out1[3] = x20; + out1[4] = x22; + out1[5] = x24; +} +/// The function fiat_bp384_scalar_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_opp( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let mut x1: u64 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); + let mut x13: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x13, x12, (0x0 as u64), 0xffffffffffffffff); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x14, &mut x15, 0x0, x1, (x13 & 0x3b883202e9046565)); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x16, &mut x17, x15, x3, (x13 & 0xcf3ab6af6b7fc310)); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x18, &mut x19, x17, x5, (x13 & 0x1f166e6cac0425a7)); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x20, &mut x21, x19, x7, (x13 & 0x152f7109ed5456b3)); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x9, (x13 & 0xf5d6f7e50e641df)); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x11, (x13 & 0x8cb91e82a3386d28)); + out1[0] = x14; + out1[1] = x16; + out1[2] = x18; + out1[3] = x20; + out1[4] = x22; + out1[5] = x24; +} +/// The function fiat_bp384_scalar_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^64)⁻¹ mod m)^6) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_from_montgomery( + out1: &mut fiat_bp384_scalar_non_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[0]); + let mut x2: u64 = 0; + let mut x3: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x2, &mut x3, x1, 0x5cfedd2a5cb5bb93); + let mut x4: u64 = 0; + let mut x5: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x4, &mut x5, x2, 0x8cb91e82a3386d28); + let mut x6: u64 = 0; + let mut x7: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x6, &mut x7, x2, 0xf5d6f7e50e641df); + let mut x8: u64 = 0; + let mut x9: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x8, &mut x9, x2, 0x152f7109ed5456b3); + let mut x10: u64 = 0; + let mut x11: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x10, &mut x11, x2, 0x1f166e6cac0425a7); + let mut x12: u64 = 0; + let mut x13: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x12, &mut x13, x2, 0xcf3ab6af6b7fc310); + let mut x14: u64 = 0; + let mut x15: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x14, &mut x15, x2, 0x3b883202e9046565); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x16, &mut x17, 0x0, x15, x12); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x18, &mut x19, x17, x13, x10); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x20, &mut x21, x19, x11, x8); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x9, x6); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x7, x4); + let mut x26: u64 = 0; + let mut x27: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x26, &mut x27, 0x0, x1, x14); + let mut x28: u64 = 0; + let mut x29: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), x16); + let mut x30: u64 = 0; + let mut x31: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), x18); + let mut x32: u64 = 0; + let mut x33: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), x20); + let mut x34: u64 = 0; + let mut x35: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x34, &mut x35, x33, (0x0 as u64), x22); + let mut x36: u64 = 0; + let mut x37: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x24); + let mut x38: u64 = 0; + let mut x39: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x38, &mut x39, 0x0, x28, (arg1[1])); + let mut x40: u64 = 0; + let mut x41: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x40, &mut x41, x39, x30, (0x0 as u64)); + let mut x42: u64 = 0; + let mut x43: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x42, &mut x43, x41, x32, (0x0 as u64)); + let mut x44: u64 = 0; + let mut x45: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x44, &mut x45, x43, x34, (0x0 as u64)); + let mut x46: u64 = 0; + let mut x47: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x46, &mut x47, x45, x36, (0x0 as u64)); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x48, &mut x49, x38, 0x5cfedd2a5cb5bb93); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x50, &mut x51, x48, 0x8cb91e82a3386d28); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x52, &mut x53, x48, 0xf5d6f7e50e641df); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x54, &mut x55, x48, 0x152f7109ed5456b3); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x56, &mut x57, x48, 0x1f166e6cac0425a7); + let mut x58: u64 = 0; + let mut x59: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x58, &mut x59, x48, 0xcf3ab6af6b7fc310); + let mut x60: u64 = 0; + let mut x61: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x60, &mut x61, x48, 0x3b883202e9046565); + let mut x62: u64 = 0; + let mut x63: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x62, &mut x63, 0x0, x61, x58); + let mut x64: u64 = 0; + let mut x65: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x64, &mut x65, x63, x59, x56); + let mut x66: u64 = 0; + let mut x67: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x66, &mut x67, x65, x57, x54); + let mut x68: u64 = 0; + let mut x69: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x68, &mut x69, x67, x55, x52); + let mut x70: u64 = 0; + let mut x71: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x70, &mut x71, x69, x53, x50); + let mut x72: u64 = 0; + let mut x73: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x72, &mut x73, 0x0, x38, x60); + let mut x74: u64 = 0; + let mut x75: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x74, &mut x75, x73, x40, x62); + let mut x76: u64 = 0; + let mut x77: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x76, &mut x77, x75, x42, x64); + let mut x78: u64 = 0; + let mut x79: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x78, &mut x79, x77, x44, x66); + let mut x80: u64 = 0; + let mut x81: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x80, &mut x81, x79, x46, x68); + let mut x82: u64 = 0; + let mut x83: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x82, + &mut x83, + x81, + ((x47 as u64) + ((x37 as u64) + ((x25 as u64) + x5))), + x70, + ); + let mut x84: u64 = 0; + let mut x85: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x84, &mut x85, 0x0, x74, (arg1[2])); + let mut x86: u64 = 0; + let mut x87: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x86, &mut x87, x85, x76, (0x0 as u64)); + let mut x88: u64 = 0; + let mut x89: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x88, &mut x89, x87, x78, (0x0 as u64)); + let mut x90: u64 = 0; + let mut x91: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x90, &mut x91, x89, x80, (0x0 as u64)); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x92, &mut x93, x91, x82, (0x0 as u64)); + let mut x94: u64 = 0; + let mut x95: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x94, &mut x95, x84, 0x5cfedd2a5cb5bb93); + let mut x96: u64 = 0; + let mut x97: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x96, &mut x97, x94, 0x8cb91e82a3386d28); + let mut x98: u64 = 0; + let mut x99: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x98, &mut x99, x94, 0xf5d6f7e50e641df); + let mut x100: u64 = 0; + let mut x101: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x100, &mut x101, x94, 0x152f7109ed5456b3); + let mut x102: u64 = 0; + let mut x103: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x102, &mut x103, x94, 0x1f166e6cac0425a7); + let mut x104: u64 = 0; + let mut x105: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x104, &mut x105, x94, 0xcf3ab6af6b7fc310); + let mut x106: u64 = 0; + let mut x107: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x106, &mut x107, x94, 0x3b883202e9046565); + let mut x108: u64 = 0; + let mut x109: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x108, &mut x109, 0x0, x107, x104); + let mut x110: u64 = 0; + let mut x111: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x110, &mut x111, x109, x105, x102); + let mut x112: u64 = 0; + let mut x113: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x112, &mut x113, x111, x103, x100); + let mut x114: u64 = 0; + let mut x115: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x114, &mut x115, x113, x101, x98); + let mut x116: u64 = 0; + let mut x117: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x116, &mut x117, x115, x99, x96); + let mut x118: u64 = 0; + let mut x119: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x118, &mut x119, 0x0, x84, x106); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x120, &mut x121, x119, x86, x108); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x122, &mut x123, x121, x88, x110); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x90, x112); + let mut x126: u64 = 0; + let mut x127: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x126, &mut x127, x125, x92, x114); + let mut x128: u64 = 0; + let mut x129: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x128, + &mut x129, + x127, + ((x93 as u64) + ((x83 as u64) + ((x71 as u64) + x51))), + x116, + ); + let mut x130: u64 = 0; + let mut x131: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x130, &mut x131, 0x0, x120, (arg1[3])); + let mut x132: u64 = 0; + let mut x133: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x132, &mut x133, x131, x122, (0x0 as u64)); + let mut x134: u64 = 0; + let mut x135: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x134, &mut x135, x133, x124, (0x0 as u64)); + let mut x136: u64 = 0; + let mut x137: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x136, &mut x137, x135, x126, (0x0 as u64)); + let mut x138: u64 = 0; + let mut x139: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x138, &mut x139, x137, x128, (0x0 as u64)); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x140, &mut x141, x130, 0x5cfedd2a5cb5bb93); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x142, &mut x143, x140, 0x8cb91e82a3386d28); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x144, &mut x145, x140, 0xf5d6f7e50e641df); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x146, &mut x147, x140, 0x152f7109ed5456b3); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x148, &mut x149, x140, 0x1f166e6cac0425a7); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x150, &mut x151, x140, 0xcf3ab6af6b7fc310); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x152, &mut x153, x140, 0x3b883202e9046565); + let mut x154: u64 = 0; + let mut x155: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x154, &mut x155, 0x0, x153, x150); + let mut x156: u64 = 0; + let mut x157: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x156, &mut x157, x155, x151, x148); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x158, &mut x159, x157, x149, x146); + let mut x160: u64 = 0; + let mut x161: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x147, x144); + let mut x162: u64 = 0; + let mut x163: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x145, x142); + let mut x164: u64 = 0; + let mut x165: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x164, &mut x165, 0x0, x130, x152); + let mut x166: u64 = 0; + let mut x167: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x132, x154); + let mut x168: u64 = 0; + let mut x169: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x168, &mut x169, x167, x134, x156); + let mut x170: u64 = 0; + let mut x171: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x170, &mut x171, x169, x136, x158); + let mut x172: u64 = 0; + let mut x173: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x172, &mut x173, x171, x138, x160); + let mut x174: u64 = 0; + let mut x175: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x174, + &mut x175, + x173, + ((x139 as u64) + ((x129 as u64) + ((x117 as u64) + x97))), + x162, + ); + let mut x176: u64 = 0; + let mut x177: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x176, &mut x177, 0x0, x166, (arg1[4])); + let mut x178: u64 = 0; + let mut x179: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x178, &mut x179, x177, x168, (0x0 as u64)); + let mut x180: u64 = 0; + let mut x181: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x180, &mut x181, x179, x170, (0x0 as u64)); + let mut x182: u64 = 0; + let mut x183: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x182, &mut x183, x181, x172, (0x0 as u64)); + let mut x184: u64 = 0; + let mut x185: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x184, &mut x185, x183, x174, (0x0 as u64)); + let mut x186: u64 = 0; + let mut x187: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x186, &mut x187, x176, 0x5cfedd2a5cb5bb93); + let mut x188: u64 = 0; + let mut x189: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x188, &mut x189, x186, 0x8cb91e82a3386d28); + let mut x190: u64 = 0; + let mut x191: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x190, &mut x191, x186, 0xf5d6f7e50e641df); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x192, &mut x193, x186, 0x152f7109ed5456b3); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x194, &mut x195, x186, 0x1f166e6cac0425a7); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x196, &mut x197, x186, 0xcf3ab6af6b7fc310); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x198, &mut x199, x186, 0x3b883202e9046565); + let mut x200: u64 = 0; + let mut x201: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x200, &mut x201, 0x0, x199, x196); + let mut x202: u64 = 0; + let mut x203: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x202, &mut x203, x201, x197, x194); + let mut x204: u64 = 0; + let mut x205: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x204, &mut x205, x203, x195, x192); + let mut x206: u64 = 0; + let mut x207: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x206, &mut x207, x205, x193, x190); + let mut x208: u64 = 0; + let mut x209: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x208, &mut x209, x207, x191, x188); + let mut x210: u64 = 0; + let mut x211: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x210, &mut x211, 0x0, x176, x198); + let mut x212: u64 = 0; + let mut x213: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x178, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x180, x202); + let mut x216: u64 = 0; + let mut x217: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x182, x204); + let mut x218: u64 = 0; + let mut x219: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x184, x206); + let mut x220: u64 = 0; + let mut x221: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x220, + &mut x221, + x219, + ((x185 as u64) + ((x175 as u64) + ((x163 as u64) + x143))), + x208, + ); + let mut x222: u64 = 0; + let mut x223: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x222, &mut x223, 0x0, x212, (arg1[5])); + let mut x224: u64 = 0; + let mut x225: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x224, &mut x225, x223, x214, (0x0 as u64)); + let mut x226: u64 = 0; + let mut x227: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x226, &mut x227, x225, x216, (0x0 as u64)); + let mut x228: u64 = 0; + let mut x229: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x228, &mut x229, x227, x218, (0x0 as u64)); + let mut x230: u64 = 0; + let mut x231: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x230, &mut x231, x229, x220, (0x0 as u64)); + let mut x232: u64 = 0; + let mut x233: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x232, &mut x233, x222, 0x5cfedd2a5cb5bb93); + let mut x234: u64 = 0; + let mut x235: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x234, &mut x235, x232, 0x8cb91e82a3386d28); + let mut x236: u64 = 0; + let mut x237: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x236, &mut x237, x232, 0xf5d6f7e50e641df); + let mut x238: u64 = 0; + let mut x239: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x238, &mut x239, x232, 0x152f7109ed5456b3); + let mut x240: u64 = 0; + let mut x241: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x240, &mut x241, x232, 0x1f166e6cac0425a7); + let mut x242: u64 = 0; + let mut x243: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x242, &mut x243, x232, 0xcf3ab6af6b7fc310); + let mut x244: u64 = 0; + let mut x245: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x244, &mut x245, x232, 0x3b883202e9046565); + let mut x246: u64 = 0; + let mut x247: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x246, &mut x247, 0x0, x245, x242); + let mut x248: u64 = 0; + let mut x249: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x248, &mut x249, x247, x243, x240); + let mut x250: u64 = 0; + let mut x251: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x250, &mut x251, x249, x241, x238); + let mut x252: u64 = 0; + let mut x253: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x252, &mut x253, x251, x239, x236); + let mut x254: u64 = 0; + let mut x255: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x254, &mut x255, x253, x237, x234); + let mut x256: u64 = 0; + let mut x257: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x256, &mut x257, 0x0, x222, x244); + let mut x258: u64 = 0; + let mut x259: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x258, &mut x259, x257, x224, x246); + let mut x260: u64 = 0; + let mut x261: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x260, &mut x261, x259, x226, x248); + let mut x262: u64 = 0; + let mut x263: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x262, &mut x263, x261, x228, x250); + let mut x264: u64 = 0; + let mut x265: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x264, &mut x265, x263, x230, x252); + let mut x266: u64 = 0; + let mut x267: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x266, + &mut x267, + x265, + ((x231 as u64) + ((x221 as u64) + ((x209 as u64) + x189))), + x254, + ); + let x268: u64 = ((x267 as u64) + ((x255 as u64) + x235)); + let mut x269: u64 = 0; + let mut x270: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x269, &mut x270, 0x0, x258, 0x3b883202e9046565); + let mut x271: u64 = 0; + let mut x272: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x271, &mut x272, x270, x260, 0xcf3ab6af6b7fc310); + let mut x273: u64 = 0; + let mut x274: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x273, &mut x274, x272, x262, 0x1f166e6cac0425a7); + let mut x275: u64 = 0; + let mut x276: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x275, &mut x276, x274, x264, 0x152f7109ed5456b3); + let mut x277: u64 = 0; + let mut x278: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x277, &mut x278, x276, x266, 0xf5d6f7e50e641df); + let mut x279: u64 = 0; + let mut x280: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x279, &mut x280, x278, x268, 0x8cb91e82a3386d28); + let mut x281: u64 = 0; + let mut x282: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x281, &mut x282, x280, (0x0 as u64), (0x0 as u64)); + let mut x283: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x283, x282, x269, x258); + let mut x284: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x284, x282, x271, x260); + let mut x285: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x285, x282, x273, x262); + let mut x286: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x286, x282, x275, x264); + let mut x287: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x287, x282, x277, x266); + let mut x288: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x288, x282, x279, x268); + out1[0] = x283; + out1[1] = x284; + out1[2] = x285; + out1[3] = x286; + out1[4] = x287; + out1[5] = x288; +} +/// The function fiat_bp384_scalar_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_to_montgomery( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, + arg1: &fiat_bp384_scalar_non_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[0]); + let mut x7: u64 = 0; + let mut x8: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x7, &mut x8, x6, 0xce8941a614e97c2); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x9, &mut x10, x6, 0x8f886dc965165fdb); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x11, &mut x12, x6, 0x574a74cb52d748ff); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x13, &mut x14, x6, 0x2a927e3b9802688a); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x15, &mut x16, x6, 0x37264e202f2b6b6e); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x17, &mut x18, x6, 0xac4ed3a2de771c8e); + let mut x19: u64 = 0; + let mut x20: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x19, &mut x20, 0x0, x18, x15); + let mut x21: u64 = 0; + let mut x22: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x21, &mut x22, x20, x16, x13); + let mut x23: u64 = 0; + let mut x24: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x23, &mut x24, x22, x14, x11); + let mut x25: u64 = 0; + let mut x26: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x25, &mut x26, x24, x12, x9); + let mut x27: u64 = 0; + let mut x28: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x10, x7); + let mut x29: u64 = 0; + let mut x30: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x29, &mut x30, x17, 0x5cfedd2a5cb5bb93); + let mut x31: u64 = 0; + let mut x32: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x31, &mut x32, x29, 0x8cb91e82a3386d28); + let mut x33: u64 = 0; + let mut x34: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x33, &mut x34, x29, 0xf5d6f7e50e641df); + let mut x35: u64 = 0; + let mut x36: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x35, &mut x36, x29, 0x152f7109ed5456b3); + let mut x37: u64 = 0; + let mut x38: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x37, &mut x38, x29, 0x1f166e6cac0425a7); + let mut x39: u64 = 0; + let mut x40: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x39, &mut x40, x29, 0xcf3ab6af6b7fc310); + let mut x41: u64 = 0; + let mut x42: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x41, &mut x42, x29, 0x3b883202e9046565); + let mut x43: u64 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x43, &mut x44, 0x0, x42, x39); + let mut x45: u64 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x45, &mut x46, x44, x40, x37); + let mut x47: u64 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x47, &mut x48, x46, x38, x35); + let mut x49: u64 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x49, &mut x50, x48, x36, x33); + let mut x51: u64 = 0; + let mut x52: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x51, &mut x52, x50, x34, x31); + let mut x53: u64 = 0; + let mut x54: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x53, &mut x54, 0x0, x17, x41); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x55, &mut x56, x54, x19, x43); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x57, &mut x58, x56, x21, x45); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x59, &mut x60, x58, x23, x47); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x61, &mut x62, x60, x25, x49); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x63, &mut x64, x62, x27, x51); + let mut x65: u64 = 0; + let mut x66: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x65, &mut x66, x1, 0xce8941a614e97c2); + let mut x67: u64 = 0; + let mut x68: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x67, &mut x68, x1, 0x8f886dc965165fdb); + let mut x69: u64 = 0; + let mut x70: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x69, &mut x70, x1, 0x574a74cb52d748ff); + let mut x71: u64 = 0; + let mut x72: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x71, &mut x72, x1, 0x2a927e3b9802688a); + let mut x73: u64 = 0; + let mut x74: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x73, &mut x74, x1, 0x37264e202f2b6b6e); + let mut x75: u64 = 0; + let mut x76: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x75, &mut x76, x1, 0xac4ed3a2de771c8e); + let mut x77: u64 = 0; + let mut x78: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x77, &mut x78, 0x0, x76, x73); + let mut x79: u64 = 0; + let mut x80: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x79, &mut x80, x78, x74, x71); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x81, &mut x82, x80, x72, x69); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x70, x67); + let mut x85: u64 = 0; + let mut x86: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x68, x65); + let mut x87: u64 = 0; + let mut x88: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x87, &mut x88, 0x0, x55, x75); + let mut x89: u64 = 0; + let mut x90: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x89, &mut x90, x88, x57, x77); + let mut x91: u64 = 0; + let mut x92: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x91, &mut x92, x90, x59, x79); + let mut x93: u64 = 0; + let mut x94: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x93, &mut x94, x92, x61, x81); + let mut x95: u64 = 0; + let mut x96: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x95, &mut x96, x94, x63, x83); + let mut x97: u64 = 0; + let mut x98: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x97, + &mut x98, + x96, + (((x64 as u64) + ((x28 as u64) + x8)) + ((x52 as u64) + x32)), + x85, + ); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x99, &mut x100, x87, 0x5cfedd2a5cb5bb93); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x101, &mut x102, x99, 0x8cb91e82a3386d28); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x103, &mut x104, x99, 0xf5d6f7e50e641df); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x105, &mut x106, x99, 0x152f7109ed5456b3); + let mut x107: u64 = 0; + let mut x108: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x107, &mut x108, x99, 0x1f166e6cac0425a7); + let mut x109: u64 = 0; + let mut x110: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x109, &mut x110, x99, 0xcf3ab6af6b7fc310); + let mut x111: u64 = 0; + let mut x112: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x111, &mut x112, x99, 0x3b883202e9046565); + let mut x113: u64 = 0; + let mut x114: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x113, &mut x114, 0x0, x112, x109); + let mut x115: u64 = 0; + let mut x116: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x115, &mut x116, x114, x110, x107); + let mut x117: u64 = 0; + let mut x118: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x117, &mut x118, x116, x108, x105); + let mut x119: u64 = 0; + let mut x120: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x119, &mut x120, x118, x106, x103); + let mut x121: u64 = 0; + let mut x122: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x121, &mut x122, x120, x104, x101); + let mut x123: u64 = 0; + let mut x124: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x123, &mut x124, 0x0, x87, x111); + let mut x125: u64 = 0; + let mut x126: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x125, &mut x126, x124, x89, x113); + let mut x127: u64 = 0; + let mut x128: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x127, &mut x128, x126, x91, x115); + let mut x129: u64 = 0; + let mut x130: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x129, &mut x130, x128, x93, x117); + let mut x131: u64 = 0; + let mut x132: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x131, &mut x132, x130, x95, x119); + let mut x133: u64 = 0; + let mut x134: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x133, &mut x134, x132, x97, x121); + let mut x135: u64 = 0; + let mut x136: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x135, &mut x136, x2, 0xce8941a614e97c2); + let mut x137: u64 = 0; + let mut x138: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x137, &mut x138, x2, 0x8f886dc965165fdb); + let mut x139: u64 = 0; + let mut x140: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x139, &mut x140, x2, 0x574a74cb52d748ff); + let mut x141: u64 = 0; + let mut x142: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x141, &mut x142, x2, 0x2a927e3b9802688a); + let mut x143: u64 = 0; + let mut x144: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x143, &mut x144, x2, 0x37264e202f2b6b6e); + let mut x145: u64 = 0; + let mut x146: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x145, &mut x146, x2, 0xac4ed3a2de771c8e); + let mut x147: u64 = 0; + let mut x148: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x147, &mut x148, 0x0, x146, x143); + let mut x149: u64 = 0; + let mut x150: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x149, &mut x150, x148, x144, x141); + let mut x151: u64 = 0; + let mut x152: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x151, &mut x152, x150, x142, x139); + let mut x153: u64 = 0; + let mut x154: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x153, &mut x154, x152, x140, x137); + let mut x155: u64 = 0; + let mut x156: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x155, &mut x156, x154, x138, x135); + let mut x157: u64 = 0; + let mut x158: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x157, &mut x158, 0x0, x125, x145); + let mut x159: u64 = 0; + let mut x160: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x159, &mut x160, x158, x127, x147); + let mut x161: u64 = 0; + let mut x162: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x161, &mut x162, x160, x129, x149); + let mut x163: u64 = 0; + let mut x164: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x163, &mut x164, x162, x131, x151); + let mut x165: u64 = 0; + let mut x166: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x165, &mut x166, x164, x133, x153); + let mut x167: u64 = 0; + let mut x168: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x167, + &mut x168, + x166, + (((x134 as u64) + ((x98 as u64) + ((x86 as u64) + x66))) + ((x122 as u64) + x102)), + x155, + ); + let mut x169: u64 = 0; + let mut x170: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x169, &mut x170, x157, 0x5cfedd2a5cb5bb93); + let mut x171: u64 = 0; + let mut x172: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x171, &mut x172, x169, 0x8cb91e82a3386d28); + let mut x173: u64 = 0; + let mut x174: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x173, &mut x174, x169, 0xf5d6f7e50e641df); + let mut x175: u64 = 0; + let mut x176: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x175, &mut x176, x169, 0x152f7109ed5456b3); + let mut x177: u64 = 0; + let mut x178: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x177, &mut x178, x169, 0x1f166e6cac0425a7); + let mut x179: u64 = 0; + let mut x180: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x179, &mut x180, x169, 0xcf3ab6af6b7fc310); + let mut x181: u64 = 0; + let mut x182: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x181, &mut x182, x169, 0x3b883202e9046565); + let mut x183: u64 = 0; + let mut x184: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x183, &mut x184, 0x0, x182, x179); + let mut x185: u64 = 0; + let mut x186: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x185, &mut x186, x184, x180, x177); + let mut x187: u64 = 0; + let mut x188: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x187, &mut x188, x186, x178, x175); + let mut x189: u64 = 0; + let mut x190: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x189, &mut x190, x188, x176, x173); + let mut x191: u64 = 0; + let mut x192: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x191, &mut x192, x190, x174, x171); + let mut x193: u64 = 0; + let mut x194: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x193, &mut x194, 0x0, x157, x181); + let mut x195: u64 = 0; + let mut x196: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x195, &mut x196, x194, x159, x183); + let mut x197: u64 = 0; + let mut x198: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x197, &mut x198, x196, x161, x185); + let mut x199: u64 = 0; + let mut x200: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x199, &mut x200, x198, x163, x187); + let mut x201: u64 = 0; + let mut x202: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x201, &mut x202, x200, x165, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x203, &mut x204, x202, x167, x191); + let mut x205: u64 = 0; + let mut x206: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x205, &mut x206, x3, 0xce8941a614e97c2); + let mut x207: u64 = 0; + let mut x208: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x207, &mut x208, x3, 0x8f886dc965165fdb); + let mut x209: u64 = 0; + let mut x210: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x209, &mut x210, x3, 0x574a74cb52d748ff); + let mut x211: u64 = 0; + let mut x212: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x211, &mut x212, x3, 0x2a927e3b9802688a); + let mut x213: u64 = 0; + let mut x214: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x213, &mut x214, x3, 0x37264e202f2b6b6e); + let mut x215: u64 = 0; + let mut x216: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x215, &mut x216, x3, 0xac4ed3a2de771c8e); + let mut x217: u64 = 0; + let mut x218: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x217, &mut x218, 0x0, x216, x213); + let mut x219: u64 = 0; + let mut x220: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x219, &mut x220, x218, x214, x211); + let mut x221: u64 = 0; + let mut x222: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x221, &mut x222, x220, x212, x209); + let mut x223: u64 = 0; + let mut x224: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x223, &mut x224, x222, x210, x207); + let mut x225: u64 = 0; + let mut x226: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x225, &mut x226, x224, x208, x205); + let mut x227: u64 = 0; + let mut x228: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x227, &mut x228, 0x0, x195, x215); + let mut x229: u64 = 0; + let mut x230: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x229, &mut x230, x228, x197, x217); + let mut x231: u64 = 0; + let mut x232: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x231, &mut x232, x230, x199, x219); + let mut x233: u64 = 0; + let mut x234: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x233, &mut x234, x232, x201, x221); + let mut x235: u64 = 0; + let mut x236: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x235, &mut x236, x234, x203, x223); + let mut x237: u64 = 0; + let mut x238: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x237, + &mut x238, + x236, + (((x204 as u64) + ((x168 as u64) + ((x156 as u64) + x136))) + ((x192 as u64) + x172)), + x225, + ); + let mut x239: u64 = 0; + let mut x240: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x239, &mut x240, x227, 0x5cfedd2a5cb5bb93); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x241, &mut x242, x239, 0x8cb91e82a3386d28); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x243, &mut x244, x239, 0xf5d6f7e50e641df); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x245, &mut x246, x239, 0x152f7109ed5456b3); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x247, &mut x248, x239, 0x1f166e6cac0425a7); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x249, &mut x250, x239, 0xcf3ab6af6b7fc310); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x251, &mut x252, x239, 0x3b883202e9046565); + let mut x253: u64 = 0; + let mut x254: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x253, &mut x254, 0x0, x252, x249); + let mut x255: u64 = 0; + let mut x256: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x255, &mut x256, x254, x250, x247); + let mut x257: u64 = 0; + let mut x258: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x257, &mut x258, x256, x248, x245); + let mut x259: u64 = 0; + let mut x260: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x259, &mut x260, x258, x246, x243); + let mut x261: u64 = 0; + let mut x262: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x261, &mut x262, x260, x244, x241); + let mut x263: u64 = 0; + let mut x264: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x263, &mut x264, 0x0, x227, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x265, &mut x266, x264, x229, x253); + let mut x267: u64 = 0; + let mut x268: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x267, &mut x268, x266, x231, x255); + let mut x269: u64 = 0; + let mut x270: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x269, &mut x270, x268, x233, x257); + let mut x271: u64 = 0; + let mut x272: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x271, &mut x272, x270, x235, x259); + let mut x273: u64 = 0; + let mut x274: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x273, &mut x274, x272, x237, x261); + let mut x275: u64 = 0; + let mut x276: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x275, &mut x276, x4, 0xce8941a614e97c2); + let mut x277: u64 = 0; + let mut x278: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x277, &mut x278, x4, 0x8f886dc965165fdb); + let mut x279: u64 = 0; + let mut x280: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x279, &mut x280, x4, 0x574a74cb52d748ff); + let mut x281: u64 = 0; + let mut x282: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x281, &mut x282, x4, 0x2a927e3b9802688a); + let mut x283: u64 = 0; + let mut x284: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x283, &mut x284, x4, 0x37264e202f2b6b6e); + let mut x285: u64 = 0; + let mut x286: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x285, &mut x286, x4, 0xac4ed3a2de771c8e); + let mut x287: u64 = 0; + let mut x288: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x287, &mut x288, 0x0, x286, x283); + let mut x289: u64 = 0; + let mut x290: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x289, &mut x290, x288, x284, x281); + let mut x291: u64 = 0; + let mut x292: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x291, &mut x292, x290, x282, x279); + let mut x293: u64 = 0; + let mut x294: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x293, &mut x294, x292, x280, x277); + let mut x295: u64 = 0; + let mut x296: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x295, &mut x296, x294, x278, x275); + let mut x297: u64 = 0; + let mut x298: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x297, &mut x298, 0x0, x265, x285); + let mut x299: u64 = 0; + let mut x300: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x299, &mut x300, x298, x267, x287); + let mut x301: u64 = 0; + let mut x302: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x301, &mut x302, x300, x269, x289); + let mut x303: u64 = 0; + let mut x304: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x303, &mut x304, x302, x271, x291); + let mut x305: u64 = 0; + let mut x306: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x305, &mut x306, x304, x273, x293); + let mut x307: u64 = 0; + let mut x308: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x307, + &mut x308, + x306, + (((x274 as u64) + ((x238 as u64) + ((x226 as u64) + x206))) + ((x262 as u64) + x242)), + x295, + ); + let mut x309: u64 = 0; + let mut x310: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x309, &mut x310, x297, 0x5cfedd2a5cb5bb93); + let mut x311: u64 = 0; + let mut x312: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x311, &mut x312, x309, 0x8cb91e82a3386d28); + let mut x313: u64 = 0; + let mut x314: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x313, &mut x314, x309, 0xf5d6f7e50e641df); + let mut x315: u64 = 0; + let mut x316: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x315, &mut x316, x309, 0x152f7109ed5456b3); + let mut x317: u64 = 0; + let mut x318: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x317, &mut x318, x309, 0x1f166e6cac0425a7); + let mut x319: u64 = 0; + let mut x320: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x319, &mut x320, x309, 0xcf3ab6af6b7fc310); + let mut x321: u64 = 0; + let mut x322: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x321, &mut x322, x309, 0x3b883202e9046565); + let mut x323: u64 = 0; + let mut x324: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x323, &mut x324, 0x0, x322, x319); + let mut x325: u64 = 0; + let mut x326: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x325, &mut x326, x324, x320, x317); + let mut x327: u64 = 0; + let mut x328: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x327, &mut x328, x326, x318, x315); + let mut x329: u64 = 0; + let mut x330: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x329, &mut x330, x328, x316, x313); + let mut x331: u64 = 0; + let mut x332: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x331, &mut x332, x330, x314, x311); + let mut x333: u64 = 0; + let mut x334: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x333, &mut x334, 0x0, x297, x321); + let mut x335: u64 = 0; + let mut x336: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x335, &mut x336, x334, x299, x323); + let mut x337: u64 = 0; + let mut x338: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x337, &mut x338, x336, x301, x325); + let mut x339: u64 = 0; + let mut x340: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x339, &mut x340, x338, x303, x327); + let mut x341: u64 = 0; + let mut x342: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x341, &mut x342, x340, x305, x329); + let mut x343: u64 = 0; + let mut x344: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x343, &mut x344, x342, x307, x331); + let mut x345: u64 = 0; + let mut x346: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x345, &mut x346, x5, 0xce8941a614e97c2); + let mut x347: u64 = 0; + let mut x348: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x347, &mut x348, x5, 0x8f886dc965165fdb); + let mut x349: u64 = 0; + let mut x350: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x349, &mut x350, x5, 0x574a74cb52d748ff); + let mut x351: u64 = 0; + let mut x352: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x351, &mut x352, x5, 0x2a927e3b9802688a); + let mut x353: u64 = 0; + let mut x354: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x353, &mut x354, x5, 0x37264e202f2b6b6e); + let mut x355: u64 = 0; + let mut x356: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x355, &mut x356, x5, 0xac4ed3a2de771c8e); + let mut x357: u64 = 0; + let mut x358: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x357, &mut x358, 0x0, x356, x353); + let mut x359: u64 = 0; + let mut x360: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x359, &mut x360, x358, x354, x351); + let mut x361: u64 = 0; + let mut x362: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x361, &mut x362, x360, x352, x349); + let mut x363: u64 = 0; + let mut x364: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x363, &mut x364, x362, x350, x347); + let mut x365: u64 = 0; + let mut x366: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x365, &mut x366, x364, x348, x345); + let mut x367: u64 = 0; + let mut x368: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x367, &mut x368, 0x0, x335, x355); + let mut x369: u64 = 0; + let mut x370: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x369, &mut x370, x368, x337, x357); + let mut x371: u64 = 0; + let mut x372: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x371, &mut x372, x370, x339, x359); + let mut x373: u64 = 0; + let mut x374: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x373, &mut x374, x372, x341, x361); + let mut x375: u64 = 0; + let mut x376: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x375, &mut x376, x374, x343, x363); + let mut x377: u64 = 0; + let mut x378: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64( + &mut x377, + &mut x378, + x376, + (((x344 as u64) + ((x308 as u64) + ((x296 as u64) + x276))) + ((x332 as u64) + x312)), + x365, + ); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x379, &mut x380, x367, 0x5cfedd2a5cb5bb93); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x381, &mut x382, x379, 0x8cb91e82a3386d28); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x383, &mut x384, x379, 0xf5d6f7e50e641df); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x385, &mut x386, x379, 0x152f7109ed5456b3); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x387, &mut x388, x379, 0x1f166e6cac0425a7); + let mut x389: u64 = 0; + let mut x390: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x389, &mut x390, x379, 0xcf3ab6af6b7fc310); + let mut x391: u64 = 0; + let mut x392: u64 = 0; + fiat_bp384_scalar_mulx_u64(&mut x391, &mut x392, x379, 0x3b883202e9046565); + let mut x393: u64 = 0; + let mut x394: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x393, &mut x394, 0x0, x392, x389); + let mut x395: u64 = 0; + let mut x396: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x395, &mut x396, x394, x390, x387); + let mut x397: u64 = 0; + let mut x398: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x397, &mut x398, x396, x388, x385); + let mut x399: u64 = 0; + let mut x400: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x399, &mut x400, x398, x386, x383); + let mut x401: u64 = 0; + let mut x402: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x401, &mut x402, x400, x384, x381); + let mut x403: u64 = 0; + let mut x404: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x403, &mut x404, 0x0, x367, x391); + let mut x405: u64 = 0; + let mut x406: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x405, &mut x406, x404, x369, x393); + let mut x407: u64 = 0; + let mut x408: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x407, &mut x408, x406, x371, x395); + let mut x409: u64 = 0; + let mut x410: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x409, &mut x410, x408, x373, x397); + let mut x411: u64 = 0; + let mut x412: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x411, &mut x412, x410, x375, x399); + let mut x413: u64 = 0; + let mut x414: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x413, &mut x414, x412, x377, x401); + let x415: u64 = + (((x414 as u64) + ((x378 as u64) + ((x366 as u64) + x346))) + ((x402 as u64) + x382)); + let mut x416: u64 = 0; + let mut x417: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x416, &mut x417, 0x0, x405, 0x3b883202e9046565); + let mut x418: u64 = 0; + let mut x419: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x418, &mut x419, x417, x407, 0xcf3ab6af6b7fc310); + let mut x420: u64 = 0; + let mut x421: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x420, &mut x421, x419, x409, 0x1f166e6cac0425a7); + let mut x422: u64 = 0; + let mut x423: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x422, &mut x423, x421, x411, 0x152f7109ed5456b3); + let mut x424: u64 = 0; + let mut x425: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x424, &mut x425, x423, x413, 0xf5d6f7e50e641df); + let mut x426: u64 = 0; + let mut x427: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x426, &mut x427, x425, x415, 0x8cb91e82a3386d28); + let mut x428: u64 = 0; + let mut x429: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x428, &mut x429, x427, (0x0 as u64), (0x0 as u64)); + let mut x430: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x430, x429, x416, x405); + let mut x431: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x431, x429, x418, x407); + let mut x432: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x432, x429, x420, x409); + let mut x433: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x433, x429, x422, x411); + let mut x434: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x434, x429, x424, x413); + let mut x435: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x435, x429, x426, x415); + out1[0] = x430; + out1[1] = x431; + out1[2] = x432; + out1[3] = x433; + out1[4] = x434; + out1[5] = x435; +} +/// The function fiat_bp384_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub const fn fiat_bp384_scalar_nonzero(out1: &mut u64, arg1: &[u64; 6]) { + let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | (arg1[5])))))); + *out1 = x1; +} +/// The function fiat_bp384_scalar_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_selectznz( + out1: &mut [u64; 6], + arg1: fiat_bp384_scalar_u1, + arg2: &[u64; 6], + arg3: &[u64; 6], +) { + let mut x1: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; +} +/// The function fiat_bp384_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..47] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub const fn fiat_bp384_scalar_to_bytes(out1: &mut [u8; 48], arg1: &[u64; 6]) { + let x1: u64 = (arg1[5]); + let x2: u64 = (arg1[4]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[2]); + let x5: u64 = (arg1[1]); + let x6: u64 = (arg1[0]); + let x7: u8 = ((x6 & (0xff as u64)) as u8); + let x8: u64 = (x6 >> 8); + let x9: u8 = ((x8 & (0xff as u64)) as u8); + let x10: u64 = (x8 >> 8); + let x11: u8 = ((x10 & (0xff as u64)) as u8); + let x12: u64 = (x10 >> 8); + let x13: u8 = ((x12 & (0xff as u64)) as u8); + let x14: u64 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u64)) as u8); + let x16: u64 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u64)) as u8); + let x18: u64 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u64)) as u8); + let x20: u8 = ((x18 >> 8) as u8); + let x21: u8 = ((x5 & (0xff as u64)) as u8); + let x22: u64 = (x5 >> 8); + let x23: u8 = ((x22 & (0xff as u64)) as u8); + let x24: u64 = (x22 >> 8); + let x25: u8 = ((x24 & (0xff as u64)) as u8); + let x26: u64 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u64)) as u8); + let x28: u64 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u64)) as u8); + let x30: u64 = (x28 >> 8); + let x31: u8 = ((x30 & (0xff as u64)) as u8); + let x32: u64 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u64)) as u8); + let x34: u8 = ((x32 >> 8) as u8); + let x35: u8 = ((x4 & (0xff as u64)) as u8); + let x36: u64 = (x4 >> 8); + let x37: u8 = ((x36 & (0xff as u64)) as u8); + let x38: u64 = (x36 >> 8); + let x39: u8 = ((x38 & (0xff as u64)) as u8); + let x40: u64 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u64)) as u8); + let x42: u64 = (x40 >> 8); + let x43: u8 = ((x42 & (0xff as u64)) as u8); + let x44: u64 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u64)) as u8); + let x46: u64 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u64)) as u8); + let x48: u8 = ((x46 >> 8) as u8); + let x49: u8 = ((x3 & (0xff as u64)) as u8); + let x50: u64 = (x3 >> 8); + let x51: u8 = ((x50 & (0xff as u64)) as u8); + let x52: u64 = (x50 >> 8); + let x53: u8 = ((x52 & (0xff as u64)) as u8); + let x54: u64 = (x52 >> 8); + let x55: u8 = ((x54 & (0xff as u64)) as u8); + let x56: u64 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u64)) as u8); + let x58: u64 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u64)) as u8); + let x60: u64 = (x58 >> 8); + let x61: u8 = ((x60 & (0xff as u64)) as u8); + let x62: u8 = ((x60 >> 8) as u8); + let x63: u8 = ((x2 & (0xff as u64)) as u8); + let x64: u64 = (x2 >> 8); + let x65: u8 = ((x64 & (0xff as u64)) as u8); + let x66: u64 = (x64 >> 8); + let x67: u8 = ((x66 & (0xff as u64)) as u8); + let x68: u64 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u64)) as u8); + let x70: u64 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u64)) as u8); + let x72: u64 = (x70 >> 8); + let x73: u8 = ((x72 & (0xff as u64)) as u8); + let x74: u64 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u64)) as u8); + let x76: u8 = ((x74 >> 8) as u8); + let x77: u8 = ((x1 & (0xff as u64)) as u8); + let x78: u64 = (x1 >> 8); + let x79: u8 = ((x78 & (0xff as u64)) as u8); + let x80: u64 = (x78 >> 8); + let x81: u8 = ((x80 & (0xff as u64)) as u8); + let x82: u64 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u64)) as u8); + let x84: u64 = (x82 >> 8); + let x85: u8 = ((x84 & (0xff as u64)) as u8); + let x86: u64 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u64)) as u8); + let x88: u64 = (x86 >> 8); + let x89: u8 = ((x88 & (0xff as u64)) as u8); + let x90: u8 = ((x88 >> 8) as u8); + out1[0] = x7; + out1[1] = x9; + out1[2] = x11; + out1[3] = x13; + out1[4] = x15; + out1[5] = x17; + out1[6] = x19; + out1[7] = x20; + out1[8] = x21; + out1[9] = x23; + out1[10] = x25; + out1[11] = x27; + out1[12] = x29; + out1[13] = x31; + out1[14] = x33; + out1[15] = x34; + out1[16] = x35; + out1[17] = x37; + out1[18] = x39; + out1[19] = x41; + out1[20] = x43; + out1[21] = x45; + out1[22] = x47; + out1[23] = x48; + out1[24] = x49; + out1[25] = x51; + out1[26] = x53; + out1[27] = x55; + out1[28] = x57; + out1[29] = x59; + out1[30] = x61; + out1[31] = x62; + out1[32] = x63; + out1[33] = x65; + out1[34] = x67; + out1[35] = x69; + out1[36] = x71; + out1[37] = x73; + out1[38] = x75; + out1[39] = x76; + out1[40] = x77; + out1[41] = x79; + out1[42] = x81; + out1[43] = x83; + out1[44] = x85; + out1[45] = x87; + out1[46] = x89; + out1[47] = x90; +} +/// The function fiat_bp384_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_from_bytes(out1: &mut [u64; 6], arg1: &[u8; 48]) { + let x1: u64 = (((arg1[47]) as u64) << 56); + let x2: u64 = (((arg1[46]) as u64) << 48); + let x3: u64 = (((arg1[45]) as u64) << 40); + let x4: u64 = (((arg1[44]) as u64) << 32); + let x5: u64 = (((arg1[43]) as u64) << 24); + let x6: u64 = (((arg1[42]) as u64) << 16); + let x7: u64 = (((arg1[41]) as u64) << 8); + let x8: u8 = (arg1[40]); + let x9: u64 = (((arg1[39]) as u64) << 56); + let x10: u64 = (((arg1[38]) as u64) << 48); + let x11: u64 = (((arg1[37]) as u64) << 40); + let x12: u64 = (((arg1[36]) as u64) << 32); + let x13: u64 = (((arg1[35]) as u64) << 24); + let x14: u64 = (((arg1[34]) as u64) << 16); + let x15: u64 = (((arg1[33]) as u64) << 8); + let x16: u8 = (arg1[32]); + let x17: u64 = (((arg1[31]) as u64) << 56); + let x18: u64 = (((arg1[30]) as u64) << 48); + let x19: u64 = (((arg1[29]) as u64) << 40); + let x20: u64 = (((arg1[28]) as u64) << 32); + let x21: u64 = (((arg1[27]) as u64) << 24); + let x22: u64 = (((arg1[26]) as u64) << 16); + let x23: u64 = (((arg1[25]) as u64) << 8); + let x24: u8 = (arg1[24]); + let x25: u64 = (((arg1[23]) as u64) << 56); + let x26: u64 = (((arg1[22]) as u64) << 48); + let x27: u64 = (((arg1[21]) as u64) << 40); + let x28: u64 = (((arg1[20]) as u64) << 32); + let x29: u64 = (((arg1[19]) as u64) << 24); + let x30: u64 = (((arg1[18]) as u64) << 16); + let x31: u64 = (((arg1[17]) as u64) << 8); + let x32: u8 = (arg1[16]); + let x33: u64 = (((arg1[15]) as u64) << 56); + let x34: u64 = (((arg1[14]) as u64) << 48); + let x35: u64 = (((arg1[13]) as u64) << 40); + let x36: u64 = (((arg1[12]) as u64) << 32); + let x37: u64 = (((arg1[11]) as u64) << 24); + let x38: u64 = (((arg1[10]) as u64) << 16); + let x39: u64 = (((arg1[9]) as u64) << 8); + let x40: u8 = (arg1[8]); + let x41: u64 = (((arg1[7]) as u64) << 56); + let x42: u64 = (((arg1[6]) as u64) << 48); + let x43: u64 = (((arg1[5]) as u64) << 40); + let x44: u64 = (((arg1[4]) as u64) << 32); + let x45: u64 = (((arg1[3]) as u64) << 24); + let x46: u64 = (((arg1[2]) as u64) << 16); + let x47: u64 = (((arg1[1]) as u64) << 8); + let x48: u8 = (arg1[0]); + let x49: u64 = (x47 + (x48 as u64)); + let x50: u64 = (x46 + x49); + let x51: u64 = (x45 + x50); + let x52: u64 = (x44 + x51); + let x53: u64 = (x43 + x52); + let x54: u64 = (x42 + x53); + let x55: u64 = (x41 + x54); + let x56: u64 = (x39 + (x40 as u64)); + let x57: u64 = (x38 + x56); + let x58: u64 = (x37 + x57); + let x59: u64 = (x36 + x58); + let x60: u64 = (x35 + x59); + let x61: u64 = (x34 + x60); + let x62: u64 = (x33 + x61); + let x63: u64 = (x31 + (x32 as u64)); + let x64: u64 = (x30 + x63); + let x65: u64 = (x29 + x64); + let x66: u64 = (x28 + x65); + let x67: u64 = (x27 + x66); + let x68: u64 = (x26 + x67); + let x69: u64 = (x25 + x68); + let x70: u64 = (x23 + (x24 as u64)); + let x71: u64 = (x22 + x70); + let x72: u64 = (x21 + x71); + let x73: u64 = (x20 + x72); + let x74: u64 = (x19 + x73); + let x75: u64 = (x18 + x74); + let x76: u64 = (x17 + x75); + let x77: u64 = (x15 + (x16 as u64)); + let x78: u64 = (x14 + x77); + let x79: u64 = (x13 + x78); + let x80: u64 = (x12 + x79); + let x81: u64 = (x11 + x80); + let x82: u64 = (x10 + x81); + let x83: u64 = (x9 + x82); + let x84: u64 = (x7 + (x8 as u64)); + let x85: u64 = (x6 + x84); + let x86: u64 = (x5 + x85); + let x87: u64 = (x4 + x86); + let x88: u64 = (x3 + x87); + let x89: u64 = (x2 + x88); + let x90: u64 = (x1 + x89); + out1[0] = x55; + out1[1] = x62; + out1[2] = x69; + out1[3] = x76; + out1[4] = x83; + out1[5] = x90; +} +/// The function fiat_bp384_scalar_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub const fn fiat_bp384_scalar_set_one( + out1: &mut fiat_bp384_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; + out1[0] = 0xc477cdfd16fb9a9b; + out1[1] = 0x30c5495094803cef; + out1[2] = 0xe0e9919353fbda58; + out1[3] = 0xead08ef612aba94c; + out1[4] = 0xf0a29081af19be20; + out1[5] = 0x7346e17d5cc792d7; +} +/// The function fiat_bp384_scalar_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_msat(out1: &mut [u64; 7]) { + out1[0] = 0x3b883202e9046565; + out1[1] = 0xcf3ab6af6b7fc310; + out1[2] = 0x1f166e6cac0425a7; + out1[3] = 0x152f7109ed5456b3; + out1[4] = 0xf5d6f7e50e641df; + out1[5] = 0x8cb91e82a3386d28; + out1[6] = (0x0 as u64); +} +/// The function fiat_bp384_scalar_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_divstep( + out1: &mut u64, + out2: &mut [u64; 7], + out3: &mut [u64; 7], + out4: &mut [u64; 6], + out5: &mut [u64; 6], + arg1: u64, + arg2: &[u64; 7], + arg3: &[u64; 7], + arg4: &[u64; 6], + arg5: &[u64; 6], +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); + let x3: fiat_bp384_scalar_u1 = (((x1 >> 63) as fiat_bp384_scalar_u1) + & (((arg3[0]) & (0x1 as u64)) as fiat_bp384_scalar_u1)); + let mut x4: u64 = 0; + let mut x5: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); + let mut x6: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x6, x3, arg1, x4); + let mut x7: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u64 = 0; + let mut x15: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x14, &mut x15, 0x0, (0x1 as u64), (!(arg2[0]))); + let mut x16: u64 = 0; + let mut x17: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x16, &mut x17, x15, (0x0 as u64), (!(arg2[1]))); + let mut x18: u64 = 0; + let mut x19: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[2]))); + let mut x20: u64 = 0; + let mut x21: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[3]))); + let mut x22: u64 = 0; + let mut x23: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[4]))); + let mut x24: u64 = 0; + let mut x25: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[5]))); + let mut x26: u64 = 0; + let mut x27: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[6]))); + let mut x28: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x28, x3, (arg3[0]), x14); + let mut x29: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x29, x3, (arg3[1]), x16); + let mut x30: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x30, x3, (arg3[2]), x18); + let mut x31: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x31, x3, (arg3[3]), x20); + let mut x32: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x32, x3, (arg3[4]), x22); + let mut x33: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x33, x3, (arg3[5]), x24); + let mut x34: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x34, x3, (arg3[6]), x26); + let mut x35: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x35, x3, (arg4[0]), (arg5[0])); + let mut x36: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x36, x3, (arg4[1]), (arg5[1])); + let mut x37: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x37, x3, (arg4[2]), (arg5[2])); + let mut x38: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x38, x3, (arg4[3]), (arg5[3])); + let mut x39: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x39, x3, (arg4[4]), (arg5[4])); + let mut x40: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x40, x3, (arg4[5]), (arg5[5])); + let mut x41: u64 = 0; + let mut x42: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x41, &mut x42, 0x0, x35, x35); + let mut x43: u64 = 0; + let mut x44: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x43, &mut x44, x42, x36, x36); + let mut x45: u64 = 0; + let mut x46: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x45, &mut x46, x44, x37, x37); + let mut x47: u64 = 0; + let mut x48: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x47, &mut x48, x46, x38, x38); + let mut x49: u64 = 0; + let mut x50: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x49, &mut x50, x48, x39, x39); + let mut x51: u64 = 0; + let mut x52: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x51, &mut x52, x50, x40, x40); + let mut x53: u64 = 0; + let mut x54: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x53, &mut x54, 0x0, x41, 0x3b883202e9046565); + let mut x55: u64 = 0; + let mut x56: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x55, &mut x56, x54, x43, 0xcf3ab6af6b7fc310); + let mut x57: u64 = 0; + let mut x58: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x57, &mut x58, x56, x45, 0x1f166e6cac0425a7); + let mut x59: u64 = 0; + let mut x60: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x59, &mut x60, x58, x47, 0x152f7109ed5456b3); + let mut x61: u64 = 0; + let mut x62: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x61, &mut x62, x60, x49, 0xf5d6f7e50e641df); + let mut x63: u64 = 0; + let mut x64: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x63, &mut x64, x62, x51, 0x8cb91e82a3386d28); + let mut x65: u64 = 0; + let mut x66: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x65, &mut x66, x64, (x52 as u64), (0x0 as u64)); + let x67: u64 = (arg4[5]); + let x68: u64 = (arg4[4]); + let x69: u64 = (arg4[3]); + let x70: u64 = (arg4[2]); + let x71: u64 = (arg4[1]); + let x72: u64 = (arg4[0]); + let mut x73: u64 = 0; + let mut x74: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x73, &mut x74, 0x0, (0x0 as u64), x72); + let mut x75: u64 = 0; + let mut x76: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x75, &mut x76, x74, (0x0 as u64), x71); + let mut x77: u64 = 0; + let mut x78: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x77, &mut x78, x76, (0x0 as u64), x70); + let mut x79: u64 = 0; + let mut x80: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x79, &mut x80, x78, (0x0 as u64), x69); + let mut x81: u64 = 0; + let mut x82: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x81, &mut x82, x80, (0x0 as u64), x68); + let mut x83: u64 = 0; + let mut x84: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x83, &mut x84, x82, (0x0 as u64), x67); + let mut x85: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x85, x84, (0x0 as u64), 0xffffffffffffffff); + let mut x86: u64 = 0; + let mut x87: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x86, &mut x87, 0x0, x73, (x85 & 0x3b883202e9046565)); + let mut x88: u64 = 0; + let mut x89: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x88, &mut x89, x87, x75, (x85 & 0xcf3ab6af6b7fc310)); + let mut x90: u64 = 0; + let mut x91: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x90, &mut x91, x89, x77, (x85 & 0x1f166e6cac0425a7)); + let mut x92: u64 = 0; + let mut x93: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x92, &mut x93, x91, x79, (x85 & 0x152f7109ed5456b3)); + let mut x94: u64 = 0; + let mut x95: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x94, &mut x95, x93, x81, (x85 & 0xf5d6f7e50e641df)); + let mut x96: u64 = 0; + let mut x97: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x96, &mut x97, x95, x83, (x85 & 0x8cb91e82a3386d28)); + let mut x98: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x98, x3, (arg5[0]), x86); + let mut x99: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x99, x3, (arg5[1]), x88); + let mut x100: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x100, x3, (arg5[2]), x90); + let mut x101: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x101, x3, (arg5[3]), x92); + let mut x102: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x102, x3, (arg5[4]), x94); + let mut x103: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x103, x3, (arg5[5]), x96); + let x104: fiat_bp384_scalar_u1 = ((x28 & (0x1 as u64)) as fiat_bp384_scalar_u1); + let mut x105: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x105, x104, (0x0 as u64), x7); + let mut x106: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x106, x104, (0x0 as u64), x8); + let mut x107: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x107, x104, (0x0 as u64), x9); + let mut x108: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x108, x104, (0x0 as u64), x10); + let mut x109: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x109, x104, (0x0 as u64), x11); + let mut x110: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x110, x104, (0x0 as u64), x12); + let mut x111: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x111, x104, (0x0 as u64), x13); + let mut x112: u64 = 0; + let mut x113: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x112, &mut x113, 0x0, x28, x105); + let mut x114: u64 = 0; + let mut x115: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x114, &mut x115, x113, x29, x106); + let mut x116: u64 = 0; + let mut x117: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x116, &mut x117, x115, x30, x107); + let mut x118: u64 = 0; + let mut x119: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x118, &mut x119, x117, x31, x108); + let mut x120: u64 = 0; + let mut x121: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x120, &mut x121, x119, x32, x109); + let mut x122: u64 = 0; + let mut x123: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x122, &mut x123, x121, x33, x110); + let mut x124: u64 = 0; + let mut x125: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x34, x111); + let mut x126: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x126, x104, (0x0 as u64), x35); + let mut x127: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x127, x104, (0x0 as u64), x36); + let mut x128: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x128, x104, (0x0 as u64), x37); + let mut x129: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x129, x104, (0x0 as u64), x38); + let mut x130: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x130, x104, (0x0 as u64), x39); + let mut x131: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x131, x104, (0x0 as u64), x40); + let mut x132: u64 = 0; + let mut x133: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x132, &mut x133, 0x0, x98, x126); + let mut x134: u64 = 0; + let mut x135: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x134, &mut x135, x133, x99, x127); + let mut x136: u64 = 0; + let mut x137: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x136, &mut x137, x135, x100, x128); + let mut x138: u64 = 0; + let mut x139: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x138, &mut x139, x137, x101, x129); + let mut x140: u64 = 0; + let mut x141: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x140, &mut x141, x139, x102, x130); + let mut x142: u64 = 0; + let mut x143: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x142, &mut x143, x141, x103, x131); + let mut x144: u64 = 0; + let mut x145: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x144, &mut x145, 0x0, x132, 0x3b883202e9046565); + let mut x146: u64 = 0; + let mut x147: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x146, &mut x147, x145, x134, 0xcf3ab6af6b7fc310); + let mut x148: u64 = 0; + let mut x149: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x148, &mut x149, x147, x136, 0x1f166e6cac0425a7); + let mut x150: u64 = 0; + let mut x151: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x150, &mut x151, x149, x138, 0x152f7109ed5456b3); + let mut x152: u64 = 0; + let mut x153: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x152, &mut x153, x151, x140, 0xf5d6f7e50e641df); + let mut x154: u64 = 0; + let mut x155: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x154, &mut x155, x153, x142, 0x8cb91e82a3386d28); + let mut x156: u64 = 0; + let mut x157: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_subborrowx_u64(&mut x156, &mut x157, x155, (x143 as u64), (0x0 as u64)); + let mut x158: u64 = 0; + let mut x159: fiat_bp384_scalar_u1 = 0; + fiat_bp384_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x6, (0x1 as u64)); + let x160: u64 = ((x112 >> 1) | ((x114 << 63) & 0xffffffffffffffff)); + let x161: u64 = ((x114 >> 1) | ((x116 << 63) & 0xffffffffffffffff)); + let x162: u64 = ((x116 >> 1) | ((x118 << 63) & 0xffffffffffffffff)); + let x163: u64 = ((x118 >> 1) | ((x120 << 63) & 0xffffffffffffffff)); + let x164: u64 = ((x120 >> 1) | ((x122 << 63) & 0xffffffffffffffff)); + let x165: u64 = ((x122 >> 1) | ((x124 << 63) & 0xffffffffffffffff)); + let x166: u64 = ((x124 & 0x8000000000000000) | (x124 >> 1)); + let mut x167: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x167, x66, x53, x41); + let mut x168: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x168, x66, x55, x43); + let mut x169: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x169, x66, x57, x45); + let mut x170: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x170, x66, x59, x47); + let mut x171: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x171, x66, x61, x49); + let mut x172: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x172, x66, x63, x51); + let mut x173: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x173, x157, x144, x132); + let mut x174: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x174, x157, x146, x134); + let mut x175: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x175, x157, x148, x136); + let mut x176: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x176, x157, x150, x138); + let mut x177: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x177, x157, x152, x140); + let mut x178: u64 = 0; + fiat_bp384_scalar_cmovznz_u64(&mut x178, x157, x154, x142); + *out1 = x158; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out3[0] = x160; + out3[1] = x161; + out3[2] = x162; + out3[3] = x163; + out3[4] = x164; + out3[5] = x165; + out3[6] = x166; + out4[0] = x167; + out4[1] = x168; + out4[2] = x169; + out4[3] = x170; + out4[4] = x171; + out4[5] = x172; + out5[0] = x173; + out5[1] = x174; + out5[2] = x175; + out5[3] = x176; + out5[4] = x177; + out5[5] = x178; +} +/// The function fiat_bp384_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub const fn fiat_bp384_scalar_divstep_precomp(out1: &mut [u64; 6]) { + out1[0] = 0x26e1306bb5e6aea2; + out1[1] = 0xfe4a7c4ac99a457c; + out1[2] = 0xbe760ac84f6e75c5; + out1[3] = 0x98ce8ae5cb3165d9; + out1[4] = 0x24edee868c0bdd1; + out1[5] = 0x5077d4c3187624d8; +} diff --git a/bp512/src/lib.rs b/bp512/src/lib.rs new file mode 100644 index 000000000..d9cbfe58a --- /dev/null +++ b/bp512/src/lib.rs @@ -0,0 +1,52 @@ +#![no_std] +#![cfg_attr(docsrs, feature(doc_auto_cfg))] +#![doc = include_str!("../README.md")] +#![doc( + html_logo_url = "https://raw.githubusercontent.com/RustCrypto/meta/master/logo.svg", + html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/meta/master/logo.svg" +)] +#![forbid(unsafe_code)] +#![warn( + clippy::mod_module_files, + clippy::unwrap_used, + missing_docs, + rust_2018_idioms, + unused_lifetimes, + unused_qualifications +)] + +pub mod r1; +pub mod t1; + +#[cfg(feature = "arithmetic")] +mod arithmetic; + +pub use crate::{r1::BrainpoolP512r1, t1::BrainpoolP512t1}; +pub use elliptic_curve::{ + self, + bigint::{ArrayEncoding, U512}, +}; + +#[cfg(feature = "arithmetic")] +pub use crate::arithmetic::scalar::Scalar; + +#[cfg(feature = "pkcs8")] +pub use elliptic_curve::pkcs8; + +#[cfg(feature = "arithmetic")] +pub(crate) use crate::arithmetic::field::FieldElement; +use elliptic_curve::array::{Array, typenum::U64}; + +/// Byte representation of a base/scalar field element of a given curve. +pub type FieldBytes = Array; + +const ORDER_HEX: &str = "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069"; +const ORDER: U512 = U512::from_be_hex(ORDER_HEX); + +fn decode_field_bytes(field_bytes: &FieldBytes) -> U512 { + U512::from_be_byte_array(*field_bytes) +} + +fn encode_field_bytes(uint: &U512) -> FieldBytes { + uint.to_be_byte_array() +} diff --git a/bp512/src/r1.rs b/bp512/src/r1.rs new file mode 100644 index 000000000..6242d80e4 --- /dev/null +++ b/bp512/src/r1.rs @@ -0,0 +1,70 @@ +//! brainpoolP384r1 elliptic curve: verifiably pseudo-random variant + +#[cfg(feature = "ecdsa")] +pub mod ecdsa; + +#[cfg(feature = "arithmetic")] +mod arithmetic; + +#[cfg(feature = "arithmetic")] +pub use { + self::arithmetic::{AffinePoint, ProjectivePoint}, + crate::Scalar, +}; + +use crate::ORDER; +use elliptic_curve::{FieldBytesEncoding, bigint::U512, consts::U64}; + +#[cfg(feature = "pkcs8")] +use crate::pkcs8; + +/// brainpoolP384r1 elliptic curve: verifiably pseudo-random variant +#[derive(Copy, Clone, Debug, Default, Eq, PartialEq, PartialOrd, Ord)] +pub struct BrainpoolP512r1; + +impl elliptic_curve::Curve for BrainpoolP512r1 { + /// 64-byte serialized field elements. + type FieldBytesSize = U64; + + /// 512-bit field modulus. + type Uint = U512; + + /// Curve order. + const ORDER: U512 = ORDER; +} + +impl elliptic_curve::PrimeCurve for BrainpoolP512r1 {} + +impl elliptic_curve::point::PointCompression for BrainpoolP512r1 { + const COMPRESS_POINTS: bool = false; +} + +#[cfg(feature = "pkcs8")] +impl pkcs8::AssociatedOid for BrainpoolP512r1 { + const OID: pkcs8::ObjectIdentifier = + pkcs8::ObjectIdentifier::new_unwrap("1.3.36.3.3.2.8.1.1.11"); +} + +/// brainpoolP512r1 SEC1 encoded point. +pub type EncodedPoint = elliptic_curve::sec1::EncodedPoint; + +/// brainpoolP512r1 field element serialized as bytes. +/// +/// Byte array containing a serialized field element value (base field or scalar). +pub type FieldBytes = elliptic_curve::FieldBytes; + +impl FieldBytesEncoding for U512 { + fn decode_field_bytes(field_bytes: &FieldBytes) -> Self { + crate::decode_field_bytes(field_bytes) + } + + fn encode_field_bytes(&self) -> FieldBytes { + crate::encode_field_bytes(self) + } +} + +/// brainpoolP512r1 secret key. +pub type SecretKey = elliptic_curve::SecretKey; + +#[cfg(not(feature = "arithmetic"))] +impl elliptic_curve::sec1::ValidatePublicKey for BrainpoolP512r1 {} diff --git a/bp512/src/r1/arithmetic.rs b/bp512/src/r1/arithmetic.rs new file mode 100644 index 000000000..9ff9e7d64 --- /dev/null +++ b/bp512/src/r1/arithmetic.rs @@ -0,0 +1,69 @@ +//! brainpoolP384r1 curve arithmetic implementation. + +use super::BrainpoolP512r1; +use crate::{FieldElement, Scalar}; +use elliptic_curve::{CurveArithmetic, PrimeCurveArithmetic}; +use primeorder::{PrimeCurveParams, point_arithmetic}; + +/// Elliptic curve point in affine coordinates. +pub type AffinePoint = primeorder::AffinePoint; + +/// Elliptic curve point in projective coordinates. +pub type ProjectivePoint = primeorder::ProjectivePoint; + +/// Primitive scalar type. +pub type ScalarPrimitive = elliptic_curve::ScalarPrimitive; + +impl CurveArithmetic for BrainpoolP512r1 { + type AffinePoint = AffinePoint; + type ProjectivePoint = ProjectivePoint; + type Scalar = Scalar; +} + +impl PrimeCurveArithmetic for BrainpoolP512r1 { + type CurveGroup = ProjectivePoint; +} + +impl PrimeCurveParams for BrainpoolP512r1 { + type FieldElement = FieldElement; + type PointArithmetic = point_arithmetic::EquationAIsGeneric; + + const EQUATION_A: FieldElement = FieldElement::from_hex( + "7830a3318b603b89e2327145ac234cc594cbdd8d3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94ca", + ); + const EQUATION_B: FieldElement = FieldElement::from_hex( + "3df91610a83441caea9863bc2ded5d5aa8253aa10a2ef1c98b9ac8b57f1117a72bf2c7b9e7c1ac4d77fc94cadc083e67984050b75ebae5dd2809bd638016f723", + ); + const GENERATOR: (FieldElement, FieldElement) = ( + FieldElement::from_hex( + "81aee4bdd82ed9645a21322e9c4c6a9385ed9f70b5d916c1b43b62eef4d0098eff3b1f78e2d0d48d50d1687b93b97d5f7c6d5047406a5e688b352209bcb9f822", + ), + FieldElement::from_hex( + "7dde385d566332ecc0eabfa9cf7822fdf209f70024a57b1aa000c55b881f8111b2dcde494a5f485e5bca4bd88a2763aed1ca2b2fa8f0540678cd1e0f3ad80892", + ), + ); +} + +impl From for Scalar { + fn from(w: ScalarPrimitive) -> Self { + Scalar::from(&w) + } +} + +impl From<&ScalarPrimitive> for Scalar { + fn from(w: &ScalarPrimitive) -> Scalar { + Scalar::from_uint_unchecked(*w.as_uint()) + } +} + +impl From for ScalarPrimitive { + fn from(scalar: Scalar) -> ScalarPrimitive { + ScalarPrimitive::from(&scalar) + } +} + +impl From<&Scalar> for ScalarPrimitive { + fn from(scalar: &Scalar) -> ScalarPrimitive { + ScalarPrimitive::new(scalar.into()).unwrap() + } +} diff --git a/bp512/src/r1/ecdsa.rs b/bp512/src/r1/ecdsa.rs new file mode 100644 index 000000000..257905322 --- /dev/null +++ b/bp512/src/r1/ecdsa.rs @@ -0,0 +1,18 @@ +//! Elliptic Curve Digital Signature Algorithm (ECDSA) + +pub use super::BrainpoolP512r1; + +/// ECDSA/brainpoolP384r1 signature (fixed-size) +pub type Signature = ecdsa::Signature; + +/// ECDSA/brainpoolP384r1 signature (ASN.1 DER encoded) +pub type DerSignature = ecdsa::der::Signature; + +impl ecdsa::EcdsaCurve for BrainpoolP512r1 { + const NORMALIZE_S: bool = false; +} + +#[cfg(feature = "sha512")] +impl ecdsa::hazmat::DigestPrimitive for BrainpoolP512r1 { + type Digest = sha2::Sha512; +} diff --git a/bp512/src/t1.rs b/bp512/src/t1.rs new file mode 100644 index 000000000..9f48de96b --- /dev/null +++ b/bp512/src/t1.rs @@ -0,0 +1,70 @@ +//! brainpoolP384t1 elliptic curve: twisted variant + +#[cfg(feature = "ecdsa")] +pub mod ecdsa; + +#[cfg(feature = "arithmetic")] +mod arithmetic; + +#[cfg(feature = "arithmetic")] +pub use { + self::arithmetic::{AffinePoint, ProjectivePoint}, + crate::Scalar, +}; + +use crate::ORDER; +use elliptic_curve::{FieldBytesEncoding, bigint::U512, consts::U64}; + +#[cfg(feature = "pkcs8")] +use crate::pkcs8; + +/// brainpoolP384t1 elliptic curve: twisted variant +#[derive(Copy, Clone, Debug, Default, Eq, PartialEq, PartialOrd, Ord)] +pub struct BrainpoolP512t1; + +impl elliptic_curve::Curve for BrainpoolP512t1 { + /// 48-byte serialized field elements. + type FieldBytesSize = U64; + + /// 384-bit field modulus. + type Uint = U512; + + /// Curve order. + const ORDER: U512 = ORDER; +} + +impl elliptic_curve::PrimeCurve for BrainpoolP512t1 {} + +impl elliptic_curve::point::PointCompression for BrainpoolP512t1 { + const COMPRESS_POINTS: bool = false; +} + +#[cfg(feature = "pkcs8")] +impl pkcs8::AssociatedOid for BrainpoolP512t1 { + const OID: pkcs8::ObjectIdentifier = + pkcs8::ObjectIdentifier::new_unwrap("1.3.36.3.3.2.8.1.1.12"); +} + +/// brainpoolP512t1 SEC1 encoded point. +pub type EncodedPoint = elliptic_curve::sec1::EncodedPoint; + +/// brainpoolP512t1 field element serialized as bytes. +/// +/// Byte array containing a serialized field element value (base field or scalar). +pub type FieldBytes = elliptic_curve::FieldBytes; + +impl FieldBytesEncoding for U512 { + fn decode_field_bytes(field_bytes: &FieldBytes) -> Self { + crate::decode_field_bytes(field_bytes) + } + + fn encode_field_bytes(&self) -> FieldBytes { + crate::encode_field_bytes(self) + } +} + +/// brainpoolP384t1 secret key. +pub type SecretKey = elliptic_curve::SecretKey; + +#[cfg(not(feature = "arithmetic"))] +impl elliptic_curve::sec1::ValidatePublicKey for BrainpoolP512t1 {} diff --git a/bp512/src/t1/arithmetic.rs b/bp512/src/t1/arithmetic.rs new file mode 100644 index 000000000..8d8e8e1ff --- /dev/null +++ b/bp512/src/t1/arithmetic.rs @@ -0,0 +1,69 @@ +//! brainpoolP384t1 curve arithmetic implementation. + +use super::BrainpoolP512t1; +use crate::{FieldElement, Scalar}; +use elliptic_curve::{CurveArithmetic, PrimeCurveArithmetic}; +use primeorder::{PrimeCurveParams, point_arithmetic}; + +/// Elliptic curve point in affine coordinates. +pub type AffinePoint = primeorder::AffinePoint; + +/// Elliptic curve point in projective coordinates. +pub type ProjectivePoint = primeorder::ProjectivePoint; + +/// Primitive scalar type. +pub type ScalarPrimitive = elliptic_curve::ScalarPrimitive; + +impl CurveArithmetic for BrainpoolP512t1 { + type AffinePoint = AffinePoint; + type ProjectivePoint = ProjectivePoint; + type Scalar = Scalar; +} + +impl PrimeCurveArithmetic for BrainpoolP512t1 { + type CurveGroup = ProjectivePoint; +} + +impl PrimeCurveParams for BrainpoolP512t1 { + type FieldElement = FieldElement; + type PointArithmetic = point_arithmetic::EquationAIsGeneric; + + const EQUATION_A: FieldElement = FieldElement::from_hex( + "8cb91e82a3386d280f5d6f7e50e641df152f7109ed5456b412b1da197fb71123acd3a729901d1a71874700133107ec50", + ); + const EQUATION_B: FieldElement = FieldElement::from_hex( + "7f519eada7bda81bd826dba647910f8c4b9346ed8ccdc64e4b1abd11756dce1d2074aa263b88805ced70355a33b471ee", + ); + const GENERATOR: (FieldElement, FieldElement) = ( + FieldElement::from_hex( + "18de98b02db9a306f2afcd7235f72a819b80ab12ebd653172476fecd462aabffc4ff191b946a5f54d8d0aa2f418808cc", + ), + FieldElement::from_hex( + "25ab056962d30651a114afd2755ad336747f93475b7a1fca3b88f2b6a208ccfe469408584dc2b2912675bf5b9e582928", + ), + ); +} + +impl From for Scalar { + fn from(w: ScalarPrimitive) -> Self { + Scalar::from(&w) + } +} + +impl From<&ScalarPrimitive> for Scalar { + fn from(w: &ScalarPrimitive) -> Scalar { + Scalar::from_uint_unchecked(*w.as_uint()) + } +} + +impl From for ScalarPrimitive { + fn from(scalar: Scalar) -> ScalarPrimitive { + ScalarPrimitive::from(&scalar) + } +} + +impl From<&Scalar> for ScalarPrimitive { + fn from(scalar: &Scalar) -> ScalarPrimitive { + ScalarPrimitive::new(scalar.into()).unwrap() + } +} diff --git a/bp512/src/t1/ecdsa.rs b/bp512/src/t1/ecdsa.rs new file mode 100644 index 000000000..9f9566763 --- /dev/null +++ b/bp512/src/t1/ecdsa.rs @@ -0,0 +1,18 @@ +//! Elliptic Curve Digital Signature Algorithm (ECDSA) + +pub use super::BrainpoolP512t1; + +/// ECDSA/brainpoolP512t1 signature (fixed-size) +pub type Signature = ecdsa::Signature; + +/// ECDSA/brainpoolP512t1 signature (ASN.1 DER encoded) +pub type DerSignature = ecdsa::der::Signature; + +impl ecdsa::EcdsaCurve for BrainpoolP512t1 { + const NORMALIZE_S: bool = false; +} + +#[cfg(feature = "sha512")] +impl ecdsa::hazmat::DigestPrimitive for BrainpoolP512t1 { + type Digest = sha2::Sha512; +} From 0c34ef92ea93427a4543ccb5c69bc8f55535eb63 Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 14:38:22 +0200 Subject: [PATCH 2/7] Cargo.lock/toml: add bp512 --- Cargo.lock | 11 +++++++++++ Cargo.toml | 1 + 2 files changed, 12 insertions(+) diff --git a/Cargo.lock b/Cargo.lock index e55d6a17f..96813298c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -161,6 +161,17 @@ dependencies = [ "sha2", ] +[[package]] +name = "bp512" +version = "0.7.0-pre" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primefield", + "primeorder", + "sha2", +] + [[package]] name = "bumpalo" version = "3.17.0" diff --git a/Cargo.toml b/Cargo.toml index a0ed1a589..ffd0eab6e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,6 +4,7 @@ members = [ "bign256", "bp256", "bp384", + "bp512", "k256", "p192", "p224", From 1fe53fc39bcbfd6d5201eaa7408c5273214a4d8e Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 15:20:11 +0200 Subject: [PATCH 3/7] add fiat-crypto field + scalar --- bp512/src/arithmetic.rs | 2 +- bp512/src/arithmetic/field.rs | 30 +- bp512/src/arithmetic/field/bp512_32.rs | 37897 ++++++++-------- bp512/src/arithmetic/field/bp512_64.rs | 10948 ++--- bp512/src/arithmetic/scalar.rs | 30 +- .../src/arithmetic/scalar/bp512_scalar_32.rs | 19470 ++++++++ .../src/arithmetic/scalar/bp512_scalar_64.rs | 5929 +++ bp512/src/r1.rs | 4 +- bp512/src/r1/arithmetic.rs | 2 +- bp512/src/r1/ecdsa.rs | 4 +- bp512/src/t1.rs | 10 +- bp512/src/t1/arithmetic.rs | 2 +- 12 files changed, 50070 insertions(+), 24258 deletions(-) create mode 100644 bp512/src/arithmetic/scalar/bp512_scalar_32.rs create mode 100644 bp512/src/arithmetic/scalar/bp512_scalar_64.rs diff --git a/bp512/src/arithmetic.rs b/bp512/src/arithmetic.rs index 779926656..fcefd61df 100644 --- a/bp512/src/arithmetic.rs +++ b/bp512/src/arithmetic.rs @@ -1,4 +1,4 @@ -//! Field arithmetic for the brainpoolP256 elliptic curve. +//! Field arithmetic for the brainpoolP512 elliptic curve. pub(crate) mod field; pub(crate) mod scalar; diff --git a/bp512/src/arithmetic/field.rs b/bp512/src/arithmetic/field.rs index 2a47ccfb3..3279436cc 100644 --- a/bp512/src/arithmetic/field.rs +++ b/bp512/src/arithmetic/field.rs @@ -10,8 +10,8 @@ //! Apache License (Version 2.0), and the BSD 1-Clause License; //! users may pick which license to apply. -#[cfg_attr(target_pointer_width = "32", path = "field/bp384_32.rs")] -#[cfg_attr(target_pointer_width = "64", path = "field/bp384_64.rs")] +#[cfg_attr(target_pointer_width = "32", path = "field/bp512_32.rs")] +#[cfg_attr(target_pointer_width = "64", path = "field/bp512_64.rs")] mod field_impl; use self::field_impl::*; @@ -43,19 +43,19 @@ primefield::fiat_field_arithmetic!( FieldElement, FieldBytes, U512, - fiat_bp384_non_montgomery_domain_field_element, - fiat_bp384_montgomery_domain_field_element, - fiat_bp384_from_montgomery, - fiat_bp384_to_montgomery, - fiat_bp384_add, - fiat_bp384_sub, - fiat_bp384_mul, - fiat_bp384_opp, - fiat_bp384_square, - fiat_bp384_divstep_precomp, - fiat_bp384_divstep, - fiat_bp384_msat, - fiat_bp384_selectznz + fiat_bp512_non_montgomery_domain_field_element, + fiat_bp512_montgomery_domain_field_element, + fiat_bp512_from_montgomery, + fiat_bp512_to_montgomery, + fiat_bp512_add, + fiat_bp512_sub, + fiat_bp512_mul, + fiat_bp512_opp, + fiat_bp512_square, + fiat_bp512_divstep_precomp, + fiat_bp512_divstep, + fiat_bp512_msat, + fiat_bp512_selectznz ); impl FieldElement { diff --git a/bp512/src/arithmetic/field/bp512_32.rs b/bp512/src/arithmetic/field/bp512_32.rs index 2c945d3a9..bfdaa4ed1 100644 --- a/bp512/src/arithmetic/field/bp512_32.rs +++ b/bp512/src/arithmetic/field/bp512_32.rs @@ -69,7 +69,6 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme } } - /// The function fiat_bp512_addcarryx_u32 is an addition with carry. /// /// Postconditions: @@ -84,12 +83,18 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_addcarryx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { - let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); - let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); - let x3: fiat_bp512_u1 = ((x1 >> 32) as fiat_bp512_u1); - *out1 = x2; - *out2 = x3; +pub fn fiat_bp512_addcarryx_u32( + out1: &mut u32, + out2: &mut fiat_bp512_u1, + arg1: fiat_bp512_u1, + arg2: u32, + arg3: u32, +) { + let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: fiat_bp512_u1 = ((x1 >> 32) as fiat_bp512_u1); + *out1 = x2; + *out2 = x3; } /// The function fiat_bp512_subborrowx_u32 is a subtraction with borrow. @@ -106,12 +111,18 @@ pub fn fiat_bp512_addcarryx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_subborrowx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { - let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); - let x2: fiat_bp512_i1 = ((x1 >> 32) as fiat_bp512_i1); - let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); - *out1 = x3; - *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); +pub fn fiat_bp512_subborrowx_u32( + out1: &mut u32, + out2: &mut fiat_bp512_u1, + arg1: fiat_bp512_u1, + arg2: u32, + arg3: u32, +) { + let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); + let x2: fiat_bp512_i1 = ((x1 >> 32) as fiat_bp512_i1); + let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); + *out1 = x3; + *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); } /// The function fiat_bp512_mulx_u32 is a multiplication, returning the full double-width result. @@ -128,11 +139,11 @@ pub fn fiat_bp512_subborrowx_u32(out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: /// out2: [0x0 ~> 0xffffffff] #[inline] pub fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { - let x1: u64 = ((arg1 as u64) * (arg2 as u64)); - let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); - let x3: u32 = ((x1 >> 32) as u32); - *out1 = x2; - *out2 = x3; + let x1: u64 = ((arg1 as u64) * (arg2 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: u32 = ((x1 >> 32) as u32); + *out1 = x2; + *out2 = x3; } /// The function fiat_bp512_cmovznz_u32 is a single-word conditional move. @@ -148,10 +159,11 @@ pub fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) /// out1: [0x0 ~> 0xffffffff] #[inline] pub fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { - let x1: fiat_bp512_u1 = (!(!arg1)); - let x2: u32 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i64) & (0xffffffff as i64)) as u32); - let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); - *out1 = x3; + let x1: fiat_bp512_u1 = (!(!arg1)); + let x2: u32 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i64) + & (0xffffffff as i64)) as u32); + let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; } /// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. @@ -164,4774 +176,4778 @@ pub fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, ar /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let x1: u32 = (arg1[1]); - let x2: u32 = (arg1[2]); - let x3: u32 = (arg1[3]); - let x4: u32 = (arg1[4]); - let x5: u32 = (arg1[5]); - let x6: u32 = (arg1[6]); - let x7: u32 = (arg1[7]); - let x8: u32 = (arg1[8]); - let x9: u32 = (arg1[9]); - let x10: u32 = (arg1[10]); - let x11: u32 = (arg1[11]); - let x12: u32 = (arg1[12]); - let x13: u32 = (arg1[13]); - let x14: u32 = (arg1[14]); - let x15: u32 = (arg1[15]); - let x16: u32 = (arg1[0]); - let mut x17: u32 = 0; - let mut x18: u32 = 0; - fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg2[15])); - let mut x19: u32 = 0; - let mut x20: u32 = 0; - fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg2[14])); - let mut x21: u32 = 0; - let mut x22: u32 = 0; - fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg2[13])); - let mut x23: u32 = 0; - let mut x24: u32 = 0; - fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg2[12])); - let mut x25: u32 = 0; - let mut x26: u32 = 0; - fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg2[11])); - let mut x27: u32 = 0; - let mut x28: u32 = 0; - fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg2[10])); - let mut x29: u32 = 0; - let mut x30: u32 = 0; - fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg2[9])); - let mut x31: u32 = 0; - let mut x32: u32 = 0; - fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg2[8])); - let mut x33: u32 = 0; - let mut x34: u32 = 0; - fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg2[7])); - let mut x35: u32 = 0; - let mut x36: u32 = 0; - fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg2[6])); - let mut x37: u32 = 0; - let mut x38: u32 = 0; - fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg2[5])); - let mut x39: u32 = 0; - let mut x40: u32 = 0; - fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg2[4])); - let mut x41: u32 = 0; - let mut x42: u32 = 0; - fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg2[3])); - let mut x43: u32 = 0; - let mut x44: u32 = 0; - fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg2[2])); - let mut x45: u32 = 0; - let mut x46: u32 = 0; - fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg2[1])); - let mut x47: u32 = 0; - let mut x48: u32 = 0; - fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg2[0])); - let mut x49: u32 = 0; - let mut x50: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); - let mut x51: u32 = 0; - let mut x52: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); - let mut x53: u32 = 0; - let mut x54: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); - let mut x55: u32 = 0; - let mut x56: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); - let mut x57: u32 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); - let mut x59: u32 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); - let mut x61: u32 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); - let mut x63: u32 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); - let mut x65: u32 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); - let mut x67: u32 = 0; - let mut x68: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); - let mut x69: u32 = 0; - let mut x70: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); - let mut x71: u32 = 0; - let mut x72: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); - let mut x73: u32 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); - let mut x75: u32 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); - let mut x77: u32 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); - let x79: u32 = ((x78 as u32) + x18); - let mut x80: u32 = 0; - let mut x81: u32 = 0; - fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); - let mut x82: u32 = 0; - let mut x83: u32 = 0; - fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); - let mut x84: u32 = 0; - let mut x85: u32 = 0; - fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); - let mut x86: u32 = 0; - let mut x87: u32 = 0; - fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); - let mut x88: u32 = 0; - let mut x89: u32 = 0; - fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); - let mut x90: u32 = 0; - let mut x91: u32 = 0; - fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); - let mut x92: u32 = 0; - let mut x93: u32 = 0; - fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); - let mut x94: u32 = 0; - let mut x95: u32 = 0; - fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); - let mut x96: u32 = 0; - let mut x97: u32 = 0; - fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); - let mut x98: u32 = 0; - let mut x99: u32 = 0; - fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); - let mut x100: u32 = 0; - let mut x101: u32 = 0; - fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); - let mut x102: u32 = 0; - let mut x103: u32 = 0; - fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); - let mut x104: u32 = 0; - let mut x105: u32 = 0; - fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); - let mut x106: u32 = 0; - let mut x107: u32 = 0; - fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); - let mut x108: u32 = 0; - let mut x109: u32 = 0; - fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); - let mut x110: u32 = 0; - let mut x111: u32 = 0; - fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); - let mut x112: u32 = 0; - let mut x113: u32 = 0; - fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); - let mut x114: u32 = 0; - let mut x115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); - let mut x116: u32 = 0; - let mut x117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); - let mut x118: u32 = 0; - let mut x119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); - let mut x120: u32 = 0; - let mut x121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); - let mut x122: u32 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); - let mut x124: u32 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); - let mut x126: u32 = 0; - let mut x127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); - let mut x128: u32 = 0; - let mut x129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); - let mut x130: u32 = 0; - let mut x131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); - let mut x132: u32 = 0; - let mut x133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); - let mut x134: u32 = 0; - let mut x135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); - let mut x136: u32 = 0; - let mut x137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); - let mut x138: u32 = 0; - let mut x139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); - let mut x140: u32 = 0; - let mut x141: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); - let mut x142: u32 = 0; - let mut x143: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); - let x144: u32 = ((x143 as u32) + x83); - let mut x145: u32 = 0; - let mut x146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); - let mut x147: u32 = 0; - let mut x148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); - let mut x149: u32 = 0; - let mut x150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); - let mut x151: u32 = 0; - let mut x152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); - let mut x153: u32 = 0; - let mut x154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); - let mut x155: u32 = 0; - let mut x156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); - let mut x157: u32 = 0; - let mut x158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); - let mut x159: u32 = 0; - let mut x160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); - let mut x161: u32 = 0; - let mut x162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); - let mut x163: u32 = 0; - let mut x164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); - let mut x165: u32 = 0; - let mut x166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); - let mut x167: u32 = 0; - let mut x168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); - let mut x169: u32 = 0; - let mut x170: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); - let mut x171: u32 = 0; - let mut x172: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); - let mut x173: u32 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); - let mut x175: u32 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); - let mut x177: u32 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); - let mut x179: u32 = 0; - let mut x180: u32 = 0; - fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg2[15])); - let mut x181: u32 = 0; - let mut x182: u32 = 0; - fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg2[14])); - let mut x183: u32 = 0; - let mut x184: u32 = 0; - fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg2[13])); - let mut x185: u32 = 0; - let mut x186: u32 = 0; - fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg2[12])); - let mut x187: u32 = 0; - let mut x188: u32 = 0; - fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg2[11])); - let mut x189: u32 = 0; - let mut x190: u32 = 0; - fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg2[10])); - let mut x191: u32 = 0; - let mut x192: u32 = 0; - fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg2[9])); - let mut x193: u32 = 0; - let mut x194: u32 = 0; - fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg2[8])); - let mut x195: u32 = 0; - let mut x196: u32 = 0; - fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg2[7])); - let mut x197: u32 = 0; - let mut x198: u32 = 0; - fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg2[6])); - let mut x199: u32 = 0; - let mut x200: u32 = 0; - fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg2[5])); - let mut x201: u32 = 0; - let mut x202: u32 = 0; - fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg2[4])); - let mut x203: u32 = 0; - let mut x204: u32 = 0; - fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg2[3])); - let mut x205: u32 = 0; - let mut x206: u32 = 0; - fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg2[2])); - let mut x207: u32 = 0; - let mut x208: u32 = 0; - fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg2[1])); - let mut x209: u32 = 0; - let mut x210: u32 = 0; - fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg2[0])); - let mut x211: u32 = 0; - let mut x212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); - let mut x213: u32 = 0; - let mut x214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); - let mut x215: u32 = 0; - let mut x216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); - let mut x217: u32 = 0; - let mut x218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); - let mut x219: u32 = 0; - let mut x220: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); - let mut x221: u32 = 0; - let mut x222: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); - let mut x223: u32 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); - let mut x225: u32 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); - let mut x227: u32 = 0; - let mut x228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); - let mut x229: u32 = 0; - let mut x230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); - let mut x231: u32 = 0; - let mut x232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); - let mut x233: u32 = 0; - let mut x234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); - let mut x235: u32 = 0; - let mut x236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); - let mut x237: u32 = 0; - let mut x238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); - let mut x239: u32 = 0; - let mut x240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); - let x241: u32 = ((x240 as u32) + x180); - let mut x242: u32 = 0; - let mut x243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); - let mut x244: u32 = 0; - let mut x245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); - let mut x246: u32 = 0; - let mut x247: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); - let mut x248: u32 = 0; - let mut x249: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); - let mut x250: u32 = 0; - let mut x251: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); - let mut x252: u32 = 0; - let mut x253: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); - let mut x254: u32 = 0; - let mut x255: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); - let mut x256: u32 = 0; - let mut x257: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); - let mut x258: u32 = 0; - let mut x259: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); - let mut x260: u32 = 0; - let mut x261: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); - let mut x262: u32 = 0; - let mut x263: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); - let mut x264: u32 = 0; - let mut x265: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); - let mut x266: u32 = 0; - let mut x267: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); - let mut x268: u32 = 0; - let mut x269: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); - let mut x270: u32 = 0; - let mut x271: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); - let mut x272: u32 = 0; - let mut x273: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); - let mut x274: u32 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); - let mut x276: u32 = 0; - let mut x277: u32 = 0; - fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); - let mut x278: u32 = 0; - let mut x279: u32 = 0; - fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); - let mut x280: u32 = 0; - let mut x281: u32 = 0; - fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); - let mut x282: u32 = 0; - let mut x283: u32 = 0; - fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); - let mut x284: u32 = 0; - let mut x285: u32 = 0; - fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); - let mut x286: u32 = 0; - let mut x287: u32 = 0; - fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); - let mut x288: u32 = 0; - let mut x289: u32 = 0; - fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); - let mut x290: u32 = 0; - let mut x291: u32 = 0; - fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); - let mut x292: u32 = 0; - let mut x293: u32 = 0; - fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); - let mut x294: u32 = 0; - let mut x295: u32 = 0; - fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); - let mut x296: u32 = 0; - let mut x297: u32 = 0; - fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); - let mut x298: u32 = 0; - let mut x299: u32 = 0; - fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); - let mut x300: u32 = 0; - let mut x301: u32 = 0; - fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); - let mut x302: u32 = 0; - let mut x303: u32 = 0; - fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); - let mut x304: u32 = 0; - let mut x305: u32 = 0; - fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); - let mut x306: u32 = 0; - let mut x307: u32 = 0; - fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); - let mut x308: u32 = 0; - let mut x309: u32 = 0; - fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); - let mut x310: u32 = 0; - let mut x311: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); - let mut x312: u32 = 0; - let mut x313: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); - let mut x314: u32 = 0; - let mut x315: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); - let mut x316: u32 = 0; - let mut x317: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); - let mut x318: u32 = 0; - let mut x319: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); - let mut x320: u32 = 0; - let mut x321: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); - let mut x322: u32 = 0; - let mut x323: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); - let mut x324: u32 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); - let mut x326: u32 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); - let mut x328: u32 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); - let mut x330: u32 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); - let mut x332: u32 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); - let mut x334: u32 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); - let mut x336: u32 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); - let mut x338: u32 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); - let x340: u32 = ((x339 as u32) + x279); - let mut x341: u32 = 0; - let mut x342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); - let mut x343: u32 = 0; - let mut x344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); - let mut x345: u32 = 0; - let mut x346: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); - let mut x347: u32 = 0; - let mut x348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); - let mut x349: u32 = 0; - let mut x350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); - let mut x351: u32 = 0; - let mut x352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); - let mut x353: u32 = 0; - let mut x354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); - let mut x355: u32 = 0; - let mut x356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); - let mut x357: u32 = 0; - let mut x358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); - let mut x359: u32 = 0; - let mut x360: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); - let mut x361: u32 = 0; - let mut x362: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); - let mut x363: u32 = 0; - let mut x364: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); - let mut x365: u32 = 0; - let mut x366: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); - let mut x367: u32 = 0; - let mut x368: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); - let mut x369: u32 = 0; - let mut x370: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); - let mut x371: u32 = 0; - let mut x372: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); - let mut x373: u32 = 0; - let mut x374: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); - let x375: u32 = ((x374 as u32) + (x275 as u32)); - let mut x376: u32 = 0; - let mut x377: u32 = 0; - fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg2[15])); - let mut x378: u32 = 0; - let mut x379: u32 = 0; - fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg2[14])); - let mut x380: u32 = 0; - let mut x381: u32 = 0; - fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg2[13])); - let mut x382: u32 = 0; - let mut x383: u32 = 0; - fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg2[12])); - let mut x384: u32 = 0; - let mut x385: u32 = 0; - fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg2[11])); - let mut x386: u32 = 0; - let mut x387: u32 = 0; - fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg2[10])); - let mut x388: u32 = 0; - let mut x389: u32 = 0; - fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg2[9])); - let mut x390: u32 = 0; - let mut x391: u32 = 0; - fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg2[8])); - let mut x392: u32 = 0; - let mut x393: u32 = 0; - fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg2[7])); - let mut x394: u32 = 0; - let mut x395: u32 = 0; - fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg2[6])); - let mut x396: u32 = 0; - let mut x397: u32 = 0; - fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg2[5])); - let mut x398: u32 = 0; - let mut x399: u32 = 0; - fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg2[4])); - let mut x400: u32 = 0; - let mut x401: u32 = 0; - fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg2[3])); - let mut x402: u32 = 0; - let mut x403: u32 = 0; - fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg2[2])); - let mut x404: u32 = 0; - let mut x405: u32 = 0; - fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg2[1])); - let mut x406: u32 = 0; - let mut x407: u32 = 0; - fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg2[0])); - let mut x408: u32 = 0; - let mut x409: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); - let mut x410: u32 = 0; - let mut x411: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); - let mut x412: u32 = 0; - let mut x413: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); - let mut x414: u32 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); - let mut x416: u32 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); - let mut x418: u32 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); - let mut x420: u32 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); - let mut x422: u32 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); - let mut x424: u32 = 0; - let mut x425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); - let mut x426: u32 = 0; - let mut x427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); - let mut x428: u32 = 0; - let mut x429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); - let mut x430: u32 = 0; - let mut x431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); - let mut x432: u32 = 0; - let mut x433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); - let mut x434: u32 = 0; - let mut x435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); - let mut x436: u32 = 0; - let mut x437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); - let x438: u32 = ((x437 as u32) + x377); - let mut x439: u32 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); - let mut x441: u32 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); - let mut x443: u32 = 0; - let mut x444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); - let mut x445: u32 = 0; - let mut x446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); - let mut x447: u32 = 0; - let mut x448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); - let mut x449: u32 = 0; - let mut x450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); - let mut x451: u32 = 0; - let mut x452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); - let mut x453: u32 = 0; - let mut x454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); - let mut x455: u32 = 0; - let mut x456: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); - let mut x457: u32 = 0; - let mut x458: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); - let mut x459: u32 = 0; - let mut x460: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); - let mut x461: u32 = 0; - let mut x462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); - let mut x463: u32 = 0; - let mut x464: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); - let mut x465: u32 = 0; - let mut x466: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); - let mut x467: u32 = 0; - let mut x468: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); - let mut x469: u32 = 0; - let mut x470: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); - let mut x471: u32 = 0; - let mut x472: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); - let mut x473: u32 = 0; - let mut x474: u32 = 0; - fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); - let mut x475: u32 = 0; - let mut x476: u32 = 0; - fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); - let mut x477: u32 = 0; - let mut x478: u32 = 0; - fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); - let mut x479: u32 = 0; - let mut x480: u32 = 0; - fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); - let mut x481: u32 = 0; - let mut x482: u32 = 0; - fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); - let mut x483: u32 = 0; - let mut x484: u32 = 0; - fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); - let mut x485: u32 = 0; - let mut x486: u32 = 0; - fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); - let mut x487: u32 = 0; - let mut x488: u32 = 0; - fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); - let mut x489: u32 = 0; - let mut x490: u32 = 0; - fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); - let mut x491: u32 = 0; - let mut x492: u32 = 0; - fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); - let mut x493: u32 = 0; - let mut x494: u32 = 0; - fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); - let mut x495: u32 = 0; - let mut x496: u32 = 0; - fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); - let mut x497: u32 = 0; - let mut x498: u32 = 0; - fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); - let mut x499: u32 = 0; - let mut x500: u32 = 0; - fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); - let mut x501: u32 = 0; - let mut x502: u32 = 0; - fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); - let mut x503: u32 = 0; - let mut x504: u32 = 0; - fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); - let mut x505: u32 = 0; - let mut x506: u32 = 0; - fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); - let mut x507: u32 = 0; - let mut x508: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); - let mut x509: u32 = 0; - let mut x510: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); - let mut x511: u32 = 0; - let mut x512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); - let mut x513: u32 = 0; - let mut x514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); - let mut x515: u32 = 0; - let mut x516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); - let mut x517: u32 = 0; - let mut x518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); - let mut x519: u32 = 0; - let mut x520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); - let mut x521: u32 = 0; - let mut x522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); - let mut x523: u32 = 0; - let mut x524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); - let mut x525: u32 = 0; - let mut x526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); - let mut x527: u32 = 0; - let mut x528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); - let mut x529: u32 = 0; - let mut x530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); - let mut x531: u32 = 0; - let mut x532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); - let mut x533: u32 = 0; - let mut x534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); - let mut x535: u32 = 0; - let mut x536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); - let x537: u32 = ((x536 as u32) + x476); - let mut x538: u32 = 0; - let mut x539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); - let mut x540: u32 = 0; - let mut x541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); - let mut x542: u32 = 0; - let mut x543: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); - let mut x544: u32 = 0; - let mut x545: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); - let mut x546: u32 = 0; - let mut x547: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); - let mut x548: u32 = 0; - let mut x549: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); - let mut x550: u32 = 0; - let mut x551: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); - let mut x552: u32 = 0; - let mut x553: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); - let mut x554: u32 = 0; - let mut x555: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); - let mut x556: u32 = 0; - let mut x557: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); - let mut x558: u32 = 0; - let mut x559: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); - let mut x560: u32 = 0; - let mut x561: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); - let mut x562: u32 = 0; - let mut x563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); - let mut x564: u32 = 0; - let mut x565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); - let mut x566: u32 = 0; - let mut x567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); - let mut x568: u32 = 0; - let mut x569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); - let mut x570: u32 = 0; - let mut x571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); - let x572: u32 = ((x571 as u32) + (x472 as u32)); - let mut x573: u32 = 0; - let mut x574: u32 = 0; - fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg2[15])); - let mut x575: u32 = 0; - let mut x576: u32 = 0; - fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg2[14])); - let mut x577: u32 = 0; - let mut x578: u32 = 0; - fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg2[13])); - let mut x579: u32 = 0; - let mut x580: u32 = 0; - fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg2[12])); - let mut x581: u32 = 0; - let mut x582: u32 = 0; - fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg2[11])); - let mut x583: u32 = 0; - let mut x584: u32 = 0; - fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg2[10])); - let mut x585: u32 = 0; - let mut x586: u32 = 0; - fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg2[9])); - let mut x587: u32 = 0; - let mut x588: u32 = 0; - fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg2[8])); - let mut x589: u32 = 0; - let mut x590: u32 = 0; - fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg2[7])); - let mut x591: u32 = 0; - let mut x592: u32 = 0; - fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg2[6])); - let mut x593: u32 = 0; - let mut x594: u32 = 0; - fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg2[5])); - let mut x595: u32 = 0; - let mut x596: u32 = 0; - fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg2[4])); - let mut x597: u32 = 0; - let mut x598: u32 = 0; - fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg2[3])); - let mut x599: u32 = 0; - let mut x600: u32 = 0; - fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg2[2])); - let mut x601: u32 = 0; - let mut x602: u32 = 0; - fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg2[1])); - let mut x603: u32 = 0; - let mut x604: u32 = 0; - fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg2[0])); - let mut x605: u32 = 0; - let mut x606: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); - let mut x607: u32 = 0; - let mut x608: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); - let mut x609: u32 = 0; - let mut x610: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); - let mut x611: u32 = 0; - let mut x612: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); - let mut x613: u32 = 0; - let mut x614: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); - let mut x615: u32 = 0; - let mut x616: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); - let mut x617: u32 = 0; - let mut x618: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); - let mut x619: u32 = 0; - let mut x620: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); - let mut x621: u32 = 0; - let mut x622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); - let mut x623: u32 = 0; - let mut x624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); - let mut x625: u32 = 0; - let mut x626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); - let mut x627: u32 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); - let mut x629: u32 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); - let mut x631: u32 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); - let mut x633: u32 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); - let x635: u32 = ((x634 as u32) + x574); - let mut x636: u32 = 0; - let mut x637: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); - let mut x638: u32 = 0; - let mut x639: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); - let mut x640: u32 = 0; - let mut x641: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); - let mut x642: u32 = 0; - let mut x643: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); - let mut x644: u32 = 0; - let mut x645: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); - let mut x646: u32 = 0; - let mut x647: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); - let mut x648: u32 = 0; - let mut x649: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); - let mut x650: u32 = 0; - let mut x651: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); - let mut x652: u32 = 0; - let mut x653: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); - let mut x654: u32 = 0; - let mut x655: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); - let mut x656: u32 = 0; - let mut x657: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); - let mut x658: u32 = 0; - let mut x659: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); - let mut x660: u32 = 0; - let mut x661: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); - let mut x662: u32 = 0; - let mut x663: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); - let mut x664: u32 = 0; - let mut x665: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); - let mut x666: u32 = 0; - let mut x667: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); - let mut x668: u32 = 0; - let mut x669: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); - let mut x670: u32 = 0; - let mut x671: u32 = 0; - fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); - let mut x672: u32 = 0; - let mut x673: u32 = 0; - fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); - let mut x674: u32 = 0; - let mut x675: u32 = 0; - fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); - let mut x676: u32 = 0; - let mut x677: u32 = 0; - fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); - let mut x678: u32 = 0; - let mut x679: u32 = 0; - fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); - let mut x680: u32 = 0; - let mut x681: u32 = 0; - fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); - let mut x682: u32 = 0; - let mut x683: u32 = 0; - fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); - let mut x684: u32 = 0; - let mut x685: u32 = 0; - fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); - let mut x686: u32 = 0; - let mut x687: u32 = 0; - fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); - let mut x688: u32 = 0; - let mut x689: u32 = 0; - fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); - let mut x690: u32 = 0; - let mut x691: u32 = 0; - fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); - let mut x692: u32 = 0; - let mut x693: u32 = 0; - fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); - let mut x694: u32 = 0; - let mut x695: u32 = 0; - fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); - let mut x696: u32 = 0; - let mut x697: u32 = 0; - fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); - let mut x698: u32 = 0; - let mut x699: u32 = 0; - fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); - let mut x700: u32 = 0; - let mut x701: u32 = 0; - fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); - let mut x702: u32 = 0; - let mut x703: u32 = 0; - fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); - let mut x704: u32 = 0; - let mut x705: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); - let mut x706: u32 = 0; - let mut x707: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); - let mut x708: u32 = 0; - let mut x709: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); - let mut x710: u32 = 0; - let mut x711: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); - let mut x712: u32 = 0; - let mut x713: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); - let mut x714: u32 = 0; - let mut x715: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); - let mut x716: u32 = 0; - let mut x717: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); - let mut x718: u32 = 0; - let mut x719: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); - let mut x720: u32 = 0; - let mut x721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); - let mut x722: u32 = 0; - let mut x723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); - let mut x724: u32 = 0; - let mut x725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); - let mut x726: u32 = 0; - let mut x727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); - let mut x728: u32 = 0; - let mut x729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); - let mut x730: u32 = 0; - let mut x731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); - let mut x732: u32 = 0; - let mut x733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); - let x734: u32 = ((x733 as u32) + x673); - let mut x735: u32 = 0; - let mut x736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); - let mut x737: u32 = 0; - let mut x738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); - let mut x739: u32 = 0; - let mut x740: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); - let mut x741: u32 = 0; - let mut x742: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); - let mut x743: u32 = 0; - let mut x744: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); - let mut x745: u32 = 0; - let mut x746: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); - let mut x747: u32 = 0; - let mut x748: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); - let mut x749: u32 = 0; - let mut x750: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); - let mut x751: u32 = 0; - let mut x752: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); - let mut x753: u32 = 0; - let mut x754: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); - let mut x755: u32 = 0; - let mut x756: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); - let mut x757: u32 = 0; - let mut x758: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); - let mut x759: u32 = 0; - let mut x760: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); - let mut x761: u32 = 0; - let mut x762: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); - let mut x763: u32 = 0; - let mut x764: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); - let mut x765: u32 = 0; - let mut x766: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); - let mut x767: u32 = 0; - let mut x768: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); - let x769: u32 = ((x768 as u32) + (x669 as u32)); - let mut x770: u32 = 0; - let mut x771: u32 = 0; - fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg2[15])); - let mut x772: u32 = 0; - let mut x773: u32 = 0; - fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg2[14])); - let mut x774: u32 = 0; - let mut x775: u32 = 0; - fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg2[13])); - let mut x776: u32 = 0; - let mut x777: u32 = 0; - fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg2[12])); - let mut x778: u32 = 0; - let mut x779: u32 = 0; - fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg2[11])); - let mut x780: u32 = 0; - let mut x781: u32 = 0; - fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg2[10])); - let mut x782: u32 = 0; - let mut x783: u32 = 0; - fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg2[9])); - let mut x784: u32 = 0; - let mut x785: u32 = 0; - fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg2[8])); - let mut x786: u32 = 0; - let mut x787: u32 = 0; - fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg2[7])); - let mut x788: u32 = 0; - let mut x789: u32 = 0; - fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg2[6])); - let mut x790: u32 = 0; - let mut x791: u32 = 0; - fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg2[5])); - let mut x792: u32 = 0; - let mut x793: u32 = 0; - fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg2[4])); - let mut x794: u32 = 0; - let mut x795: u32 = 0; - fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg2[3])); - let mut x796: u32 = 0; - let mut x797: u32 = 0; - fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg2[2])); - let mut x798: u32 = 0; - let mut x799: u32 = 0; - fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg2[1])); - let mut x800: u32 = 0; - let mut x801: u32 = 0; - fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg2[0])); - let mut x802: u32 = 0; - let mut x803: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); - let mut x804: u32 = 0; - let mut x805: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); - let mut x806: u32 = 0; - let mut x807: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); - let mut x808: u32 = 0; - let mut x809: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); - let mut x810: u32 = 0; - let mut x811: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); - let mut x812: u32 = 0; - let mut x813: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); - let mut x814: u32 = 0; - let mut x815: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); - let mut x816: u32 = 0; - let mut x817: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); - let mut x818: u32 = 0; - let mut x819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); - let mut x820: u32 = 0; - let mut x821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); - let mut x822: u32 = 0; - let mut x823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); - let mut x824: u32 = 0; - let mut x825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); - let mut x826: u32 = 0; - let mut x827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); - let mut x828: u32 = 0; - let mut x829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); - let mut x830: u32 = 0; - let mut x831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); - let x832: u32 = ((x831 as u32) + x771); - let mut x833: u32 = 0; - let mut x834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); - let mut x835: u32 = 0; - let mut x836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); - let mut x837: u32 = 0; - let mut x838: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); - let mut x839: u32 = 0; - let mut x840: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); - let mut x841: u32 = 0; - let mut x842: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); - let mut x843: u32 = 0; - let mut x844: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); - let mut x845: u32 = 0; - let mut x846: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); - let mut x847: u32 = 0; - let mut x848: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); - let mut x849: u32 = 0; - let mut x850: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); - let mut x851: u32 = 0; - let mut x852: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); - let mut x853: u32 = 0; - let mut x854: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); - let mut x855: u32 = 0; - let mut x856: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); - let mut x857: u32 = 0; - let mut x858: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); - let mut x859: u32 = 0; - let mut x860: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); - let mut x861: u32 = 0; - let mut x862: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); - let mut x863: u32 = 0; - let mut x864: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); - let mut x865: u32 = 0; - let mut x866: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); - let mut x867: u32 = 0; - let mut x868: u32 = 0; - fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); - let mut x869: u32 = 0; - let mut x870: u32 = 0; - fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); - let mut x871: u32 = 0; - let mut x872: u32 = 0; - fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); - let mut x873: u32 = 0; - let mut x874: u32 = 0; - fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); - let mut x875: u32 = 0; - let mut x876: u32 = 0; - fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); - let mut x877: u32 = 0; - let mut x878: u32 = 0; - fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); - let mut x879: u32 = 0; - let mut x880: u32 = 0; - fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); - let mut x881: u32 = 0; - let mut x882: u32 = 0; - fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); - let mut x883: u32 = 0; - let mut x884: u32 = 0; - fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); - let mut x885: u32 = 0; - let mut x886: u32 = 0; - fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); - let mut x887: u32 = 0; - let mut x888: u32 = 0; - fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); - let mut x889: u32 = 0; - let mut x890: u32 = 0; - fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); - let mut x891: u32 = 0; - let mut x892: u32 = 0; - fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); - let mut x893: u32 = 0; - let mut x894: u32 = 0; - fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); - let mut x895: u32 = 0; - let mut x896: u32 = 0; - fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); - let mut x897: u32 = 0; - let mut x898: u32 = 0; - fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); - let mut x899: u32 = 0; - let mut x900: u32 = 0; - fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); - let mut x901: u32 = 0; - let mut x902: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); - let mut x903: u32 = 0; - let mut x904: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); - let mut x905: u32 = 0; - let mut x906: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); - let mut x907: u32 = 0; - let mut x908: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); - let mut x909: u32 = 0; - let mut x910: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); - let mut x911: u32 = 0; - let mut x912: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); - let mut x913: u32 = 0; - let mut x914: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); - let mut x915: u32 = 0; - let mut x916: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); - let mut x917: u32 = 0; - let mut x918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); - let mut x919: u32 = 0; - let mut x920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); - let mut x921: u32 = 0; - let mut x922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); - let mut x923: u32 = 0; - let mut x924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); - let mut x925: u32 = 0; - let mut x926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); - let mut x927: u32 = 0; - let mut x928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); - let mut x929: u32 = 0; - let mut x930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); - let x931: u32 = ((x930 as u32) + x870); - let mut x932: u32 = 0; - let mut x933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); - let mut x934: u32 = 0; - let mut x935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); - let mut x936: u32 = 0; - let mut x937: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); - let mut x938: u32 = 0; - let mut x939: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); - let mut x940: u32 = 0; - let mut x941: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); - let mut x942: u32 = 0; - let mut x943: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); - let mut x944: u32 = 0; - let mut x945: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); - let mut x946: u32 = 0; - let mut x947: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); - let mut x948: u32 = 0; - let mut x949: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); - let mut x950: u32 = 0; - let mut x951: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); - let mut x952: u32 = 0; - let mut x953: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); - let mut x954: u32 = 0; - let mut x955: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); - let mut x956: u32 = 0; - let mut x957: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); - let mut x958: u32 = 0; - let mut x959: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); - let mut x960: u32 = 0; - let mut x961: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); - let mut x962: u32 = 0; - let mut x963: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); - let mut x964: u32 = 0; - let mut x965: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); - let x966: u32 = ((x965 as u32) + (x866 as u32)); - let mut x967: u32 = 0; - let mut x968: u32 = 0; - fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg2[15])); - let mut x969: u32 = 0; - let mut x970: u32 = 0; - fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg2[14])); - let mut x971: u32 = 0; - let mut x972: u32 = 0; - fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg2[13])); - let mut x973: u32 = 0; - let mut x974: u32 = 0; - fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg2[12])); - let mut x975: u32 = 0; - let mut x976: u32 = 0; - fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg2[11])); - let mut x977: u32 = 0; - let mut x978: u32 = 0; - fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg2[10])); - let mut x979: u32 = 0; - let mut x980: u32 = 0; - fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg2[9])); - let mut x981: u32 = 0; - let mut x982: u32 = 0; - fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg2[8])); - let mut x983: u32 = 0; - let mut x984: u32 = 0; - fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg2[7])); - let mut x985: u32 = 0; - let mut x986: u32 = 0; - fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg2[6])); - let mut x987: u32 = 0; - let mut x988: u32 = 0; - fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg2[5])); - let mut x989: u32 = 0; - let mut x990: u32 = 0; - fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg2[4])); - let mut x991: u32 = 0; - let mut x992: u32 = 0; - fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg2[3])); - let mut x993: u32 = 0; - let mut x994: u32 = 0; - fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg2[2])); - let mut x995: u32 = 0; - let mut x996: u32 = 0; - fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg2[1])); - let mut x997: u32 = 0; - let mut x998: u32 = 0; - fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg2[0])); - let mut x999: u32 = 0; - let mut x1000: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); - let mut x1001: u32 = 0; - let mut x1002: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); - let mut x1003: u32 = 0; - let mut x1004: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); - let mut x1005: u32 = 0; - let mut x1006: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); - let mut x1007: u32 = 0; - let mut x1008: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); - let mut x1009: u32 = 0; - let mut x1010: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); - let mut x1011: u32 = 0; - let mut x1012: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); - let mut x1013: u32 = 0; - let mut x1014: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); - let mut x1015: u32 = 0; - let mut x1016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); - let mut x1017: u32 = 0; - let mut x1018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); - let mut x1019: u32 = 0; - let mut x1020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); - let mut x1021: u32 = 0; - let mut x1022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); - let mut x1023: u32 = 0; - let mut x1024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); - let mut x1025: u32 = 0; - let mut x1026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); - let mut x1027: u32 = 0; - let mut x1028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); - let x1029: u32 = ((x1028 as u32) + x968); - let mut x1030: u32 = 0; - let mut x1031: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); - let mut x1032: u32 = 0; - let mut x1033: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); - let mut x1034: u32 = 0; - let mut x1035: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); - let mut x1036: u32 = 0; - let mut x1037: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); - let mut x1038: u32 = 0; - let mut x1039: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); - let mut x1040: u32 = 0; - let mut x1041: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); - let mut x1042: u32 = 0; - let mut x1043: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); - let mut x1044: u32 = 0; - let mut x1045: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); - let mut x1046: u32 = 0; - let mut x1047: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); - let mut x1048: u32 = 0; - let mut x1049: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); - let mut x1050: u32 = 0; - let mut x1051: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); - let mut x1052: u32 = 0; - let mut x1053: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); - let mut x1054: u32 = 0; - let mut x1055: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); - let mut x1056: u32 = 0; - let mut x1057: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); - let mut x1058: u32 = 0; - let mut x1059: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); - let mut x1060: u32 = 0; - let mut x1061: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); - let mut x1062: u32 = 0; - let mut x1063: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); - let mut x1064: u32 = 0; - let mut x1065: u32 = 0; - fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); - let mut x1066: u32 = 0; - let mut x1067: u32 = 0; - fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); - let mut x1068: u32 = 0; - let mut x1069: u32 = 0; - fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); - let mut x1070: u32 = 0; - let mut x1071: u32 = 0; - fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); - let mut x1072: u32 = 0; - let mut x1073: u32 = 0; - fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); - let mut x1074: u32 = 0; - let mut x1075: u32 = 0; - fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); - let mut x1076: u32 = 0; - let mut x1077: u32 = 0; - fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); - let mut x1078: u32 = 0; - let mut x1079: u32 = 0; - fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); - let mut x1080: u32 = 0; - let mut x1081: u32 = 0; - fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); - let mut x1082: u32 = 0; - let mut x1083: u32 = 0; - fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); - let mut x1084: u32 = 0; - let mut x1085: u32 = 0; - fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); - let mut x1086: u32 = 0; - let mut x1087: u32 = 0; - fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); - let mut x1088: u32 = 0; - let mut x1089: u32 = 0; - fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); - let mut x1090: u32 = 0; - let mut x1091: u32 = 0; - fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); - let mut x1092: u32 = 0; - let mut x1093: u32 = 0; - fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); - let mut x1094: u32 = 0; - let mut x1095: u32 = 0; - fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); - let mut x1096: u32 = 0; - let mut x1097: u32 = 0; - fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); - let mut x1098: u32 = 0; - let mut x1099: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); - let mut x1100: u32 = 0; - let mut x1101: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); - let mut x1102: u32 = 0; - let mut x1103: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); - let mut x1104: u32 = 0; - let mut x1105: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); - let mut x1106: u32 = 0; - let mut x1107: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); - let mut x1108: u32 = 0; - let mut x1109: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); - let mut x1110: u32 = 0; - let mut x1111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); - let mut x1112: u32 = 0; - let mut x1113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); - let mut x1114: u32 = 0; - let mut x1115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); - let mut x1116: u32 = 0; - let mut x1117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); - let mut x1118: u32 = 0; - let mut x1119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); - let mut x1120: u32 = 0; - let mut x1121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); - let mut x1122: u32 = 0; - let mut x1123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); - let mut x1124: u32 = 0; - let mut x1125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); - let mut x1126: u32 = 0; - let mut x1127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); - let x1128: u32 = ((x1127 as u32) + x1067); - let mut x1129: u32 = 0; - let mut x1130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); - let mut x1131: u32 = 0; - let mut x1132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); - let mut x1133: u32 = 0; - let mut x1134: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); - let mut x1135: u32 = 0; - let mut x1136: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); - let mut x1137: u32 = 0; - let mut x1138: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); - let mut x1139: u32 = 0; - let mut x1140: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); - let mut x1141: u32 = 0; - let mut x1142: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); - let mut x1143: u32 = 0; - let mut x1144: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); - let mut x1145: u32 = 0; - let mut x1146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); - let mut x1147: u32 = 0; - let mut x1148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); - let mut x1149: u32 = 0; - let mut x1150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); - let mut x1151: u32 = 0; - let mut x1152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); - let mut x1153: u32 = 0; - let mut x1154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); - let mut x1155: u32 = 0; - let mut x1156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); - let mut x1157: u32 = 0; - let mut x1158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); - let mut x1159: u32 = 0; - let mut x1160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); - let mut x1161: u32 = 0; - let mut x1162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); - let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); - let mut x1164: u32 = 0; - let mut x1165: u32 = 0; - fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg2[15])); - let mut x1166: u32 = 0; - let mut x1167: u32 = 0; - fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg2[14])); - let mut x1168: u32 = 0; - let mut x1169: u32 = 0; - fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg2[13])); - let mut x1170: u32 = 0; - let mut x1171: u32 = 0; - fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg2[12])); - let mut x1172: u32 = 0; - let mut x1173: u32 = 0; - fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg2[11])); - let mut x1174: u32 = 0; - let mut x1175: u32 = 0; - fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg2[10])); - let mut x1176: u32 = 0; - let mut x1177: u32 = 0; - fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg2[9])); - let mut x1178: u32 = 0; - let mut x1179: u32 = 0; - fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg2[8])); - let mut x1180: u32 = 0; - let mut x1181: u32 = 0; - fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg2[7])); - let mut x1182: u32 = 0; - let mut x1183: u32 = 0; - fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg2[6])); - let mut x1184: u32 = 0; - let mut x1185: u32 = 0; - fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg2[5])); - let mut x1186: u32 = 0; - let mut x1187: u32 = 0; - fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg2[4])); - let mut x1188: u32 = 0; - let mut x1189: u32 = 0; - fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg2[3])); - let mut x1190: u32 = 0; - let mut x1191: u32 = 0; - fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg2[2])); - let mut x1192: u32 = 0; - let mut x1193: u32 = 0; - fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg2[1])); - let mut x1194: u32 = 0; - let mut x1195: u32 = 0; - fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg2[0])); - let mut x1196: u32 = 0; - let mut x1197: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); - let mut x1198: u32 = 0; - let mut x1199: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); - let mut x1200: u32 = 0; - let mut x1201: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); - let mut x1202: u32 = 0; - let mut x1203: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); - let mut x1204: u32 = 0; - let mut x1205: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); - let mut x1206: u32 = 0; - let mut x1207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); - let mut x1208: u32 = 0; - let mut x1209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); - let mut x1210: u32 = 0; - let mut x1211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); - let mut x1212: u32 = 0; - let mut x1213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); - let mut x1214: u32 = 0; - let mut x1215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); - let mut x1216: u32 = 0; - let mut x1217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); - let mut x1218: u32 = 0; - let mut x1219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); - let mut x1220: u32 = 0; - let mut x1221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); - let mut x1222: u32 = 0; - let mut x1223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); - let mut x1224: u32 = 0; - let mut x1225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); - let x1226: u32 = ((x1225 as u32) + x1165); - let mut x1227: u32 = 0; - let mut x1228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); - let mut x1229: u32 = 0; - let mut x1230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); - let mut x1231: u32 = 0; - let mut x1232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); - let mut x1233: u32 = 0; - let mut x1234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); - let mut x1235: u32 = 0; - let mut x1236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); - let mut x1237: u32 = 0; - let mut x1238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); - let mut x1239: u32 = 0; - let mut x1240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); - let mut x1241: u32 = 0; - let mut x1242: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); - let mut x1243: u32 = 0; - let mut x1244: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); - let mut x1245: u32 = 0; - let mut x1246: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); - let mut x1247: u32 = 0; - let mut x1248: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); - let mut x1249: u32 = 0; - let mut x1250: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); - let mut x1251: u32 = 0; - let mut x1252: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); - let mut x1253: u32 = 0; - let mut x1254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); - let mut x1255: u32 = 0; - let mut x1256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); - let mut x1257: u32 = 0; - let mut x1258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); - let mut x1259: u32 = 0; - let mut x1260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); - let mut x1261: u32 = 0; - let mut x1262: u32 = 0; - fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); - let mut x1263: u32 = 0; - let mut x1264: u32 = 0; - fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); - let mut x1265: u32 = 0; - let mut x1266: u32 = 0; - fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); - let mut x1267: u32 = 0; - let mut x1268: u32 = 0; - fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); - let mut x1269: u32 = 0; - let mut x1270: u32 = 0; - fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); - let mut x1271: u32 = 0; - let mut x1272: u32 = 0; - fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); - let mut x1273: u32 = 0; - let mut x1274: u32 = 0; - fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); - let mut x1275: u32 = 0; - let mut x1276: u32 = 0; - fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); - let mut x1277: u32 = 0; - let mut x1278: u32 = 0; - fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); - let mut x1279: u32 = 0; - let mut x1280: u32 = 0; - fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); - let mut x1281: u32 = 0; - let mut x1282: u32 = 0; - fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); - let mut x1283: u32 = 0; - let mut x1284: u32 = 0; - fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); - let mut x1285: u32 = 0; - let mut x1286: u32 = 0; - fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); - let mut x1287: u32 = 0; - let mut x1288: u32 = 0; - fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); - let mut x1289: u32 = 0; - let mut x1290: u32 = 0; - fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); - let mut x1291: u32 = 0; - let mut x1292: u32 = 0; - fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); - let mut x1293: u32 = 0; - let mut x1294: u32 = 0; - fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); - let mut x1295: u32 = 0; - let mut x1296: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); - let mut x1297: u32 = 0; - let mut x1298: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); - let mut x1299: u32 = 0; - let mut x1300: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); - let mut x1301: u32 = 0; - let mut x1302: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); - let mut x1303: u32 = 0; - let mut x1304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); - let mut x1305: u32 = 0; - let mut x1306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); - let mut x1307: u32 = 0; - let mut x1308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); - let mut x1309: u32 = 0; - let mut x1310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); - let mut x1311: u32 = 0; - let mut x1312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); - let mut x1313: u32 = 0; - let mut x1314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); - let mut x1315: u32 = 0; - let mut x1316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); - let mut x1317: u32 = 0; - let mut x1318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); - let mut x1319: u32 = 0; - let mut x1320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); - let mut x1321: u32 = 0; - let mut x1322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); - let mut x1323: u32 = 0; - let mut x1324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); - let x1325: u32 = ((x1324 as u32) + x1264); - let mut x1326: u32 = 0; - let mut x1327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); - let mut x1328: u32 = 0; - let mut x1329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); - let mut x1330: u32 = 0; - let mut x1331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); - let mut x1332: u32 = 0; - let mut x1333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); - let mut x1334: u32 = 0; - let mut x1335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); - let mut x1336: u32 = 0; - let mut x1337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); - let mut x1338: u32 = 0; - let mut x1339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); - let mut x1340: u32 = 0; - let mut x1341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); - let mut x1342: u32 = 0; - let mut x1343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); - let mut x1344: u32 = 0; - let mut x1345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); - let mut x1346: u32 = 0; - let mut x1347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); - let mut x1348: u32 = 0; - let mut x1349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); - let mut x1350: u32 = 0; - let mut x1351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); - let mut x1352: u32 = 0; - let mut x1353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); - let mut x1354: u32 = 0; - let mut x1355: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); - let mut x1356: u32 = 0; - let mut x1357: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); - let mut x1358: u32 = 0; - let mut x1359: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); - let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); - let mut x1361: u32 = 0; - let mut x1362: u32 = 0; - fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg2[15])); - let mut x1363: u32 = 0; - let mut x1364: u32 = 0; - fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg2[14])); - let mut x1365: u32 = 0; - let mut x1366: u32 = 0; - fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg2[13])); - let mut x1367: u32 = 0; - let mut x1368: u32 = 0; - fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg2[12])); - let mut x1369: u32 = 0; - let mut x1370: u32 = 0; - fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg2[11])); - let mut x1371: u32 = 0; - let mut x1372: u32 = 0; - fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg2[10])); - let mut x1373: u32 = 0; - let mut x1374: u32 = 0; - fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg2[9])); - let mut x1375: u32 = 0; - let mut x1376: u32 = 0; - fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg2[8])); - let mut x1377: u32 = 0; - let mut x1378: u32 = 0; - fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg2[7])); - let mut x1379: u32 = 0; - let mut x1380: u32 = 0; - fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg2[6])); - let mut x1381: u32 = 0; - let mut x1382: u32 = 0; - fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg2[5])); - let mut x1383: u32 = 0; - let mut x1384: u32 = 0; - fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg2[4])); - let mut x1385: u32 = 0; - let mut x1386: u32 = 0; - fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg2[3])); - let mut x1387: u32 = 0; - let mut x1388: u32 = 0; - fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg2[2])); - let mut x1389: u32 = 0; - let mut x1390: u32 = 0; - fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg2[1])); - let mut x1391: u32 = 0; - let mut x1392: u32 = 0; - fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg2[0])); - let mut x1393: u32 = 0; - let mut x1394: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); - let mut x1395: u32 = 0; - let mut x1396: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); - let mut x1397: u32 = 0; - let mut x1398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); - let mut x1399: u32 = 0; - let mut x1400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); - let mut x1401: u32 = 0; - let mut x1402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); - let mut x1403: u32 = 0; - let mut x1404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); - let mut x1405: u32 = 0; - let mut x1406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); - let mut x1407: u32 = 0; - let mut x1408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); - let mut x1409: u32 = 0; - let mut x1410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); - let mut x1411: u32 = 0; - let mut x1412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); - let mut x1413: u32 = 0; - let mut x1414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); - let mut x1415: u32 = 0; - let mut x1416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); - let mut x1417: u32 = 0; - let mut x1418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); - let mut x1419: u32 = 0; - let mut x1420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); - let mut x1421: u32 = 0; - let mut x1422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); - let x1423: u32 = ((x1422 as u32) + x1362); - let mut x1424: u32 = 0; - let mut x1425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); - let mut x1426: u32 = 0; - let mut x1427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); - let mut x1428: u32 = 0; - let mut x1429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); - let mut x1430: u32 = 0; - let mut x1431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); - let mut x1432: u32 = 0; - let mut x1433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); - let mut x1434: u32 = 0; - let mut x1435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); - let mut x1436: u32 = 0; - let mut x1437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); - let mut x1438: u32 = 0; - let mut x1439: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); - let mut x1440: u32 = 0; - let mut x1441: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); - let mut x1442: u32 = 0; - let mut x1443: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); - let mut x1444: u32 = 0; - let mut x1445: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); - let mut x1446: u32 = 0; - let mut x1447: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); - let mut x1448: u32 = 0; - let mut x1449: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); - let mut x1450: u32 = 0; - let mut x1451: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); - let mut x1452: u32 = 0; - let mut x1453: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); - let mut x1454: u32 = 0; - let mut x1455: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); - let mut x1456: u32 = 0; - let mut x1457: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); - let mut x1458: u32 = 0; - let mut x1459: u32 = 0; - fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); - let mut x1460: u32 = 0; - let mut x1461: u32 = 0; - fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); - let mut x1462: u32 = 0; - let mut x1463: u32 = 0; - fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); - let mut x1464: u32 = 0; - let mut x1465: u32 = 0; - fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); - let mut x1466: u32 = 0; - let mut x1467: u32 = 0; - fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); - let mut x1468: u32 = 0; - let mut x1469: u32 = 0; - fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); - let mut x1470: u32 = 0; - let mut x1471: u32 = 0; - fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); - let mut x1472: u32 = 0; - let mut x1473: u32 = 0; - fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); - let mut x1474: u32 = 0; - let mut x1475: u32 = 0; - fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); - let mut x1476: u32 = 0; - let mut x1477: u32 = 0; - fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); - let mut x1478: u32 = 0; - let mut x1479: u32 = 0; - fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); - let mut x1480: u32 = 0; - let mut x1481: u32 = 0; - fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); - let mut x1482: u32 = 0; - let mut x1483: u32 = 0; - fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); - let mut x1484: u32 = 0; - let mut x1485: u32 = 0; - fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); - let mut x1486: u32 = 0; - let mut x1487: u32 = 0; - fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); - let mut x1488: u32 = 0; - let mut x1489: u32 = 0; - fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); - let mut x1490: u32 = 0; - let mut x1491: u32 = 0; - fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); - let mut x1492: u32 = 0; - let mut x1493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); - let mut x1494: u32 = 0; - let mut x1495: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); - let mut x1496: u32 = 0; - let mut x1497: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); - let mut x1498: u32 = 0; - let mut x1499: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); - let mut x1500: u32 = 0; - let mut x1501: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); - let mut x1502: u32 = 0; - let mut x1503: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); - let mut x1504: u32 = 0; - let mut x1505: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); - let mut x1506: u32 = 0; - let mut x1507: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); - let mut x1508: u32 = 0; - let mut x1509: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); - let mut x1510: u32 = 0; - let mut x1511: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); - let mut x1512: u32 = 0; - let mut x1513: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); - let mut x1514: u32 = 0; - let mut x1515: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); - let mut x1516: u32 = 0; - let mut x1517: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); - let mut x1518: u32 = 0; - let mut x1519: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); - let mut x1520: u32 = 0; - let mut x1521: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); - let x1522: u32 = ((x1521 as u32) + x1461); - let mut x1523: u32 = 0; - let mut x1524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); - let mut x1525: u32 = 0; - let mut x1526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); - let mut x1527: u32 = 0; - let mut x1528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); - let mut x1529: u32 = 0; - let mut x1530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); - let mut x1531: u32 = 0; - let mut x1532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); - let mut x1533: u32 = 0; - let mut x1534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); - let mut x1535: u32 = 0; - let mut x1536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); - let mut x1537: u32 = 0; - let mut x1538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); - let mut x1539: u32 = 0; - let mut x1540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); - let mut x1541: u32 = 0; - let mut x1542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); - let mut x1543: u32 = 0; - let mut x1544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); - let mut x1545: u32 = 0; - let mut x1546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); - let mut x1547: u32 = 0; - let mut x1548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); - let mut x1549: u32 = 0; - let mut x1550: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); - let mut x1551: u32 = 0; - let mut x1552: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); - let mut x1553: u32 = 0; - let mut x1554: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); - let mut x1555: u32 = 0; - let mut x1556: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); - let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); - let mut x1558: u32 = 0; - let mut x1559: u32 = 0; - fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg2[15])); - let mut x1560: u32 = 0; - let mut x1561: u32 = 0; - fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg2[14])); - let mut x1562: u32 = 0; - let mut x1563: u32 = 0; - fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg2[13])); - let mut x1564: u32 = 0; - let mut x1565: u32 = 0; - fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg2[12])); - let mut x1566: u32 = 0; - let mut x1567: u32 = 0; - fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg2[11])); - let mut x1568: u32 = 0; - let mut x1569: u32 = 0; - fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg2[10])); - let mut x1570: u32 = 0; - let mut x1571: u32 = 0; - fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg2[9])); - let mut x1572: u32 = 0; - let mut x1573: u32 = 0; - fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg2[8])); - let mut x1574: u32 = 0; - let mut x1575: u32 = 0; - fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg2[7])); - let mut x1576: u32 = 0; - let mut x1577: u32 = 0; - fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg2[6])); - let mut x1578: u32 = 0; - let mut x1579: u32 = 0; - fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg2[5])); - let mut x1580: u32 = 0; - let mut x1581: u32 = 0; - fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg2[4])); - let mut x1582: u32 = 0; - let mut x1583: u32 = 0; - fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg2[3])); - let mut x1584: u32 = 0; - let mut x1585: u32 = 0; - fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg2[2])); - let mut x1586: u32 = 0; - let mut x1587: u32 = 0; - fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg2[1])); - let mut x1588: u32 = 0; - let mut x1589: u32 = 0; - fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg2[0])); - let mut x1590: u32 = 0; - let mut x1591: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); - let mut x1592: u32 = 0; - let mut x1593: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); - let mut x1594: u32 = 0; - let mut x1595: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); - let mut x1596: u32 = 0; - let mut x1597: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); - let mut x1598: u32 = 0; - let mut x1599: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); - let mut x1600: u32 = 0; - let mut x1601: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); - let mut x1602: u32 = 0; - let mut x1603: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); - let mut x1604: u32 = 0; - let mut x1605: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); - let mut x1606: u32 = 0; - let mut x1607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); - let mut x1608: u32 = 0; - let mut x1609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); - let mut x1610: u32 = 0; - let mut x1611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); - let mut x1612: u32 = 0; - let mut x1613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); - let mut x1614: u32 = 0; - let mut x1615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); - let mut x1616: u32 = 0; - let mut x1617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); - let mut x1618: u32 = 0; - let mut x1619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); - let x1620: u32 = ((x1619 as u32) + x1559); - let mut x1621: u32 = 0; - let mut x1622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); - let mut x1623: u32 = 0; - let mut x1624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); - let mut x1625: u32 = 0; - let mut x1626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); - let mut x1627: u32 = 0; - let mut x1628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); - let mut x1629: u32 = 0; - let mut x1630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); - let mut x1631: u32 = 0; - let mut x1632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); - let mut x1633: u32 = 0; - let mut x1634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); - let mut x1635: u32 = 0; - let mut x1636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); - let mut x1637: u32 = 0; - let mut x1638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); - let mut x1639: u32 = 0; - let mut x1640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); - let mut x1641: u32 = 0; - let mut x1642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); - let mut x1643: u32 = 0; - let mut x1644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); - let mut x1645: u32 = 0; - let mut x1646: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); - let mut x1647: u32 = 0; - let mut x1648: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); - let mut x1649: u32 = 0; - let mut x1650: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); - let mut x1651: u32 = 0; - let mut x1652: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); - let mut x1653: u32 = 0; - let mut x1654: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); - let mut x1655: u32 = 0; - let mut x1656: u32 = 0; - fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); - let mut x1657: u32 = 0; - let mut x1658: u32 = 0; - fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); - let mut x1659: u32 = 0; - let mut x1660: u32 = 0; - fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); - let mut x1661: u32 = 0; - let mut x1662: u32 = 0; - fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); - let mut x1663: u32 = 0; - let mut x1664: u32 = 0; - fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); - let mut x1665: u32 = 0; - let mut x1666: u32 = 0; - fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); - let mut x1667: u32 = 0; - let mut x1668: u32 = 0; - fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); - let mut x1669: u32 = 0; - let mut x1670: u32 = 0; - fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); - let mut x1671: u32 = 0; - let mut x1672: u32 = 0; - fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); - let mut x1673: u32 = 0; - let mut x1674: u32 = 0; - fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); - let mut x1675: u32 = 0; - let mut x1676: u32 = 0; - fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); - let mut x1677: u32 = 0; - let mut x1678: u32 = 0; - fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); - let mut x1679: u32 = 0; - let mut x1680: u32 = 0; - fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); - let mut x1681: u32 = 0; - let mut x1682: u32 = 0; - fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); - let mut x1683: u32 = 0; - let mut x1684: u32 = 0; - fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); - let mut x1685: u32 = 0; - let mut x1686: u32 = 0; - fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); - let mut x1687: u32 = 0; - let mut x1688: u32 = 0; - fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); - let mut x1689: u32 = 0; - let mut x1690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); - let mut x1691: u32 = 0; - let mut x1692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); - let mut x1693: u32 = 0; - let mut x1694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); - let mut x1695: u32 = 0; - let mut x1696: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); - let mut x1697: u32 = 0; - let mut x1698: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); - let mut x1699: u32 = 0; - let mut x1700: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); - let mut x1701: u32 = 0; - let mut x1702: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); - let mut x1703: u32 = 0; - let mut x1704: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); - let mut x1705: u32 = 0; - let mut x1706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); - let mut x1707: u32 = 0; - let mut x1708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); - let mut x1709: u32 = 0; - let mut x1710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); - let mut x1711: u32 = 0; - let mut x1712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); - let mut x1713: u32 = 0; - let mut x1714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); - let mut x1715: u32 = 0; - let mut x1716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); - let mut x1717: u32 = 0; - let mut x1718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); - let x1719: u32 = ((x1718 as u32) + x1658); - let mut x1720: u32 = 0; - let mut x1721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); - let mut x1722: u32 = 0; - let mut x1723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); - let mut x1724: u32 = 0; - let mut x1725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); - let mut x1726: u32 = 0; - let mut x1727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); - let mut x1728: u32 = 0; - let mut x1729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); - let mut x1730: u32 = 0; - let mut x1731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); - let mut x1732: u32 = 0; - let mut x1733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); - let mut x1734: u32 = 0; - let mut x1735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); - let mut x1736: u32 = 0; - let mut x1737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); - let mut x1738: u32 = 0; - let mut x1739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); - let mut x1740: u32 = 0; - let mut x1741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); - let mut x1742: u32 = 0; - let mut x1743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); - let mut x1744: u32 = 0; - let mut x1745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); - let mut x1746: u32 = 0; - let mut x1747: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); - let mut x1748: u32 = 0; - let mut x1749: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); - let mut x1750: u32 = 0; - let mut x1751: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); - let mut x1752: u32 = 0; - let mut x1753: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); - let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); - let mut x1755: u32 = 0; - let mut x1756: u32 = 0; - fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg2[15])); - let mut x1757: u32 = 0; - let mut x1758: u32 = 0; - fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg2[14])); - let mut x1759: u32 = 0; - let mut x1760: u32 = 0; - fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg2[13])); - let mut x1761: u32 = 0; - let mut x1762: u32 = 0; - fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg2[12])); - let mut x1763: u32 = 0; - let mut x1764: u32 = 0; - fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg2[11])); - let mut x1765: u32 = 0; - let mut x1766: u32 = 0; - fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg2[10])); - let mut x1767: u32 = 0; - let mut x1768: u32 = 0; - fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg2[9])); - let mut x1769: u32 = 0; - let mut x1770: u32 = 0; - fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg2[8])); - let mut x1771: u32 = 0; - let mut x1772: u32 = 0; - fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg2[7])); - let mut x1773: u32 = 0; - let mut x1774: u32 = 0; - fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg2[6])); - let mut x1775: u32 = 0; - let mut x1776: u32 = 0; - fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg2[5])); - let mut x1777: u32 = 0; - let mut x1778: u32 = 0; - fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg2[4])); - let mut x1779: u32 = 0; - let mut x1780: u32 = 0; - fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg2[3])); - let mut x1781: u32 = 0; - let mut x1782: u32 = 0; - fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg2[2])); - let mut x1783: u32 = 0; - let mut x1784: u32 = 0; - fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg2[1])); - let mut x1785: u32 = 0; - let mut x1786: u32 = 0; - fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg2[0])); - let mut x1787: u32 = 0; - let mut x1788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); - let mut x1789: u32 = 0; - let mut x1790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); - let mut x1791: u32 = 0; - let mut x1792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); - let mut x1793: u32 = 0; - let mut x1794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); - let mut x1795: u32 = 0; - let mut x1796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); - let mut x1797: u32 = 0; - let mut x1798: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); - let mut x1799: u32 = 0; - let mut x1800: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); - let mut x1801: u32 = 0; - let mut x1802: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); - let mut x1803: u32 = 0; - let mut x1804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); - let mut x1805: u32 = 0; - let mut x1806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); - let mut x1807: u32 = 0; - let mut x1808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); - let mut x1809: u32 = 0; - let mut x1810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); - let mut x1811: u32 = 0; - let mut x1812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); - let mut x1813: u32 = 0; - let mut x1814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); - let mut x1815: u32 = 0; - let mut x1816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); - let x1817: u32 = ((x1816 as u32) + x1756); - let mut x1818: u32 = 0; - let mut x1819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); - let mut x1820: u32 = 0; - let mut x1821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); - let mut x1822: u32 = 0; - let mut x1823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); - let mut x1824: u32 = 0; - let mut x1825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); - let mut x1826: u32 = 0; - let mut x1827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); - let mut x1828: u32 = 0; - let mut x1829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); - let mut x1830: u32 = 0; - let mut x1831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); - let mut x1832: u32 = 0; - let mut x1833: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); - let mut x1834: u32 = 0; - let mut x1835: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); - let mut x1836: u32 = 0; - let mut x1837: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); - let mut x1838: u32 = 0; - let mut x1839: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); - let mut x1840: u32 = 0; - let mut x1841: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); - let mut x1842: u32 = 0; - let mut x1843: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); - let mut x1844: u32 = 0; - let mut x1845: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); - let mut x1846: u32 = 0; - let mut x1847: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); - let mut x1848: u32 = 0; - let mut x1849: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); - let mut x1850: u32 = 0; - let mut x1851: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); - let mut x1852: u32 = 0; - let mut x1853: u32 = 0; - fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); - let mut x1854: u32 = 0; - let mut x1855: u32 = 0; - fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); - let mut x1856: u32 = 0; - let mut x1857: u32 = 0; - fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); - let mut x1858: u32 = 0; - let mut x1859: u32 = 0; - fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); - let mut x1860: u32 = 0; - let mut x1861: u32 = 0; - fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); - let mut x1862: u32 = 0; - let mut x1863: u32 = 0; - fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); - let mut x1864: u32 = 0; - let mut x1865: u32 = 0; - fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); - let mut x1866: u32 = 0; - let mut x1867: u32 = 0; - fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); - let mut x1868: u32 = 0; - let mut x1869: u32 = 0; - fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); - let mut x1870: u32 = 0; - let mut x1871: u32 = 0; - fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); - let mut x1872: u32 = 0; - let mut x1873: u32 = 0; - fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); - let mut x1874: u32 = 0; - let mut x1875: u32 = 0; - fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); - let mut x1876: u32 = 0; - let mut x1877: u32 = 0; - fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); - let mut x1878: u32 = 0; - let mut x1879: u32 = 0; - fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); - let mut x1880: u32 = 0; - let mut x1881: u32 = 0; - fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); - let mut x1882: u32 = 0; - let mut x1883: u32 = 0; - fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); - let mut x1884: u32 = 0; - let mut x1885: u32 = 0; - fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); - let mut x1886: u32 = 0; - let mut x1887: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); - let mut x1888: u32 = 0; - let mut x1889: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); - let mut x1890: u32 = 0; - let mut x1891: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); - let mut x1892: u32 = 0; - let mut x1893: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); - let mut x1894: u32 = 0; - let mut x1895: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); - let mut x1896: u32 = 0; - let mut x1897: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); - let mut x1898: u32 = 0; - let mut x1899: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); - let mut x1900: u32 = 0; - let mut x1901: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); - let mut x1902: u32 = 0; - let mut x1903: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); - let mut x1904: u32 = 0; - let mut x1905: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); - let mut x1906: u32 = 0; - let mut x1907: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); - let mut x1908: u32 = 0; - let mut x1909: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); - let mut x1910: u32 = 0; - let mut x1911: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); - let mut x1912: u32 = 0; - let mut x1913: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); - let mut x1914: u32 = 0; - let mut x1915: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); - let x1916: u32 = ((x1915 as u32) + x1855); - let mut x1917: u32 = 0; - let mut x1918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); - let mut x1919: u32 = 0; - let mut x1920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); - let mut x1921: u32 = 0; - let mut x1922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); - let mut x1923: u32 = 0; - let mut x1924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); - let mut x1925: u32 = 0; - let mut x1926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); - let mut x1927: u32 = 0; - let mut x1928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); - let mut x1929: u32 = 0; - let mut x1930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); - let mut x1931: u32 = 0; - let mut x1932: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); - let mut x1933: u32 = 0; - let mut x1934: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); - let mut x1935: u32 = 0; - let mut x1936: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); - let mut x1937: u32 = 0; - let mut x1938: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); - let mut x1939: u32 = 0; - let mut x1940: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); - let mut x1941: u32 = 0; - let mut x1942: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); - let mut x1943: u32 = 0; - let mut x1944: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); - let mut x1945: u32 = 0; - let mut x1946: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); - let mut x1947: u32 = 0; - let mut x1948: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); - let mut x1949: u32 = 0; - let mut x1950: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); - let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); - let mut x1952: u32 = 0; - let mut x1953: u32 = 0; - fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg2[15])); - let mut x1954: u32 = 0; - let mut x1955: u32 = 0; - fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg2[14])); - let mut x1956: u32 = 0; - let mut x1957: u32 = 0; - fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg2[13])); - let mut x1958: u32 = 0; - let mut x1959: u32 = 0; - fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg2[12])); - let mut x1960: u32 = 0; - let mut x1961: u32 = 0; - fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg2[11])); - let mut x1962: u32 = 0; - let mut x1963: u32 = 0; - fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg2[10])); - let mut x1964: u32 = 0; - let mut x1965: u32 = 0; - fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg2[9])); - let mut x1966: u32 = 0; - let mut x1967: u32 = 0; - fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg2[8])); - let mut x1968: u32 = 0; - let mut x1969: u32 = 0; - fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg2[7])); - let mut x1970: u32 = 0; - let mut x1971: u32 = 0; - fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg2[6])); - let mut x1972: u32 = 0; - let mut x1973: u32 = 0; - fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg2[5])); - let mut x1974: u32 = 0; - let mut x1975: u32 = 0; - fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg2[4])); - let mut x1976: u32 = 0; - let mut x1977: u32 = 0; - fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg2[3])); - let mut x1978: u32 = 0; - let mut x1979: u32 = 0; - fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg2[2])); - let mut x1980: u32 = 0; - let mut x1981: u32 = 0; - fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg2[1])); - let mut x1982: u32 = 0; - let mut x1983: u32 = 0; - fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg2[0])); - let mut x1984: u32 = 0; - let mut x1985: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); - let mut x1986: u32 = 0; - let mut x1987: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); - let mut x1988: u32 = 0; - let mut x1989: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); - let mut x1990: u32 = 0; - let mut x1991: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); - let mut x1992: u32 = 0; - let mut x1993: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); - let mut x1994: u32 = 0; - let mut x1995: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); - let mut x1996: u32 = 0; - let mut x1997: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); - let mut x1998: u32 = 0; - let mut x1999: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); - let mut x2000: u32 = 0; - let mut x2001: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); - let mut x2002: u32 = 0; - let mut x2003: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); - let mut x2004: u32 = 0; - let mut x2005: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); - let mut x2006: u32 = 0; - let mut x2007: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); - let mut x2008: u32 = 0; - let mut x2009: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); - let mut x2010: u32 = 0; - let mut x2011: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); - let mut x2012: u32 = 0; - let mut x2013: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); - let x2014: u32 = ((x2013 as u32) + x1953); - let mut x2015: u32 = 0; - let mut x2016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); - let mut x2017: u32 = 0; - let mut x2018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); - let mut x2019: u32 = 0; - let mut x2020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); - let mut x2021: u32 = 0; - let mut x2022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); - let mut x2023: u32 = 0; - let mut x2024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); - let mut x2025: u32 = 0; - let mut x2026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); - let mut x2027: u32 = 0; - let mut x2028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); - let mut x2029: u32 = 0; - let mut x2030: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); - let mut x2031: u32 = 0; - let mut x2032: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); - let mut x2033: u32 = 0; - let mut x2034: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); - let mut x2035: u32 = 0; - let mut x2036: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); - let mut x2037: u32 = 0; - let mut x2038: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); - let mut x2039: u32 = 0; - let mut x2040: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); - let mut x2041: u32 = 0; - let mut x2042: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); - let mut x2043: u32 = 0; - let mut x2044: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); - let mut x2045: u32 = 0; - let mut x2046: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); - let mut x2047: u32 = 0; - let mut x2048: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); - let mut x2049: u32 = 0; - let mut x2050: u32 = 0; - fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); - let mut x2051: u32 = 0; - let mut x2052: u32 = 0; - fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); - let mut x2053: u32 = 0; - let mut x2054: u32 = 0; - fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); - let mut x2055: u32 = 0; - let mut x2056: u32 = 0; - fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); - let mut x2057: u32 = 0; - let mut x2058: u32 = 0; - fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); - let mut x2059: u32 = 0; - let mut x2060: u32 = 0; - fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); - let mut x2061: u32 = 0; - let mut x2062: u32 = 0; - fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); - let mut x2063: u32 = 0; - let mut x2064: u32 = 0; - fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); - let mut x2065: u32 = 0; - let mut x2066: u32 = 0; - fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); - let mut x2067: u32 = 0; - let mut x2068: u32 = 0; - fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); - let mut x2069: u32 = 0; - let mut x2070: u32 = 0; - fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); - let mut x2071: u32 = 0; - let mut x2072: u32 = 0; - fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); - let mut x2073: u32 = 0; - let mut x2074: u32 = 0; - fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); - let mut x2075: u32 = 0; - let mut x2076: u32 = 0; - fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); - let mut x2077: u32 = 0; - let mut x2078: u32 = 0; - fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); - let mut x2079: u32 = 0; - let mut x2080: u32 = 0; - fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); - let mut x2081: u32 = 0; - let mut x2082: u32 = 0; - fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); - let mut x2083: u32 = 0; - let mut x2084: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); - let mut x2085: u32 = 0; - let mut x2086: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); - let mut x2087: u32 = 0; - let mut x2088: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); - let mut x2089: u32 = 0; - let mut x2090: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); - let mut x2091: u32 = 0; - let mut x2092: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); - let mut x2093: u32 = 0; - let mut x2094: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); - let mut x2095: u32 = 0; - let mut x2096: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); - let mut x2097: u32 = 0; - let mut x2098: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); - let mut x2099: u32 = 0; - let mut x2100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); - let mut x2101: u32 = 0; - let mut x2102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); - let mut x2103: u32 = 0; - let mut x2104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); - let mut x2105: u32 = 0; - let mut x2106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); - let mut x2107: u32 = 0; - let mut x2108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); - let mut x2109: u32 = 0; - let mut x2110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); - let mut x2111: u32 = 0; - let mut x2112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); - let x2113: u32 = ((x2112 as u32) + x2052); - let mut x2114: u32 = 0; - let mut x2115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); - let mut x2116: u32 = 0; - let mut x2117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); - let mut x2118: u32 = 0; - let mut x2119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); - let mut x2120: u32 = 0; - let mut x2121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); - let mut x2122: u32 = 0; - let mut x2123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); - let mut x2124: u32 = 0; - let mut x2125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); - let mut x2126: u32 = 0; - let mut x2127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); - let mut x2128: u32 = 0; - let mut x2129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); - let mut x2130: u32 = 0; - let mut x2131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); - let mut x2132: u32 = 0; - let mut x2133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); - let mut x2134: u32 = 0; - let mut x2135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); - let mut x2136: u32 = 0; - let mut x2137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); - let mut x2138: u32 = 0; - let mut x2139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); - let mut x2140: u32 = 0; - let mut x2141: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); - let mut x2142: u32 = 0; - let mut x2143: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); - let mut x2144: u32 = 0; - let mut x2145: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); - let mut x2146: u32 = 0; - let mut x2147: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); - let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); - let mut x2149: u32 = 0; - let mut x2150: u32 = 0; - fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg2[15])); - let mut x2151: u32 = 0; - let mut x2152: u32 = 0; - fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg2[14])); - let mut x2153: u32 = 0; - let mut x2154: u32 = 0; - fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg2[13])); - let mut x2155: u32 = 0; - let mut x2156: u32 = 0; - fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg2[12])); - let mut x2157: u32 = 0; - let mut x2158: u32 = 0; - fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg2[11])); - let mut x2159: u32 = 0; - let mut x2160: u32 = 0; - fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg2[10])); - let mut x2161: u32 = 0; - let mut x2162: u32 = 0; - fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg2[9])); - let mut x2163: u32 = 0; - let mut x2164: u32 = 0; - fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg2[8])); - let mut x2165: u32 = 0; - let mut x2166: u32 = 0; - fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg2[7])); - let mut x2167: u32 = 0; - let mut x2168: u32 = 0; - fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg2[6])); - let mut x2169: u32 = 0; - let mut x2170: u32 = 0; - fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg2[5])); - let mut x2171: u32 = 0; - let mut x2172: u32 = 0; - fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg2[4])); - let mut x2173: u32 = 0; - let mut x2174: u32 = 0; - fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg2[3])); - let mut x2175: u32 = 0; - let mut x2176: u32 = 0; - fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg2[2])); - let mut x2177: u32 = 0; - let mut x2178: u32 = 0; - fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg2[1])); - let mut x2179: u32 = 0; - let mut x2180: u32 = 0; - fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg2[0])); - let mut x2181: u32 = 0; - let mut x2182: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); - let mut x2183: u32 = 0; - let mut x2184: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); - let mut x2185: u32 = 0; - let mut x2186: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); - let mut x2187: u32 = 0; - let mut x2188: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); - let mut x2189: u32 = 0; - let mut x2190: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); - let mut x2191: u32 = 0; - let mut x2192: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); - let mut x2193: u32 = 0; - let mut x2194: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); - let mut x2195: u32 = 0; - let mut x2196: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); - let mut x2197: u32 = 0; - let mut x2198: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); - let mut x2199: u32 = 0; - let mut x2200: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); - let mut x2201: u32 = 0; - let mut x2202: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); - let mut x2203: u32 = 0; - let mut x2204: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); - let mut x2205: u32 = 0; - let mut x2206: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); - let mut x2207: u32 = 0; - let mut x2208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); - let mut x2209: u32 = 0; - let mut x2210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); - let x2211: u32 = ((x2210 as u32) + x2150); - let mut x2212: u32 = 0; - let mut x2213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); - let mut x2214: u32 = 0; - let mut x2215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); - let mut x2216: u32 = 0; - let mut x2217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); - let mut x2218: u32 = 0; - let mut x2219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); - let mut x2220: u32 = 0; - let mut x2221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); - let mut x2222: u32 = 0; - let mut x2223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); - let mut x2224: u32 = 0; - let mut x2225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); - let mut x2226: u32 = 0; - let mut x2227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); - let mut x2228: u32 = 0; - let mut x2229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); - let mut x2230: u32 = 0; - let mut x2231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); - let mut x2232: u32 = 0; - let mut x2233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); - let mut x2234: u32 = 0; - let mut x2235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); - let mut x2236: u32 = 0; - let mut x2237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); - let mut x2238: u32 = 0; - let mut x2239: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); - let mut x2240: u32 = 0; - let mut x2241: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); - let mut x2242: u32 = 0; - let mut x2243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); - let mut x2244: u32 = 0; - let mut x2245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); - let mut x2246: u32 = 0; - let mut x2247: u32 = 0; - fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); - let mut x2248: u32 = 0; - let mut x2249: u32 = 0; - fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); - let mut x2250: u32 = 0; - let mut x2251: u32 = 0; - fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); - let mut x2252: u32 = 0; - let mut x2253: u32 = 0; - fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); - let mut x2254: u32 = 0; - let mut x2255: u32 = 0; - fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); - let mut x2256: u32 = 0; - let mut x2257: u32 = 0; - fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); - let mut x2258: u32 = 0; - let mut x2259: u32 = 0; - fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); - let mut x2260: u32 = 0; - let mut x2261: u32 = 0; - fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); - let mut x2262: u32 = 0; - let mut x2263: u32 = 0; - fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); - let mut x2264: u32 = 0; - let mut x2265: u32 = 0; - fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); - let mut x2266: u32 = 0; - let mut x2267: u32 = 0; - fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); - let mut x2268: u32 = 0; - let mut x2269: u32 = 0; - fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); - let mut x2270: u32 = 0; - let mut x2271: u32 = 0; - fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); - let mut x2272: u32 = 0; - let mut x2273: u32 = 0; - fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); - let mut x2274: u32 = 0; - let mut x2275: u32 = 0; - fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); - let mut x2276: u32 = 0; - let mut x2277: u32 = 0; - fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); - let mut x2278: u32 = 0; - let mut x2279: u32 = 0; - fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); - let mut x2280: u32 = 0; - let mut x2281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); - let mut x2282: u32 = 0; - let mut x2283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); - let mut x2284: u32 = 0; - let mut x2285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); - let mut x2286: u32 = 0; - let mut x2287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); - let mut x2288: u32 = 0; - let mut x2289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); - let mut x2290: u32 = 0; - let mut x2291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); - let mut x2292: u32 = 0; - let mut x2293: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); - let mut x2294: u32 = 0; - let mut x2295: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); - let mut x2296: u32 = 0; - let mut x2297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); - let mut x2298: u32 = 0; - let mut x2299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); - let mut x2300: u32 = 0; - let mut x2301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); - let mut x2302: u32 = 0; - let mut x2303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); - let mut x2304: u32 = 0; - let mut x2305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); - let mut x2306: u32 = 0; - let mut x2307: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); - let mut x2308: u32 = 0; - let mut x2309: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); - let x2310: u32 = ((x2309 as u32) + x2249); - let mut x2311: u32 = 0; - let mut x2312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); - let mut x2313: u32 = 0; - let mut x2314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); - let mut x2315: u32 = 0; - let mut x2316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); - let mut x2317: u32 = 0; - let mut x2318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); - let mut x2319: u32 = 0; - let mut x2320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); - let mut x2321: u32 = 0; - let mut x2322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); - let mut x2323: u32 = 0; - let mut x2324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); - let mut x2325: u32 = 0; - let mut x2326: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); - let mut x2327: u32 = 0; - let mut x2328: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); - let mut x2329: u32 = 0; - let mut x2330: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); - let mut x2331: u32 = 0; - let mut x2332: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); - let mut x2333: u32 = 0; - let mut x2334: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); - let mut x2335: u32 = 0; - let mut x2336: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); - let mut x2337: u32 = 0; - let mut x2338: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); - let mut x2339: u32 = 0; - let mut x2340: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); - let mut x2341: u32 = 0; - let mut x2342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); - let mut x2343: u32 = 0; - let mut x2344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); - let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); - let mut x2346: u32 = 0; - let mut x2347: u32 = 0; - fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg2[15])); - let mut x2348: u32 = 0; - let mut x2349: u32 = 0; - fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg2[14])); - let mut x2350: u32 = 0; - let mut x2351: u32 = 0; - fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg2[13])); - let mut x2352: u32 = 0; - let mut x2353: u32 = 0; - fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg2[12])); - let mut x2354: u32 = 0; - let mut x2355: u32 = 0; - fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg2[11])); - let mut x2356: u32 = 0; - let mut x2357: u32 = 0; - fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg2[10])); - let mut x2358: u32 = 0; - let mut x2359: u32 = 0; - fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg2[9])); - let mut x2360: u32 = 0; - let mut x2361: u32 = 0; - fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg2[8])); - let mut x2362: u32 = 0; - let mut x2363: u32 = 0; - fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg2[7])); - let mut x2364: u32 = 0; - let mut x2365: u32 = 0; - fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg2[6])); - let mut x2366: u32 = 0; - let mut x2367: u32 = 0; - fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg2[5])); - let mut x2368: u32 = 0; - let mut x2369: u32 = 0; - fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg2[4])); - let mut x2370: u32 = 0; - let mut x2371: u32 = 0; - fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg2[3])); - let mut x2372: u32 = 0; - let mut x2373: u32 = 0; - fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg2[2])); - let mut x2374: u32 = 0; - let mut x2375: u32 = 0; - fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg2[1])); - let mut x2376: u32 = 0; - let mut x2377: u32 = 0; - fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg2[0])); - let mut x2378: u32 = 0; - let mut x2379: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); - let mut x2380: u32 = 0; - let mut x2381: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); - let mut x2382: u32 = 0; - let mut x2383: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); - let mut x2384: u32 = 0; - let mut x2385: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); - let mut x2386: u32 = 0; - let mut x2387: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); - let mut x2388: u32 = 0; - let mut x2389: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); - let mut x2390: u32 = 0; - let mut x2391: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); - let mut x2392: u32 = 0; - let mut x2393: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); - let mut x2394: u32 = 0; - let mut x2395: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); - let mut x2396: u32 = 0; - let mut x2397: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); - let mut x2398: u32 = 0; - let mut x2399: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); - let mut x2400: u32 = 0; - let mut x2401: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); - let mut x2402: u32 = 0; - let mut x2403: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); - let mut x2404: u32 = 0; - let mut x2405: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); - let mut x2406: u32 = 0; - let mut x2407: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); - let x2408: u32 = ((x2407 as u32) + x2347); - let mut x2409: u32 = 0; - let mut x2410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); - let mut x2411: u32 = 0; - let mut x2412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); - let mut x2413: u32 = 0; - let mut x2414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); - let mut x2415: u32 = 0; - let mut x2416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); - let mut x2417: u32 = 0; - let mut x2418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); - let mut x2419: u32 = 0; - let mut x2420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); - let mut x2421: u32 = 0; - let mut x2422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); - let mut x2423: u32 = 0; - let mut x2424: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); - let mut x2425: u32 = 0; - let mut x2426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); - let mut x2427: u32 = 0; - let mut x2428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); - let mut x2429: u32 = 0; - let mut x2430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); - let mut x2431: u32 = 0; - let mut x2432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); - let mut x2433: u32 = 0; - let mut x2434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); - let mut x2435: u32 = 0; - let mut x2436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); - let mut x2437: u32 = 0; - let mut x2438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); - let mut x2439: u32 = 0; - let mut x2440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); - let mut x2441: u32 = 0; - let mut x2442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); - let mut x2443: u32 = 0; - let mut x2444: u32 = 0; - fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); - let mut x2445: u32 = 0; - let mut x2446: u32 = 0; - fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); - let mut x2447: u32 = 0; - let mut x2448: u32 = 0; - fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); - let mut x2449: u32 = 0; - let mut x2450: u32 = 0; - fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); - let mut x2451: u32 = 0; - let mut x2452: u32 = 0; - fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); - let mut x2453: u32 = 0; - let mut x2454: u32 = 0; - fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); - let mut x2455: u32 = 0; - let mut x2456: u32 = 0; - fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); - let mut x2457: u32 = 0; - let mut x2458: u32 = 0; - fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); - let mut x2459: u32 = 0; - let mut x2460: u32 = 0; - fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); - let mut x2461: u32 = 0; - let mut x2462: u32 = 0; - fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); - let mut x2463: u32 = 0; - let mut x2464: u32 = 0; - fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); - let mut x2465: u32 = 0; - let mut x2466: u32 = 0; - fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); - let mut x2467: u32 = 0; - let mut x2468: u32 = 0; - fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); - let mut x2469: u32 = 0; - let mut x2470: u32 = 0; - fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); - let mut x2471: u32 = 0; - let mut x2472: u32 = 0; - fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); - let mut x2473: u32 = 0; - let mut x2474: u32 = 0; - fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); - let mut x2475: u32 = 0; - let mut x2476: u32 = 0; - fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); - let mut x2477: u32 = 0; - let mut x2478: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); - let mut x2479: u32 = 0; - let mut x2480: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); - let mut x2481: u32 = 0; - let mut x2482: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); - let mut x2483: u32 = 0; - let mut x2484: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); - let mut x2485: u32 = 0; - let mut x2486: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); - let mut x2487: u32 = 0; - let mut x2488: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); - let mut x2489: u32 = 0; - let mut x2490: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); - let mut x2491: u32 = 0; - let mut x2492: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); - let mut x2493: u32 = 0; - let mut x2494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); - let mut x2495: u32 = 0; - let mut x2496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); - let mut x2497: u32 = 0; - let mut x2498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); - let mut x2499: u32 = 0; - let mut x2500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); - let mut x2501: u32 = 0; - let mut x2502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); - let mut x2503: u32 = 0; - let mut x2504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); - let mut x2505: u32 = 0; - let mut x2506: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); - let x2507: u32 = ((x2506 as u32) + x2446); - let mut x2508: u32 = 0; - let mut x2509: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); - let mut x2510: u32 = 0; - let mut x2511: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); - let mut x2512: u32 = 0; - let mut x2513: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); - let mut x2514: u32 = 0; - let mut x2515: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); - let mut x2516: u32 = 0; - let mut x2517: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); - let mut x2518: u32 = 0; - let mut x2519: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); - let mut x2520: u32 = 0; - let mut x2521: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); - let mut x2522: u32 = 0; - let mut x2523: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); - let mut x2524: u32 = 0; - let mut x2525: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); - let mut x2526: u32 = 0; - let mut x2527: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); - let mut x2528: u32 = 0; - let mut x2529: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); - let mut x2530: u32 = 0; - let mut x2531: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); - let mut x2532: u32 = 0; - let mut x2533: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); - let mut x2534: u32 = 0; - let mut x2535: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); - let mut x2536: u32 = 0; - let mut x2537: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); - let mut x2538: u32 = 0; - let mut x2539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); - let mut x2540: u32 = 0; - let mut x2541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); - let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); - let mut x2543: u32 = 0; - let mut x2544: u32 = 0; - fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg2[15])); - let mut x2545: u32 = 0; - let mut x2546: u32 = 0; - fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg2[14])); - let mut x2547: u32 = 0; - let mut x2548: u32 = 0; - fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg2[13])); - let mut x2549: u32 = 0; - let mut x2550: u32 = 0; - fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg2[12])); - let mut x2551: u32 = 0; - let mut x2552: u32 = 0; - fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg2[11])); - let mut x2553: u32 = 0; - let mut x2554: u32 = 0; - fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg2[10])); - let mut x2555: u32 = 0; - let mut x2556: u32 = 0; - fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg2[9])); - let mut x2557: u32 = 0; - let mut x2558: u32 = 0; - fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg2[8])); - let mut x2559: u32 = 0; - let mut x2560: u32 = 0; - fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg2[7])); - let mut x2561: u32 = 0; - let mut x2562: u32 = 0; - fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg2[6])); - let mut x2563: u32 = 0; - let mut x2564: u32 = 0; - fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg2[5])); - let mut x2565: u32 = 0; - let mut x2566: u32 = 0; - fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg2[4])); - let mut x2567: u32 = 0; - let mut x2568: u32 = 0; - fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg2[3])); - let mut x2569: u32 = 0; - let mut x2570: u32 = 0; - fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg2[2])); - let mut x2571: u32 = 0; - let mut x2572: u32 = 0; - fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg2[1])); - let mut x2573: u32 = 0; - let mut x2574: u32 = 0; - fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg2[0])); - let mut x2575: u32 = 0; - let mut x2576: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); - let mut x2577: u32 = 0; - let mut x2578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); - let mut x2579: u32 = 0; - let mut x2580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); - let mut x2581: u32 = 0; - let mut x2582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); - let mut x2583: u32 = 0; - let mut x2584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); - let mut x2585: u32 = 0; - let mut x2586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); - let mut x2587: u32 = 0; - let mut x2588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); - let mut x2589: u32 = 0; - let mut x2590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); - let mut x2591: u32 = 0; - let mut x2592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); - let mut x2593: u32 = 0; - let mut x2594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); - let mut x2595: u32 = 0; - let mut x2596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); - let mut x2597: u32 = 0; - let mut x2598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); - let mut x2599: u32 = 0; - let mut x2600: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); - let mut x2601: u32 = 0; - let mut x2602: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); - let mut x2603: u32 = 0; - let mut x2604: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); - let x2605: u32 = ((x2604 as u32) + x2544); - let mut x2606: u32 = 0; - let mut x2607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); - let mut x2608: u32 = 0; - let mut x2609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); - let mut x2610: u32 = 0; - let mut x2611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); - let mut x2612: u32 = 0; - let mut x2613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); - let mut x2614: u32 = 0; - let mut x2615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); - let mut x2616: u32 = 0; - let mut x2617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); - let mut x2618: u32 = 0; - let mut x2619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); - let mut x2620: u32 = 0; - let mut x2621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); - let mut x2622: u32 = 0; - let mut x2623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); - let mut x2624: u32 = 0; - let mut x2625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); - let mut x2626: u32 = 0; - let mut x2627: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); - let mut x2628: u32 = 0; - let mut x2629: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); - let mut x2630: u32 = 0; - let mut x2631: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); - let mut x2632: u32 = 0; - let mut x2633: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); - let mut x2634: u32 = 0; - let mut x2635: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); - let mut x2636: u32 = 0; - let mut x2637: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); - let mut x2638: u32 = 0; - let mut x2639: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); - let mut x2640: u32 = 0; - let mut x2641: u32 = 0; - fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); - let mut x2642: u32 = 0; - let mut x2643: u32 = 0; - fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); - let mut x2644: u32 = 0; - let mut x2645: u32 = 0; - fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); - let mut x2646: u32 = 0; - let mut x2647: u32 = 0; - fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); - let mut x2648: u32 = 0; - let mut x2649: u32 = 0; - fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); - let mut x2650: u32 = 0; - let mut x2651: u32 = 0; - fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); - let mut x2652: u32 = 0; - let mut x2653: u32 = 0; - fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); - let mut x2654: u32 = 0; - let mut x2655: u32 = 0; - fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); - let mut x2656: u32 = 0; - let mut x2657: u32 = 0; - fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); - let mut x2658: u32 = 0; - let mut x2659: u32 = 0; - fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); - let mut x2660: u32 = 0; - let mut x2661: u32 = 0; - fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); - let mut x2662: u32 = 0; - let mut x2663: u32 = 0; - fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); - let mut x2664: u32 = 0; - let mut x2665: u32 = 0; - fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); - let mut x2666: u32 = 0; - let mut x2667: u32 = 0; - fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); - let mut x2668: u32 = 0; - let mut x2669: u32 = 0; - fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); - let mut x2670: u32 = 0; - let mut x2671: u32 = 0; - fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); - let mut x2672: u32 = 0; - let mut x2673: u32 = 0; - fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); - let mut x2674: u32 = 0; - let mut x2675: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); - let mut x2676: u32 = 0; - let mut x2677: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); - let mut x2678: u32 = 0; - let mut x2679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); - let mut x2680: u32 = 0; - let mut x2681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); - let mut x2682: u32 = 0; - let mut x2683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); - let mut x2684: u32 = 0; - let mut x2685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); - let mut x2686: u32 = 0; - let mut x2687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); - let mut x2688: u32 = 0; - let mut x2689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); - let mut x2690: u32 = 0; - let mut x2691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); - let mut x2692: u32 = 0; - let mut x2693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); - let mut x2694: u32 = 0; - let mut x2695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); - let mut x2696: u32 = 0; - let mut x2697: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); - let mut x2698: u32 = 0; - let mut x2699: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); - let mut x2700: u32 = 0; - let mut x2701: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); - let mut x2702: u32 = 0; - let mut x2703: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); - let x2704: u32 = ((x2703 as u32) + x2643); - let mut x2705: u32 = 0; - let mut x2706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); - let mut x2707: u32 = 0; - let mut x2708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); - let mut x2709: u32 = 0; - let mut x2710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); - let mut x2711: u32 = 0; - let mut x2712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); - let mut x2713: u32 = 0; - let mut x2714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); - let mut x2715: u32 = 0; - let mut x2716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); - let mut x2717: u32 = 0; - let mut x2718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); - let mut x2719: u32 = 0; - let mut x2720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); - let mut x2721: u32 = 0; - let mut x2722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); - let mut x2723: u32 = 0; - let mut x2724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); - let mut x2725: u32 = 0; - let mut x2726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); - let mut x2727: u32 = 0; - let mut x2728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); - let mut x2729: u32 = 0; - let mut x2730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); - let mut x2731: u32 = 0; - let mut x2732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); - let mut x2733: u32 = 0; - let mut x2734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); - let mut x2735: u32 = 0; - let mut x2736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); - let mut x2737: u32 = 0; - let mut x2738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); - let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); - let mut x2740: u32 = 0; - let mut x2741: u32 = 0; - fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg2[15])); - let mut x2742: u32 = 0; - let mut x2743: u32 = 0; - fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg2[14])); - let mut x2744: u32 = 0; - let mut x2745: u32 = 0; - fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg2[13])); - let mut x2746: u32 = 0; - let mut x2747: u32 = 0; - fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg2[12])); - let mut x2748: u32 = 0; - let mut x2749: u32 = 0; - fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg2[11])); - let mut x2750: u32 = 0; - let mut x2751: u32 = 0; - fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg2[10])); - let mut x2752: u32 = 0; - let mut x2753: u32 = 0; - fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg2[9])); - let mut x2754: u32 = 0; - let mut x2755: u32 = 0; - fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg2[8])); - let mut x2756: u32 = 0; - let mut x2757: u32 = 0; - fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg2[7])); - let mut x2758: u32 = 0; - let mut x2759: u32 = 0; - fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg2[6])); - let mut x2760: u32 = 0; - let mut x2761: u32 = 0; - fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg2[5])); - let mut x2762: u32 = 0; - let mut x2763: u32 = 0; - fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg2[4])); - let mut x2764: u32 = 0; - let mut x2765: u32 = 0; - fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg2[3])); - let mut x2766: u32 = 0; - let mut x2767: u32 = 0; - fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg2[2])); - let mut x2768: u32 = 0; - let mut x2769: u32 = 0; - fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg2[1])); - let mut x2770: u32 = 0; - let mut x2771: u32 = 0; - fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg2[0])); - let mut x2772: u32 = 0; - let mut x2773: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); - let mut x2774: u32 = 0; - let mut x2775: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); - let mut x2776: u32 = 0; - let mut x2777: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); - let mut x2778: u32 = 0; - let mut x2779: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); - let mut x2780: u32 = 0; - let mut x2781: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); - let mut x2782: u32 = 0; - let mut x2783: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); - let mut x2784: u32 = 0; - let mut x2785: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); - let mut x2786: u32 = 0; - let mut x2787: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); - let mut x2788: u32 = 0; - let mut x2789: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); - let mut x2790: u32 = 0; - let mut x2791: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); - let mut x2792: u32 = 0; - let mut x2793: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); - let mut x2794: u32 = 0; - let mut x2795: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); - let mut x2796: u32 = 0; - let mut x2797: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); - let mut x2798: u32 = 0; - let mut x2799: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); - let mut x2800: u32 = 0; - let mut x2801: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); - let x2802: u32 = ((x2801 as u32) + x2741); - let mut x2803: u32 = 0; - let mut x2804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); - let mut x2805: u32 = 0; - let mut x2806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); - let mut x2807: u32 = 0; - let mut x2808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); - let mut x2809: u32 = 0; - let mut x2810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); - let mut x2811: u32 = 0; - let mut x2812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); - let mut x2813: u32 = 0; - let mut x2814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); - let mut x2815: u32 = 0; - let mut x2816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); - let mut x2817: u32 = 0; - let mut x2818: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); - let mut x2819: u32 = 0; - let mut x2820: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); - let mut x2821: u32 = 0; - let mut x2822: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); - let mut x2823: u32 = 0; - let mut x2824: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); - let mut x2825: u32 = 0; - let mut x2826: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); - let mut x2827: u32 = 0; - let mut x2828: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); - let mut x2829: u32 = 0; - let mut x2830: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); - let mut x2831: u32 = 0; - let mut x2832: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); - let mut x2833: u32 = 0; - let mut x2834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); - let mut x2835: u32 = 0; - let mut x2836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); - let mut x2837: u32 = 0; - let mut x2838: u32 = 0; - fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); - let mut x2839: u32 = 0; - let mut x2840: u32 = 0; - fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); - let mut x2841: u32 = 0; - let mut x2842: u32 = 0; - fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); - let mut x2843: u32 = 0; - let mut x2844: u32 = 0; - fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); - let mut x2845: u32 = 0; - let mut x2846: u32 = 0; - fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); - let mut x2847: u32 = 0; - let mut x2848: u32 = 0; - fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); - let mut x2849: u32 = 0; - let mut x2850: u32 = 0; - fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); - let mut x2851: u32 = 0; - let mut x2852: u32 = 0; - fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); - let mut x2853: u32 = 0; - let mut x2854: u32 = 0; - fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); - let mut x2855: u32 = 0; - let mut x2856: u32 = 0; - fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); - let mut x2857: u32 = 0; - let mut x2858: u32 = 0; - fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); - let mut x2859: u32 = 0; - let mut x2860: u32 = 0; - fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); - let mut x2861: u32 = 0; - let mut x2862: u32 = 0; - fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); - let mut x2863: u32 = 0; - let mut x2864: u32 = 0; - fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); - let mut x2865: u32 = 0; - let mut x2866: u32 = 0; - fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); - let mut x2867: u32 = 0; - let mut x2868: u32 = 0; - fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); - let mut x2869: u32 = 0; - let mut x2870: u32 = 0; - fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); - let mut x2871: u32 = 0; - let mut x2872: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); - let mut x2873: u32 = 0; - let mut x2874: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); - let mut x2875: u32 = 0; - let mut x2876: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); - let mut x2877: u32 = 0; - let mut x2878: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); - let mut x2879: u32 = 0; - let mut x2880: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); - let mut x2881: u32 = 0; - let mut x2882: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); - let mut x2883: u32 = 0; - let mut x2884: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); - let mut x2885: u32 = 0; - let mut x2886: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); - let mut x2887: u32 = 0; - let mut x2888: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); - let mut x2889: u32 = 0; - let mut x2890: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); - let mut x2891: u32 = 0; - let mut x2892: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); - let mut x2893: u32 = 0; - let mut x2894: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); - let mut x2895: u32 = 0; - let mut x2896: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); - let mut x2897: u32 = 0; - let mut x2898: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); - let mut x2899: u32 = 0; - let mut x2900: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); - let x2901: u32 = ((x2900 as u32) + x2840); - let mut x2902: u32 = 0; - let mut x2903: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); - let mut x2904: u32 = 0; - let mut x2905: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); - let mut x2906: u32 = 0; - let mut x2907: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); - let mut x2908: u32 = 0; - let mut x2909: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); - let mut x2910: u32 = 0; - let mut x2911: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); - let mut x2912: u32 = 0; - let mut x2913: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); - let mut x2914: u32 = 0; - let mut x2915: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); - let mut x2916: u32 = 0; - let mut x2917: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); - let mut x2918: u32 = 0; - let mut x2919: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); - let mut x2920: u32 = 0; - let mut x2921: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); - let mut x2922: u32 = 0; - let mut x2923: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); - let mut x2924: u32 = 0; - let mut x2925: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); - let mut x2926: u32 = 0; - let mut x2927: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); - let mut x2928: u32 = 0; - let mut x2929: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); - let mut x2930: u32 = 0; - let mut x2931: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); - let mut x2932: u32 = 0; - let mut x2933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); - let mut x2934: u32 = 0; - let mut x2935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); - let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); - let mut x2937: u32 = 0; - let mut x2938: u32 = 0; - fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg2[15])); - let mut x2939: u32 = 0; - let mut x2940: u32 = 0; - fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg2[14])); - let mut x2941: u32 = 0; - let mut x2942: u32 = 0; - fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg2[13])); - let mut x2943: u32 = 0; - let mut x2944: u32 = 0; - fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg2[12])); - let mut x2945: u32 = 0; - let mut x2946: u32 = 0; - fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg2[11])); - let mut x2947: u32 = 0; - let mut x2948: u32 = 0; - fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg2[10])); - let mut x2949: u32 = 0; - let mut x2950: u32 = 0; - fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg2[9])); - let mut x2951: u32 = 0; - let mut x2952: u32 = 0; - fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg2[8])); - let mut x2953: u32 = 0; - let mut x2954: u32 = 0; - fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg2[7])); - let mut x2955: u32 = 0; - let mut x2956: u32 = 0; - fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg2[6])); - let mut x2957: u32 = 0; - let mut x2958: u32 = 0; - fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg2[5])); - let mut x2959: u32 = 0; - let mut x2960: u32 = 0; - fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg2[4])); - let mut x2961: u32 = 0; - let mut x2962: u32 = 0; - fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg2[3])); - let mut x2963: u32 = 0; - let mut x2964: u32 = 0; - fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg2[2])); - let mut x2965: u32 = 0; - let mut x2966: u32 = 0; - fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg2[1])); - let mut x2967: u32 = 0; - let mut x2968: u32 = 0; - fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg2[0])); - let mut x2969: u32 = 0; - let mut x2970: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); - let mut x2971: u32 = 0; - let mut x2972: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); - let mut x2973: u32 = 0; - let mut x2974: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); - let mut x2975: u32 = 0; - let mut x2976: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); - let mut x2977: u32 = 0; - let mut x2978: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); - let mut x2979: u32 = 0; - let mut x2980: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); - let mut x2981: u32 = 0; - let mut x2982: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); - let mut x2983: u32 = 0; - let mut x2984: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); - let mut x2985: u32 = 0; - let mut x2986: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); - let mut x2987: u32 = 0; - let mut x2988: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); - let mut x2989: u32 = 0; - let mut x2990: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); - let mut x2991: u32 = 0; - let mut x2992: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); - let mut x2993: u32 = 0; - let mut x2994: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); - let mut x2995: u32 = 0; - let mut x2996: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); - let mut x2997: u32 = 0; - let mut x2998: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); - let x2999: u32 = ((x2998 as u32) + x2938); - let mut x3000: u32 = 0; - let mut x3001: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); - let mut x3002: u32 = 0; - let mut x3003: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); - let mut x3004: u32 = 0; - let mut x3005: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); - let mut x3006: u32 = 0; - let mut x3007: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); - let mut x3008: u32 = 0; - let mut x3009: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); - let mut x3010: u32 = 0; - let mut x3011: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); - let mut x3012: u32 = 0; - let mut x3013: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); - let mut x3014: u32 = 0; - let mut x3015: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); - let mut x3016: u32 = 0; - let mut x3017: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); - let mut x3018: u32 = 0; - let mut x3019: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); - let mut x3020: u32 = 0; - let mut x3021: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); - let mut x3022: u32 = 0; - let mut x3023: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); - let mut x3024: u32 = 0; - let mut x3025: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); - let mut x3026: u32 = 0; - let mut x3027: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); - let mut x3028: u32 = 0; - let mut x3029: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); - let mut x3030: u32 = 0; - let mut x3031: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); - let mut x3032: u32 = 0; - let mut x3033: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); - let mut x3034: u32 = 0; - let mut x3035: u32 = 0; - fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); - let mut x3036: u32 = 0; - let mut x3037: u32 = 0; - fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); - let mut x3038: u32 = 0; - let mut x3039: u32 = 0; - fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); - let mut x3040: u32 = 0; - let mut x3041: u32 = 0; - fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); - let mut x3042: u32 = 0; - let mut x3043: u32 = 0; - fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); - let mut x3044: u32 = 0; - let mut x3045: u32 = 0; - fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); - let mut x3046: u32 = 0; - let mut x3047: u32 = 0; - fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); - let mut x3048: u32 = 0; - let mut x3049: u32 = 0; - fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); - let mut x3050: u32 = 0; - let mut x3051: u32 = 0; - fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); - let mut x3052: u32 = 0; - let mut x3053: u32 = 0; - fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); - let mut x3054: u32 = 0; - let mut x3055: u32 = 0; - fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); - let mut x3056: u32 = 0; - let mut x3057: u32 = 0; - fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); - let mut x3058: u32 = 0; - let mut x3059: u32 = 0; - fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); - let mut x3060: u32 = 0; - let mut x3061: u32 = 0; - fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); - let mut x3062: u32 = 0; - let mut x3063: u32 = 0; - fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); - let mut x3064: u32 = 0; - let mut x3065: u32 = 0; - fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); - let mut x3066: u32 = 0; - let mut x3067: u32 = 0; - fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); - let mut x3068: u32 = 0; - let mut x3069: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); - let mut x3070: u32 = 0; - let mut x3071: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); - let mut x3072: u32 = 0; - let mut x3073: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); - let mut x3074: u32 = 0; - let mut x3075: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); - let mut x3076: u32 = 0; - let mut x3077: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); - let mut x3078: u32 = 0; - let mut x3079: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); - let mut x3080: u32 = 0; - let mut x3081: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); - let mut x3082: u32 = 0; - let mut x3083: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); - let mut x3084: u32 = 0; - let mut x3085: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); - let mut x3086: u32 = 0; - let mut x3087: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); - let mut x3088: u32 = 0; - let mut x3089: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); - let mut x3090: u32 = 0; - let mut x3091: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); - let mut x3092: u32 = 0; - let mut x3093: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); - let mut x3094: u32 = 0; - let mut x3095: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); - let mut x3096: u32 = 0; - let mut x3097: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); - let x3098: u32 = ((x3097 as u32) + x3037); - let mut x3099: u32 = 0; - let mut x3100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); - let mut x3101: u32 = 0; - let mut x3102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); - let mut x3103: u32 = 0; - let mut x3104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); - let mut x3105: u32 = 0; - let mut x3106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); - let mut x3107: u32 = 0; - let mut x3108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); - let mut x3109: u32 = 0; - let mut x3110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); - let mut x3111: u32 = 0; - let mut x3112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); - let mut x3113: u32 = 0; - let mut x3114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); - let mut x3115: u32 = 0; - let mut x3116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); - let mut x3117: u32 = 0; - let mut x3118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); - let mut x3119: u32 = 0; - let mut x3120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); - let mut x3121: u32 = 0; - let mut x3122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); - let mut x3123: u32 = 0; - let mut x3124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); - let mut x3125: u32 = 0; - let mut x3126: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); - let mut x3127: u32 = 0; - let mut x3128: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); - let mut x3129: u32 = 0; - let mut x3130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); - let mut x3131: u32 = 0; - let mut x3132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); - let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); - let mut x3134: u32 = 0; - let mut x3135: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); - let mut x3136: u32 = 0; - let mut x3137: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); - let mut x3138: u32 = 0; - let mut x3139: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); - let mut x3140: u32 = 0; - let mut x3141: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); - let mut x3142: u32 = 0; - let mut x3143: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); - let mut x3144: u32 = 0; - let mut x3145: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); - let mut x3146: u32 = 0; - let mut x3147: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); - let mut x3148: u32 = 0; - let mut x3149: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); - let mut x3150: u32 = 0; - let mut x3151: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); - let mut x3152: u32 = 0; - let mut x3153: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); - let mut x3154: u32 = 0; - let mut x3155: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); - let mut x3156: u32 = 0; - let mut x3157: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); - let mut x3158: u32 = 0; - let mut x3159: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); - let mut x3160: u32 = 0; - let mut x3161: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); - let mut x3162: u32 = 0; - let mut x3163: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); - let mut x3164: u32 = 0; - let mut x3165: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); - let mut x3166: u32 = 0; - let mut x3167: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); - let mut x3168: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); - let mut x3169: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); - let mut x3170: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); - let mut x3171: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); - let mut x3172: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); - let mut x3173: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); - let mut x3174: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); - let mut x3175: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); - let mut x3176: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); - let mut x3177: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); - let mut x3178: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); - let mut x3179: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); - let mut x3180: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); - let mut x3181: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); - let mut x3182: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); - let mut x3183: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); - out1[0] = x3168; - out1[1] = x3169; - out1[2] = x3170; - out1[3] = x3171; - out1[4] = x3172; - out1[5] = x3173; - out1[6] = x3174; - out1[7] = x3175; - out1[8] = x3176; - out1[9] = x3177; - out1[10] = x3178; - out1[11] = x3179; - out1[12] = x3180; - out1[13] = x3181; - out1[14] = x3182; - out1[15] = x3183; +pub fn fiat_bp512_mul( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg2[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg2[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg2[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg2[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg2[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg2[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg2[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg2[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg2[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg2[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg2[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg2[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg2[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg2[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg2[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg2[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg2[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg2[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg2[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg2[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg2[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg2[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg2[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg2[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg2[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg2[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg2[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg2[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg2[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg2[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg2[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg2[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg2[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg2[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg2[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg2[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg2[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg2[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg2[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg2[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg2[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg2[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg2[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg2[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg2[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg2[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg2[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg2[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg2[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg2[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg2[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg2[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg2[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg2[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg2[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg2[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg2[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg2[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg2[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg2[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg2[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg2[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg2[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg2[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg2[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg2[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg2[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg2[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg2[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg2[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg2[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg2[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg2[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg2[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg2[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg2[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg2[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg2[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg2[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg2[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg2[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg2[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg2[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg2[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg2[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg2[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg2[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg2[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg2[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg2[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg2[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg2[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg2[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg2[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg2[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg2[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg2[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg2[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg2[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg2[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg2[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg2[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg2[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg2[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg2[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg2[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg2[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg2[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg2[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg2[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg2[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg2[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg2[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg2[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg2[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg2[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg2[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg2[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg2[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg2[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg2[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg2[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg2[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg2[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg2[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg2[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg2[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg2[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg2[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg2[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg2[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg2[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg2[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg2[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg2[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg2[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg2[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg2[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg2[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg2[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg2[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg2[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg2[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg2[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg2[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg2[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg2[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg2[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg2[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg2[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg2[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg2[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg2[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg2[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg2[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg2[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg2[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg2[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg2[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg2[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg2[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg2[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg2[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg2[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg2[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg2[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg2[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg2[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg2[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg2[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg2[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg2[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg2[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg2[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg2[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg2[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg2[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg2[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg2[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg2[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg2[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg2[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg2[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg2[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg2[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg2[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg2[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg2[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg2[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg2[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg2[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg2[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg2[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg2[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg2[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg2[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg2[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg2[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg2[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg2[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg2[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg2[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg2[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg2[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg2[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg2[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg2[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg2[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg2[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg2[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg2[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg2[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg2[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg2[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg2[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg2[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg2[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg2[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg2[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg2[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg2[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg2[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg2[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg2[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg2[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg2[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg2[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg2[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg2[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg2[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg2[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg2[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg2[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg2[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg2[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg2[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg2[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg2[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg2[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg2[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg2[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg2[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg2[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg2[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg2[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg2[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg2[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg2[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg2[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg2[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg2[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg2[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg2[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg2[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg2[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg2[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; } /// The function fiat_bp512_square squares a field element in the Montgomery domain. @@ -4943,4774 +4959,4777 @@ pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let x1: u32 = (arg1[1]); - let x2: u32 = (arg1[2]); - let x3: u32 = (arg1[3]); - let x4: u32 = (arg1[4]); - let x5: u32 = (arg1[5]); - let x6: u32 = (arg1[6]); - let x7: u32 = (arg1[7]); - let x8: u32 = (arg1[8]); - let x9: u32 = (arg1[9]); - let x10: u32 = (arg1[10]); - let x11: u32 = (arg1[11]); - let x12: u32 = (arg1[12]); - let x13: u32 = (arg1[13]); - let x14: u32 = (arg1[14]); - let x15: u32 = (arg1[15]); - let x16: u32 = (arg1[0]); - let mut x17: u32 = 0; - let mut x18: u32 = 0; - fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg1[15])); - let mut x19: u32 = 0; - let mut x20: u32 = 0; - fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg1[14])); - let mut x21: u32 = 0; - let mut x22: u32 = 0; - fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg1[13])); - let mut x23: u32 = 0; - let mut x24: u32 = 0; - fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg1[12])); - let mut x25: u32 = 0; - let mut x26: u32 = 0; - fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg1[11])); - let mut x27: u32 = 0; - let mut x28: u32 = 0; - fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg1[10])); - let mut x29: u32 = 0; - let mut x30: u32 = 0; - fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg1[9])); - let mut x31: u32 = 0; - let mut x32: u32 = 0; - fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg1[8])); - let mut x33: u32 = 0; - let mut x34: u32 = 0; - fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg1[7])); - let mut x35: u32 = 0; - let mut x36: u32 = 0; - fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg1[6])); - let mut x37: u32 = 0; - let mut x38: u32 = 0; - fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg1[5])); - let mut x39: u32 = 0; - let mut x40: u32 = 0; - fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg1[4])); - let mut x41: u32 = 0; - let mut x42: u32 = 0; - fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg1[3])); - let mut x43: u32 = 0; - let mut x44: u32 = 0; - fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg1[2])); - let mut x45: u32 = 0; - let mut x46: u32 = 0; - fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg1[1])); - let mut x47: u32 = 0; - let mut x48: u32 = 0; - fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg1[0])); - let mut x49: u32 = 0; - let mut x50: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); - let mut x51: u32 = 0; - let mut x52: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); - let mut x53: u32 = 0; - let mut x54: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); - let mut x55: u32 = 0; - let mut x56: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); - let mut x57: u32 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); - let mut x59: u32 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); - let mut x61: u32 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); - let mut x63: u32 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); - let mut x65: u32 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); - let mut x67: u32 = 0; - let mut x68: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); - let mut x69: u32 = 0; - let mut x70: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); - let mut x71: u32 = 0; - let mut x72: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); - let mut x73: u32 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); - let mut x75: u32 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); - let mut x77: u32 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); - let x79: u32 = ((x78 as u32) + x18); - let mut x80: u32 = 0; - let mut x81: u32 = 0; - fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); - let mut x82: u32 = 0; - let mut x83: u32 = 0; - fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); - let mut x84: u32 = 0; - let mut x85: u32 = 0; - fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); - let mut x86: u32 = 0; - let mut x87: u32 = 0; - fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); - let mut x88: u32 = 0; - let mut x89: u32 = 0; - fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); - let mut x90: u32 = 0; - let mut x91: u32 = 0; - fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); - let mut x92: u32 = 0; - let mut x93: u32 = 0; - fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); - let mut x94: u32 = 0; - let mut x95: u32 = 0; - fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); - let mut x96: u32 = 0; - let mut x97: u32 = 0; - fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); - let mut x98: u32 = 0; - let mut x99: u32 = 0; - fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); - let mut x100: u32 = 0; - let mut x101: u32 = 0; - fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); - let mut x102: u32 = 0; - let mut x103: u32 = 0; - fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); - let mut x104: u32 = 0; - let mut x105: u32 = 0; - fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); - let mut x106: u32 = 0; - let mut x107: u32 = 0; - fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); - let mut x108: u32 = 0; - let mut x109: u32 = 0; - fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); - let mut x110: u32 = 0; - let mut x111: u32 = 0; - fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); - let mut x112: u32 = 0; - let mut x113: u32 = 0; - fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); - let mut x114: u32 = 0; - let mut x115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); - let mut x116: u32 = 0; - let mut x117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); - let mut x118: u32 = 0; - let mut x119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); - let mut x120: u32 = 0; - let mut x121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); - let mut x122: u32 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); - let mut x124: u32 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); - let mut x126: u32 = 0; - let mut x127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); - let mut x128: u32 = 0; - let mut x129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); - let mut x130: u32 = 0; - let mut x131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); - let mut x132: u32 = 0; - let mut x133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); - let mut x134: u32 = 0; - let mut x135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); - let mut x136: u32 = 0; - let mut x137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); - let mut x138: u32 = 0; - let mut x139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); - let mut x140: u32 = 0; - let mut x141: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); - let mut x142: u32 = 0; - let mut x143: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); - let x144: u32 = ((x143 as u32) + x83); - let mut x145: u32 = 0; - let mut x146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); - let mut x147: u32 = 0; - let mut x148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); - let mut x149: u32 = 0; - let mut x150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); - let mut x151: u32 = 0; - let mut x152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); - let mut x153: u32 = 0; - let mut x154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); - let mut x155: u32 = 0; - let mut x156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); - let mut x157: u32 = 0; - let mut x158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); - let mut x159: u32 = 0; - let mut x160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); - let mut x161: u32 = 0; - let mut x162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); - let mut x163: u32 = 0; - let mut x164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); - let mut x165: u32 = 0; - let mut x166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); - let mut x167: u32 = 0; - let mut x168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); - let mut x169: u32 = 0; - let mut x170: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); - let mut x171: u32 = 0; - let mut x172: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); - let mut x173: u32 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); - let mut x175: u32 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); - let mut x177: u32 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); - let mut x179: u32 = 0; - let mut x180: u32 = 0; - fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg1[15])); - let mut x181: u32 = 0; - let mut x182: u32 = 0; - fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg1[14])); - let mut x183: u32 = 0; - let mut x184: u32 = 0; - fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg1[13])); - let mut x185: u32 = 0; - let mut x186: u32 = 0; - fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg1[12])); - let mut x187: u32 = 0; - let mut x188: u32 = 0; - fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg1[11])); - let mut x189: u32 = 0; - let mut x190: u32 = 0; - fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg1[10])); - let mut x191: u32 = 0; - let mut x192: u32 = 0; - fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg1[9])); - let mut x193: u32 = 0; - let mut x194: u32 = 0; - fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg1[8])); - let mut x195: u32 = 0; - let mut x196: u32 = 0; - fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg1[7])); - let mut x197: u32 = 0; - let mut x198: u32 = 0; - fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg1[6])); - let mut x199: u32 = 0; - let mut x200: u32 = 0; - fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg1[5])); - let mut x201: u32 = 0; - let mut x202: u32 = 0; - fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg1[4])); - let mut x203: u32 = 0; - let mut x204: u32 = 0; - fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg1[3])); - let mut x205: u32 = 0; - let mut x206: u32 = 0; - fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg1[2])); - let mut x207: u32 = 0; - let mut x208: u32 = 0; - fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg1[1])); - let mut x209: u32 = 0; - let mut x210: u32 = 0; - fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg1[0])); - let mut x211: u32 = 0; - let mut x212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); - let mut x213: u32 = 0; - let mut x214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); - let mut x215: u32 = 0; - let mut x216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); - let mut x217: u32 = 0; - let mut x218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); - let mut x219: u32 = 0; - let mut x220: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); - let mut x221: u32 = 0; - let mut x222: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); - let mut x223: u32 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); - let mut x225: u32 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); - let mut x227: u32 = 0; - let mut x228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); - let mut x229: u32 = 0; - let mut x230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); - let mut x231: u32 = 0; - let mut x232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); - let mut x233: u32 = 0; - let mut x234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); - let mut x235: u32 = 0; - let mut x236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); - let mut x237: u32 = 0; - let mut x238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); - let mut x239: u32 = 0; - let mut x240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); - let x241: u32 = ((x240 as u32) + x180); - let mut x242: u32 = 0; - let mut x243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); - let mut x244: u32 = 0; - let mut x245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); - let mut x246: u32 = 0; - let mut x247: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); - let mut x248: u32 = 0; - let mut x249: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); - let mut x250: u32 = 0; - let mut x251: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); - let mut x252: u32 = 0; - let mut x253: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); - let mut x254: u32 = 0; - let mut x255: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); - let mut x256: u32 = 0; - let mut x257: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); - let mut x258: u32 = 0; - let mut x259: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); - let mut x260: u32 = 0; - let mut x261: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); - let mut x262: u32 = 0; - let mut x263: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); - let mut x264: u32 = 0; - let mut x265: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); - let mut x266: u32 = 0; - let mut x267: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); - let mut x268: u32 = 0; - let mut x269: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); - let mut x270: u32 = 0; - let mut x271: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); - let mut x272: u32 = 0; - let mut x273: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); - let mut x274: u32 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); - let mut x276: u32 = 0; - let mut x277: u32 = 0; - fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); - let mut x278: u32 = 0; - let mut x279: u32 = 0; - fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); - let mut x280: u32 = 0; - let mut x281: u32 = 0; - fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); - let mut x282: u32 = 0; - let mut x283: u32 = 0; - fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); - let mut x284: u32 = 0; - let mut x285: u32 = 0; - fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); - let mut x286: u32 = 0; - let mut x287: u32 = 0; - fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); - let mut x288: u32 = 0; - let mut x289: u32 = 0; - fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); - let mut x290: u32 = 0; - let mut x291: u32 = 0; - fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); - let mut x292: u32 = 0; - let mut x293: u32 = 0; - fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); - let mut x294: u32 = 0; - let mut x295: u32 = 0; - fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); - let mut x296: u32 = 0; - let mut x297: u32 = 0; - fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); - let mut x298: u32 = 0; - let mut x299: u32 = 0; - fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); - let mut x300: u32 = 0; - let mut x301: u32 = 0; - fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); - let mut x302: u32 = 0; - let mut x303: u32 = 0; - fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); - let mut x304: u32 = 0; - let mut x305: u32 = 0; - fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); - let mut x306: u32 = 0; - let mut x307: u32 = 0; - fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); - let mut x308: u32 = 0; - let mut x309: u32 = 0; - fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); - let mut x310: u32 = 0; - let mut x311: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); - let mut x312: u32 = 0; - let mut x313: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); - let mut x314: u32 = 0; - let mut x315: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); - let mut x316: u32 = 0; - let mut x317: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); - let mut x318: u32 = 0; - let mut x319: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); - let mut x320: u32 = 0; - let mut x321: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); - let mut x322: u32 = 0; - let mut x323: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); - let mut x324: u32 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); - let mut x326: u32 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); - let mut x328: u32 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); - let mut x330: u32 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); - let mut x332: u32 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); - let mut x334: u32 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); - let mut x336: u32 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); - let mut x338: u32 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); - let x340: u32 = ((x339 as u32) + x279); - let mut x341: u32 = 0; - let mut x342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); - let mut x343: u32 = 0; - let mut x344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); - let mut x345: u32 = 0; - let mut x346: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); - let mut x347: u32 = 0; - let mut x348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); - let mut x349: u32 = 0; - let mut x350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); - let mut x351: u32 = 0; - let mut x352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); - let mut x353: u32 = 0; - let mut x354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); - let mut x355: u32 = 0; - let mut x356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); - let mut x357: u32 = 0; - let mut x358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); - let mut x359: u32 = 0; - let mut x360: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); - let mut x361: u32 = 0; - let mut x362: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); - let mut x363: u32 = 0; - let mut x364: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); - let mut x365: u32 = 0; - let mut x366: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); - let mut x367: u32 = 0; - let mut x368: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); - let mut x369: u32 = 0; - let mut x370: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); - let mut x371: u32 = 0; - let mut x372: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); - let mut x373: u32 = 0; - let mut x374: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); - let x375: u32 = ((x374 as u32) + (x275 as u32)); - let mut x376: u32 = 0; - let mut x377: u32 = 0; - fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg1[15])); - let mut x378: u32 = 0; - let mut x379: u32 = 0; - fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg1[14])); - let mut x380: u32 = 0; - let mut x381: u32 = 0; - fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg1[13])); - let mut x382: u32 = 0; - let mut x383: u32 = 0; - fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg1[12])); - let mut x384: u32 = 0; - let mut x385: u32 = 0; - fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg1[11])); - let mut x386: u32 = 0; - let mut x387: u32 = 0; - fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg1[10])); - let mut x388: u32 = 0; - let mut x389: u32 = 0; - fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg1[9])); - let mut x390: u32 = 0; - let mut x391: u32 = 0; - fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg1[8])); - let mut x392: u32 = 0; - let mut x393: u32 = 0; - fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg1[7])); - let mut x394: u32 = 0; - let mut x395: u32 = 0; - fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg1[6])); - let mut x396: u32 = 0; - let mut x397: u32 = 0; - fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg1[5])); - let mut x398: u32 = 0; - let mut x399: u32 = 0; - fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg1[4])); - let mut x400: u32 = 0; - let mut x401: u32 = 0; - fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg1[3])); - let mut x402: u32 = 0; - let mut x403: u32 = 0; - fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg1[2])); - let mut x404: u32 = 0; - let mut x405: u32 = 0; - fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg1[1])); - let mut x406: u32 = 0; - let mut x407: u32 = 0; - fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg1[0])); - let mut x408: u32 = 0; - let mut x409: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); - let mut x410: u32 = 0; - let mut x411: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); - let mut x412: u32 = 0; - let mut x413: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); - let mut x414: u32 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); - let mut x416: u32 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); - let mut x418: u32 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); - let mut x420: u32 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); - let mut x422: u32 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); - let mut x424: u32 = 0; - let mut x425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); - let mut x426: u32 = 0; - let mut x427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); - let mut x428: u32 = 0; - let mut x429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); - let mut x430: u32 = 0; - let mut x431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); - let mut x432: u32 = 0; - let mut x433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); - let mut x434: u32 = 0; - let mut x435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); - let mut x436: u32 = 0; - let mut x437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); - let x438: u32 = ((x437 as u32) + x377); - let mut x439: u32 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); - let mut x441: u32 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); - let mut x443: u32 = 0; - let mut x444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); - let mut x445: u32 = 0; - let mut x446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); - let mut x447: u32 = 0; - let mut x448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); - let mut x449: u32 = 0; - let mut x450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); - let mut x451: u32 = 0; - let mut x452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); - let mut x453: u32 = 0; - let mut x454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); - let mut x455: u32 = 0; - let mut x456: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); - let mut x457: u32 = 0; - let mut x458: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); - let mut x459: u32 = 0; - let mut x460: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); - let mut x461: u32 = 0; - let mut x462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); - let mut x463: u32 = 0; - let mut x464: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); - let mut x465: u32 = 0; - let mut x466: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); - let mut x467: u32 = 0; - let mut x468: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); - let mut x469: u32 = 0; - let mut x470: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); - let mut x471: u32 = 0; - let mut x472: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); - let mut x473: u32 = 0; - let mut x474: u32 = 0; - fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); - let mut x475: u32 = 0; - let mut x476: u32 = 0; - fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); - let mut x477: u32 = 0; - let mut x478: u32 = 0; - fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); - let mut x479: u32 = 0; - let mut x480: u32 = 0; - fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); - let mut x481: u32 = 0; - let mut x482: u32 = 0; - fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); - let mut x483: u32 = 0; - let mut x484: u32 = 0; - fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); - let mut x485: u32 = 0; - let mut x486: u32 = 0; - fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); - let mut x487: u32 = 0; - let mut x488: u32 = 0; - fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); - let mut x489: u32 = 0; - let mut x490: u32 = 0; - fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); - let mut x491: u32 = 0; - let mut x492: u32 = 0; - fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); - let mut x493: u32 = 0; - let mut x494: u32 = 0; - fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); - let mut x495: u32 = 0; - let mut x496: u32 = 0; - fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); - let mut x497: u32 = 0; - let mut x498: u32 = 0; - fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); - let mut x499: u32 = 0; - let mut x500: u32 = 0; - fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); - let mut x501: u32 = 0; - let mut x502: u32 = 0; - fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); - let mut x503: u32 = 0; - let mut x504: u32 = 0; - fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); - let mut x505: u32 = 0; - let mut x506: u32 = 0; - fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); - let mut x507: u32 = 0; - let mut x508: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); - let mut x509: u32 = 0; - let mut x510: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); - let mut x511: u32 = 0; - let mut x512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); - let mut x513: u32 = 0; - let mut x514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); - let mut x515: u32 = 0; - let mut x516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); - let mut x517: u32 = 0; - let mut x518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); - let mut x519: u32 = 0; - let mut x520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); - let mut x521: u32 = 0; - let mut x522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); - let mut x523: u32 = 0; - let mut x524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); - let mut x525: u32 = 0; - let mut x526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); - let mut x527: u32 = 0; - let mut x528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); - let mut x529: u32 = 0; - let mut x530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); - let mut x531: u32 = 0; - let mut x532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); - let mut x533: u32 = 0; - let mut x534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); - let mut x535: u32 = 0; - let mut x536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); - let x537: u32 = ((x536 as u32) + x476); - let mut x538: u32 = 0; - let mut x539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); - let mut x540: u32 = 0; - let mut x541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); - let mut x542: u32 = 0; - let mut x543: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); - let mut x544: u32 = 0; - let mut x545: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); - let mut x546: u32 = 0; - let mut x547: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); - let mut x548: u32 = 0; - let mut x549: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); - let mut x550: u32 = 0; - let mut x551: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); - let mut x552: u32 = 0; - let mut x553: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); - let mut x554: u32 = 0; - let mut x555: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); - let mut x556: u32 = 0; - let mut x557: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); - let mut x558: u32 = 0; - let mut x559: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); - let mut x560: u32 = 0; - let mut x561: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); - let mut x562: u32 = 0; - let mut x563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); - let mut x564: u32 = 0; - let mut x565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); - let mut x566: u32 = 0; - let mut x567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); - let mut x568: u32 = 0; - let mut x569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); - let mut x570: u32 = 0; - let mut x571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); - let x572: u32 = ((x571 as u32) + (x472 as u32)); - let mut x573: u32 = 0; - let mut x574: u32 = 0; - fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg1[15])); - let mut x575: u32 = 0; - let mut x576: u32 = 0; - fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg1[14])); - let mut x577: u32 = 0; - let mut x578: u32 = 0; - fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg1[13])); - let mut x579: u32 = 0; - let mut x580: u32 = 0; - fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg1[12])); - let mut x581: u32 = 0; - let mut x582: u32 = 0; - fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg1[11])); - let mut x583: u32 = 0; - let mut x584: u32 = 0; - fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg1[10])); - let mut x585: u32 = 0; - let mut x586: u32 = 0; - fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg1[9])); - let mut x587: u32 = 0; - let mut x588: u32 = 0; - fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg1[8])); - let mut x589: u32 = 0; - let mut x590: u32 = 0; - fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg1[7])); - let mut x591: u32 = 0; - let mut x592: u32 = 0; - fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg1[6])); - let mut x593: u32 = 0; - let mut x594: u32 = 0; - fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg1[5])); - let mut x595: u32 = 0; - let mut x596: u32 = 0; - fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg1[4])); - let mut x597: u32 = 0; - let mut x598: u32 = 0; - fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg1[3])); - let mut x599: u32 = 0; - let mut x600: u32 = 0; - fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg1[2])); - let mut x601: u32 = 0; - let mut x602: u32 = 0; - fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg1[1])); - let mut x603: u32 = 0; - let mut x604: u32 = 0; - fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg1[0])); - let mut x605: u32 = 0; - let mut x606: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); - let mut x607: u32 = 0; - let mut x608: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); - let mut x609: u32 = 0; - let mut x610: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); - let mut x611: u32 = 0; - let mut x612: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); - let mut x613: u32 = 0; - let mut x614: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); - let mut x615: u32 = 0; - let mut x616: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); - let mut x617: u32 = 0; - let mut x618: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); - let mut x619: u32 = 0; - let mut x620: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); - let mut x621: u32 = 0; - let mut x622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); - let mut x623: u32 = 0; - let mut x624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); - let mut x625: u32 = 0; - let mut x626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); - let mut x627: u32 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); - let mut x629: u32 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); - let mut x631: u32 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); - let mut x633: u32 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); - let x635: u32 = ((x634 as u32) + x574); - let mut x636: u32 = 0; - let mut x637: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); - let mut x638: u32 = 0; - let mut x639: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); - let mut x640: u32 = 0; - let mut x641: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); - let mut x642: u32 = 0; - let mut x643: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); - let mut x644: u32 = 0; - let mut x645: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); - let mut x646: u32 = 0; - let mut x647: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); - let mut x648: u32 = 0; - let mut x649: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); - let mut x650: u32 = 0; - let mut x651: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); - let mut x652: u32 = 0; - let mut x653: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); - let mut x654: u32 = 0; - let mut x655: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); - let mut x656: u32 = 0; - let mut x657: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); - let mut x658: u32 = 0; - let mut x659: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); - let mut x660: u32 = 0; - let mut x661: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); - let mut x662: u32 = 0; - let mut x663: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); - let mut x664: u32 = 0; - let mut x665: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); - let mut x666: u32 = 0; - let mut x667: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); - let mut x668: u32 = 0; - let mut x669: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); - let mut x670: u32 = 0; - let mut x671: u32 = 0; - fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); - let mut x672: u32 = 0; - let mut x673: u32 = 0; - fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); - let mut x674: u32 = 0; - let mut x675: u32 = 0; - fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); - let mut x676: u32 = 0; - let mut x677: u32 = 0; - fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); - let mut x678: u32 = 0; - let mut x679: u32 = 0; - fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); - let mut x680: u32 = 0; - let mut x681: u32 = 0; - fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); - let mut x682: u32 = 0; - let mut x683: u32 = 0; - fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); - let mut x684: u32 = 0; - let mut x685: u32 = 0; - fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); - let mut x686: u32 = 0; - let mut x687: u32 = 0; - fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); - let mut x688: u32 = 0; - let mut x689: u32 = 0; - fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); - let mut x690: u32 = 0; - let mut x691: u32 = 0; - fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); - let mut x692: u32 = 0; - let mut x693: u32 = 0; - fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); - let mut x694: u32 = 0; - let mut x695: u32 = 0; - fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); - let mut x696: u32 = 0; - let mut x697: u32 = 0; - fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); - let mut x698: u32 = 0; - let mut x699: u32 = 0; - fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); - let mut x700: u32 = 0; - let mut x701: u32 = 0; - fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); - let mut x702: u32 = 0; - let mut x703: u32 = 0; - fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); - let mut x704: u32 = 0; - let mut x705: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); - let mut x706: u32 = 0; - let mut x707: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); - let mut x708: u32 = 0; - let mut x709: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); - let mut x710: u32 = 0; - let mut x711: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); - let mut x712: u32 = 0; - let mut x713: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); - let mut x714: u32 = 0; - let mut x715: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); - let mut x716: u32 = 0; - let mut x717: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); - let mut x718: u32 = 0; - let mut x719: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); - let mut x720: u32 = 0; - let mut x721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); - let mut x722: u32 = 0; - let mut x723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); - let mut x724: u32 = 0; - let mut x725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); - let mut x726: u32 = 0; - let mut x727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); - let mut x728: u32 = 0; - let mut x729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); - let mut x730: u32 = 0; - let mut x731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); - let mut x732: u32 = 0; - let mut x733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); - let x734: u32 = ((x733 as u32) + x673); - let mut x735: u32 = 0; - let mut x736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); - let mut x737: u32 = 0; - let mut x738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); - let mut x739: u32 = 0; - let mut x740: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); - let mut x741: u32 = 0; - let mut x742: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); - let mut x743: u32 = 0; - let mut x744: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); - let mut x745: u32 = 0; - let mut x746: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); - let mut x747: u32 = 0; - let mut x748: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); - let mut x749: u32 = 0; - let mut x750: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); - let mut x751: u32 = 0; - let mut x752: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); - let mut x753: u32 = 0; - let mut x754: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); - let mut x755: u32 = 0; - let mut x756: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); - let mut x757: u32 = 0; - let mut x758: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); - let mut x759: u32 = 0; - let mut x760: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); - let mut x761: u32 = 0; - let mut x762: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); - let mut x763: u32 = 0; - let mut x764: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); - let mut x765: u32 = 0; - let mut x766: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); - let mut x767: u32 = 0; - let mut x768: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); - let x769: u32 = ((x768 as u32) + (x669 as u32)); - let mut x770: u32 = 0; - let mut x771: u32 = 0; - fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg1[15])); - let mut x772: u32 = 0; - let mut x773: u32 = 0; - fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg1[14])); - let mut x774: u32 = 0; - let mut x775: u32 = 0; - fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg1[13])); - let mut x776: u32 = 0; - let mut x777: u32 = 0; - fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg1[12])); - let mut x778: u32 = 0; - let mut x779: u32 = 0; - fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg1[11])); - let mut x780: u32 = 0; - let mut x781: u32 = 0; - fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg1[10])); - let mut x782: u32 = 0; - let mut x783: u32 = 0; - fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg1[9])); - let mut x784: u32 = 0; - let mut x785: u32 = 0; - fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg1[8])); - let mut x786: u32 = 0; - let mut x787: u32 = 0; - fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg1[7])); - let mut x788: u32 = 0; - let mut x789: u32 = 0; - fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg1[6])); - let mut x790: u32 = 0; - let mut x791: u32 = 0; - fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg1[5])); - let mut x792: u32 = 0; - let mut x793: u32 = 0; - fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg1[4])); - let mut x794: u32 = 0; - let mut x795: u32 = 0; - fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg1[3])); - let mut x796: u32 = 0; - let mut x797: u32 = 0; - fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg1[2])); - let mut x798: u32 = 0; - let mut x799: u32 = 0; - fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg1[1])); - let mut x800: u32 = 0; - let mut x801: u32 = 0; - fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg1[0])); - let mut x802: u32 = 0; - let mut x803: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); - let mut x804: u32 = 0; - let mut x805: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); - let mut x806: u32 = 0; - let mut x807: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); - let mut x808: u32 = 0; - let mut x809: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); - let mut x810: u32 = 0; - let mut x811: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); - let mut x812: u32 = 0; - let mut x813: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); - let mut x814: u32 = 0; - let mut x815: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); - let mut x816: u32 = 0; - let mut x817: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); - let mut x818: u32 = 0; - let mut x819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); - let mut x820: u32 = 0; - let mut x821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); - let mut x822: u32 = 0; - let mut x823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); - let mut x824: u32 = 0; - let mut x825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); - let mut x826: u32 = 0; - let mut x827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); - let mut x828: u32 = 0; - let mut x829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); - let mut x830: u32 = 0; - let mut x831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); - let x832: u32 = ((x831 as u32) + x771); - let mut x833: u32 = 0; - let mut x834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); - let mut x835: u32 = 0; - let mut x836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); - let mut x837: u32 = 0; - let mut x838: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); - let mut x839: u32 = 0; - let mut x840: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); - let mut x841: u32 = 0; - let mut x842: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); - let mut x843: u32 = 0; - let mut x844: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); - let mut x845: u32 = 0; - let mut x846: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); - let mut x847: u32 = 0; - let mut x848: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); - let mut x849: u32 = 0; - let mut x850: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); - let mut x851: u32 = 0; - let mut x852: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); - let mut x853: u32 = 0; - let mut x854: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); - let mut x855: u32 = 0; - let mut x856: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); - let mut x857: u32 = 0; - let mut x858: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); - let mut x859: u32 = 0; - let mut x860: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); - let mut x861: u32 = 0; - let mut x862: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); - let mut x863: u32 = 0; - let mut x864: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); - let mut x865: u32 = 0; - let mut x866: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); - let mut x867: u32 = 0; - let mut x868: u32 = 0; - fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); - let mut x869: u32 = 0; - let mut x870: u32 = 0; - fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); - let mut x871: u32 = 0; - let mut x872: u32 = 0; - fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); - let mut x873: u32 = 0; - let mut x874: u32 = 0; - fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); - let mut x875: u32 = 0; - let mut x876: u32 = 0; - fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); - let mut x877: u32 = 0; - let mut x878: u32 = 0; - fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); - let mut x879: u32 = 0; - let mut x880: u32 = 0; - fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); - let mut x881: u32 = 0; - let mut x882: u32 = 0; - fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); - let mut x883: u32 = 0; - let mut x884: u32 = 0; - fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); - let mut x885: u32 = 0; - let mut x886: u32 = 0; - fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); - let mut x887: u32 = 0; - let mut x888: u32 = 0; - fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); - let mut x889: u32 = 0; - let mut x890: u32 = 0; - fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); - let mut x891: u32 = 0; - let mut x892: u32 = 0; - fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); - let mut x893: u32 = 0; - let mut x894: u32 = 0; - fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); - let mut x895: u32 = 0; - let mut x896: u32 = 0; - fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); - let mut x897: u32 = 0; - let mut x898: u32 = 0; - fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); - let mut x899: u32 = 0; - let mut x900: u32 = 0; - fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); - let mut x901: u32 = 0; - let mut x902: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); - let mut x903: u32 = 0; - let mut x904: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); - let mut x905: u32 = 0; - let mut x906: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); - let mut x907: u32 = 0; - let mut x908: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); - let mut x909: u32 = 0; - let mut x910: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); - let mut x911: u32 = 0; - let mut x912: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); - let mut x913: u32 = 0; - let mut x914: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); - let mut x915: u32 = 0; - let mut x916: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); - let mut x917: u32 = 0; - let mut x918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); - let mut x919: u32 = 0; - let mut x920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); - let mut x921: u32 = 0; - let mut x922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); - let mut x923: u32 = 0; - let mut x924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); - let mut x925: u32 = 0; - let mut x926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); - let mut x927: u32 = 0; - let mut x928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); - let mut x929: u32 = 0; - let mut x930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); - let x931: u32 = ((x930 as u32) + x870); - let mut x932: u32 = 0; - let mut x933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); - let mut x934: u32 = 0; - let mut x935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); - let mut x936: u32 = 0; - let mut x937: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); - let mut x938: u32 = 0; - let mut x939: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); - let mut x940: u32 = 0; - let mut x941: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); - let mut x942: u32 = 0; - let mut x943: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); - let mut x944: u32 = 0; - let mut x945: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); - let mut x946: u32 = 0; - let mut x947: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); - let mut x948: u32 = 0; - let mut x949: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); - let mut x950: u32 = 0; - let mut x951: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); - let mut x952: u32 = 0; - let mut x953: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); - let mut x954: u32 = 0; - let mut x955: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); - let mut x956: u32 = 0; - let mut x957: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); - let mut x958: u32 = 0; - let mut x959: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); - let mut x960: u32 = 0; - let mut x961: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); - let mut x962: u32 = 0; - let mut x963: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); - let mut x964: u32 = 0; - let mut x965: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); - let x966: u32 = ((x965 as u32) + (x866 as u32)); - let mut x967: u32 = 0; - let mut x968: u32 = 0; - fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg1[15])); - let mut x969: u32 = 0; - let mut x970: u32 = 0; - fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg1[14])); - let mut x971: u32 = 0; - let mut x972: u32 = 0; - fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg1[13])); - let mut x973: u32 = 0; - let mut x974: u32 = 0; - fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg1[12])); - let mut x975: u32 = 0; - let mut x976: u32 = 0; - fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg1[11])); - let mut x977: u32 = 0; - let mut x978: u32 = 0; - fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg1[10])); - let mut x979: u32 = 0; - let mut x980: u32 = 0; - fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg1[9])); - let mut x981: u32 = 0; - let mut x982: u32 = 0; - fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg1[8])); - let mut x983: u32 = 0; - let mut x984: u32 = 0; - fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg1[7])); - let mut x985: u32 = 0; - let mut x986: u32 = 0; - fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg1[6])); - let mut x987: u32 = 0; - let mut x988: u32 = 0; - fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg1[5])); - let mut x989: u32 = 0; - let mut x990: u32 = 0; - fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg1[4])); - let mut x991: u32 = 0; - let mut x992: u32 = 0; - fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg1[3])); - let mut x993: u32 = 0; - let mut x994: u32 = 0; - fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg1[2])); - let mut x995: u32 = 0; - let mut x996: u32 = 0; - fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg1[1])); - let mut x997: u32 = 0; - let mut x998: u32 = 0; - fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg1[0])); - let mut x999: u32 = 0; - let mut x1000: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); - let mut x1001: u32 = 0; - let mut x1002: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); - let mut x1003: u32 = 0; - let mut x1004: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); - let mut x1005: u32 = 0; - let mut x1006: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); - let mut x1007: u32 = 0; - let mut x1008: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); - let mut x1009: u32 = 0; - let mut x1010: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); - let mut x1011: u32 = 0; - let mut x1012: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); - let mut x1013: u32 = 0; - let mut x1014: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); - let mut x1015: u32 = 0; - let mut x1016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); - let mut x1017: u32 = 0; - let mut x1018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); - let mut x1019: u32 = 0; - let mut x1020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); - let mut x1021: u32 = 0; - let mut x1022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); - let mut x1023: u32 = 0; - let mut x1024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); - let mut x1025: u32 = 0; - let mut x1026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); - let mut x1027: u32 = 0; - let mut x1028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); - let x1029: u32 = ((x1028 as u32) + x968); - let mut x1030: u32 = 0; - let mut x1031: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); - let mut x1032: u32 = 0; - let mut x1033: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); - let mut x1034: u32 = 0; - let mut x1035: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); - let mut x1036: u32 = 0; - let mut x1037: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); - let mut x1038: u32 = 0; - let mut x1039: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); - let mut x1040: u32 = 0; - let mut x1041: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); - let mut x1042: u32 = 0; - let mut x1043: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); - let mut x1044: u32 = 0; - let mut x1045: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); - let mut x1046: u32 = 0; - let mut x1047: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); - let mut x1048: u32 = 0; - let mut x1049: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); - let mut x1050: u32 = 0; - let mut x1051: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); - let mut x1052: u32 = 0; - let mut x1053: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); - let mut x1054: u32 = 0; - let mut x1055: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); - let mut x1056: u32 = 0; - let mut x1057: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); - let mut x1058: u32 = 0; - let mut x1059: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); - let mut x1060: u32 = 0; - let mut x1061: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); - let mut x1062: u32 = 0; - let mut x1063: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); - let mut x1064: u32 = 0; - let mut x1065: u32 = 0; - fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); - let mut x1066: u32 = 0; - let mut x1067: u32 = 0; - fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); - let mut x1068: u32 = 0; - let mut x1069: u32 = 0; - fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); - let mut x1070: u32 = 0; - let mut x1071: u32 = 0; - fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); - let mut x1072: u32 = 0; - let mut x1073: u32 = 0; - fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); - let mut x1074: u32 = 0; - let mut x1075: u32 = 0; - fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); - let mut x1076: u32 = 0; - let mut x1077: u32 = 0; - fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); - let mut x1078: u32 = 0; - let mut x1079: u32 = 0; - fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); - let mut x1080: u32 = 0; - let mut x1081: u32 = 0; - fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); - let mut x1082: u32 = 0; - let mut x1083: u32 = 0; - fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); - let mut x1084: u32 = 0; - let mut x1085: u32 = 0; - fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); - let mut x1086: u32 = 0; - let mut x1087: u32 = 0; - fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); - let mut x1088: u32 = 0; - let mut x1089: u32 = 0; - fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); - let mut x1090: u32 = 0; - let mut x1091: u32 = 0; - fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); - let mut x1092: u32 = 0; - let mut x1093: u32 = 0; - fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); - let mut x1094: u32 = 0; - let mut x1095: u32 = 0; - fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); - let mut x1096: u32 = 0; - let mut x1097: u32 = 0; - fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); - let mut x1098: u32 = 0; - let mut x1099: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); - let mut x1100: u32 = 0; - let mut x1101: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); - let mut x1102: u32 = 0; - let mut x1103: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); - let mut x1104: u32 = 0; - let mut x1105: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); - let mut x1106: u32 = 0; - let mut x1107: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); - let mut x1108: u32 = 0; - let mut x1109: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); - let mut x1110: u32 = 0; - let mut x1111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); - let mut x1112: u32 = 0; - let mut x1113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); - let mut x1114: u32 = 0; - let mut x1115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); - let mut x1116: u32 = 0; - let mut x1117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); - let mut x1118: u32 = 0; - let mut x1119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); - let mut x1120: u32 = 0; - let mut x1121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); - let mut x1122: u32 = 0; - let mut x1123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); - let mut x1124: u32 = 0; - let mut x1125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); - let mut x1126: u32 = 0; - let mut x1127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); - let x1128: u32 = ((x1127 as u32) + x1067); - let mut x1129: u32 = 0; - let mut x1130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); - let mut x1131: u32 = 0; - let mut x1132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); - let mut x1133: u32 = 0; - let mut x1134: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); - let mut x1135: u32 = 0; - let mut x1136: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); - let mut x1137: u32 = 0; - let mut x1138: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); - let mut x1139: u32 = 0; - let mut x1140: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); - let mut x1141: u32 = 0; - let mut x1142: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); - let mut x1143: u32 = 0; - let mut x1144: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); - let mut x1145: u32 = 0; - let mut x1146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); - let mut x1147: u32 = 0; - let mut x1148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); - let mut x1149: u32 = 0; - let mut x1150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); - let mut x1151: u32 = 0; - let mut x1152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); - let mut x1153: u32 = 0; - let mut x1154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); - let mut x1155: u32 = 0; - let mut x1156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); - let mut x1157: u32 = 0; - let mut x1158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); - let mut x1159: u32 = 0; - let mut x1160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); - let mut x1161: u32 = 0; - let mut x1162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); - let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); - let mut x1164: u32 = 0; - let mut x1165: u32 = 0; - fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg1[15])); - let mut x1166: u32 = 0; - let mut x1167: u32 = 0; - fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg1[14])); - let mut x1168: u32 = 0; - let mut x1169: u32 = 0; - fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg1[13])); - let mut x1170: u32 = 0; - let mut x1171: u32 = 0; - fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg1[12])); - let mut x1172: u32 = 0; - let mut x1173: u32 = 0; - fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg1[11])); - let mut x1174: u32 = 0; - let mut x1175: u32 = 0; - fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg1[10])); - let mut x1176: u32 = 0; - let mut x1177: u32 = 0; - fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg1[9])); - let mut x1178: u32 = 0; - let mut x1179: u32 = 0; - fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg1[8])); - let mut x1180: u32 = 0; - let mut x1181: u32 = 0; - fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg1[7])); - let mut x1182: u32 = 0; - let mut x1183: u32 = 0; - fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg1[6])); - let mut x1184: u32 = 0; - let mut x1185: u32 = 0; - fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg1[5])); - let mut x1186: u32 = 0; - let mut x1187: u32 = 0; - fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg1[4])); - let mut x1188: u32 = 0; - let mut x1189: u32 = 0; - fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg1[3])); - let mut x1190: u32 = 0; - let mut x1191: u32 = 0; - fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg1[2])); - let mut x1192: u32 = 0; - let mut x1193: u32 = 0; - fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg1[1])); - let mut x1194: u32 = 0; - let mut x1195: u32 = 0; - fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg1[0])); - let mut x1196: u32 = 0; - let mut x1197: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); - let mut x1198: u32 = 0; - let mut x1199: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); - let mut x1200: u32 = 0; - let mut x1201: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); - let mut x1202: u32 = 0; - let mut x1203: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); - let mut x1204: u32 = 0; - let mut x1205: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); - let mut x1206: u32 = 0; - let mut x1207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); - let mut x1208: u32 = 0; - let mut x1209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); - let mut x1210: u32 = 0; - let mut x1211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); - let mut x1212: u32 = 0; - let mut x1213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); - let mut x1214: u32 = 0; - let mut x1215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); - let mut x1216: u32 = 0; - let mut x1217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); - let mut x1218: u32 = 0; - let mut x1219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); - let mut x1220: u32 = 0; - let mut x1221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); - let mut x1222: u32 = 0; - let mut x1223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); - let mut x1224: u32 = 0; - let mut x1225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); - let x1226: u32 = ((x1225 as u32) + x1165); - let mut x1227: u32 = 0; - let mut x1228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); - let mut x1229: u32 = 0; - let mut x1230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); - let mut x1231: u32 = 0; - let mut x1232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); - let mut x1233: u32 = 0; - let mut x1234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); - let mut x1235: u32 = 0; - let mut x1236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); - let mut x1237: u32 = 0; - let mut x1238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); - let mut x1239: u32 = 0; - let mut x1240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); - let mut x1241: u32 = 0; - let mut x1242: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); - let mut x1243: u32 = 0; - let mut x1244: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); - let mut x1245: u32 = 0; - let mut x1246: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); - let mut x1247: u32 = 0; - let mut x1248: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); - let mut x1249: u32 = 0; - let mut x1250: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); - let mut x1251: u32 = 0; - let mut x1252: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); - let mut x1253: u32 = 0; - let mut x1254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); - let mut x1255: u32 = 0; - let mut x1256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); - let mut x1257: u32 = 0; - let mut x1258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); - let mut x1259: u32 = 0; - let mut x1260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); - let mut x1261: u32 = 0; - let mut x1262: u32 = 0; - fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); - let mut x1263: u32 = 0; - let mut x1264: u32 = 0; - fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); - let mut x1265: u32 = 0; - let mut x1266: u32 = 0; - fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); - let mut x1267: u32 = 0; - let mut x1268: u32 = 0; - fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); - let mut x1269: u32 = 0; - let mut x1270: u32 = 0; - fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); - let mut x1271: u32 = 0; - let mut x1272: u32 = 0; - fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); - let mut x1273: u32 = 0; - let mut x1274: u32 = 0; - fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); - let mut x1275: u32 = 0; - let mut x1276: u32 = 0; - fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); - let mut x1277: u32 = 0; - let mut x1278: u32 = 0; - fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); - let mut x1279: u32 = 0; - let mut x1280: u32 = 0; - fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); - let mut x1281: u32 = 0; - let mut x1282: u32 = 0; - fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); - let mut x1283: u32 = 0; - let mut x1284: u32 = 0; - fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); - let mut x1285: u32 = 0; - let mut x1286: u32 = 0; - fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); - let mut x1287: u32 = 0; - let mut x1288: u32 = 0; - fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); - let mut x1289: u32 = 0; - let mut x1290: u32 = 0; - fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); - let mut x1291: u32 = 0; - let mut x1292: u32 = 0; - fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); - let mut x1293: u32 = 0; - let mut x1294: u32 = 0; - fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); - let mut x1295: u32 = 0; - let mut x1296: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); - let mut x1297: u32 = 0; - let mut x1298: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); - let mut x1299: u32 = 0; - let mut x1300: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); - let mut x1301: u32 = 0; - let mut x1302: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); - let mut x1303: u32 = 0; - let mut x1304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); - let mut x1305: u32 = 0; - let mut x1306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); - let mut x1307: u32 = 0; - let mut x1308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); - let mut x1309: u32 = 0; - let mut x1310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); - let mut x1311: u32 = 0; - let mut x1312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); - let mut x1313: u32 = 0; - let mut x1314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); - let mut x1315: u32 = 0; - let mut x1316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); - let mut x1317: u32 = 0; - let mut x1318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); - let mut x1319: u32 = 0; - let mut x1320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); - let mut x1321: u32 = 0; - let mut x1322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); - let mut x1323: u32 = 0; - let mut x1324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); - let x1325: u32 = ((x1324 as u32) + x1264); - let mut x1326: u32 = 0; - let mut x1327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); - let mut x1328: u32 = 0; - let mut x1329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); - let mut x1330: u32 = 0; - let mut x1331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); - let mut x1332: u32 = 0; - let mut x1333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); - let mut x1334: u32 = 0; - let mut x1335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); - let mut x1336: u32 = 0; - let mut x1337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); - let mut x1338: u32 = 0; - let mut x1339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); - let mut x1340: u32 = 0; - let mut x1341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); - let mut x1342: u32 = 0; - let mut x1343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); - let mut x1344: u32 = 0; - let mut x1345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); - let mut x1346: u32 = 0; - let mut x1347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); - let mut x1348: u32 = 0; - let mut x1349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); - let mut x1350: u32 = 0; - let mut x1351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); - let mut x1352: u32 = 0; - let mut x1353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); - let mut x1354: u32 = 0; - let mut x1355: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); - let mut x1356: u32 = 0; - let mut x1357: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); - let mut x1358: u32 = 0; - let mut x1359: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); - let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); - let mut x1361: u32 = 0; - let mut x1362: u32 = 0; - fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg1[15])); - let mut x1363: u32 = 0; - let mut x1364: u32 = 0; - fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg1[14])); - let mut x1365: u32 = 0; - let mut x1366: u32 = 0; - fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg1[13])); - let mut x1367: u32 = 0; - let mut x1368: u32 = 0; - fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg1[12])); - let mut x1369: u32 = 0; - let mut x1370: u32 = 0; - fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg1[11])); - let mut x1371: u32 = 0; - let mut x1372: u32 = 0; - fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg1[10])); - let mut x1373: u32 = 0; - let mut x1374: u32 = 0; - fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg1[9])); - let mut x1375: u32 = 0; - let mut x1376: u32 = 0; - fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg1[8])); - let mut x1377: u32 = 0; - let mut x1378: u32 = 0; - fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg1[7])); - let mut x1379: u32 = 0; - let mut x1380: u32 = 0; - fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg1[6])); - let mut x1381: u32 = 0; - let mut x1382: u32 = 0; - fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg1[5])); - let mut x1383: u32 = 0; - let mut x1384: u32 = 0; - fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg1[4])); - let mut x1385: u32 = 0; - let mut x1386: u32 = 0; - fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg1[3])); - let mut x1387: u32 = 0; - let mut x1388: u32 = 0; - fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg1[2])); - let mut x1389: u32 = 0; - let mut x1390: u32 = 0; - fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg1[1])); - let mut x1391: u32 = 0; - let mut x1392: u32 = 0; - fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg1[0])); - let mut x1393: u32 = 0; - let mut x1394: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); - let mut x1395: u32 = 0; - let mut x1396: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); - let mut x1397: u32 = 0; - let mut x1398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); - let mut x1399: u32 = 0; - let mut x1400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); - let mut x1401: u32 = 0; - let mut x1402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); - let mut x1403: u32 = 0; - let mut x1404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); - let mut x1405: u32 = 0; - let mut x1406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); - let mut x1407: u32 = 0; - let mut x1408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); - let mut x1409: u32 = 0; - let mut x1410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); - let mut x1411: u32 = 0; - let mut x1412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); - let mut x1413: u32 = 0; - let mut x1414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); - let mut x1415: u32 = 0; - let mut x1416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); - let mut x1417: u32 = 0; - let mut x1418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); - let mut x1419: u32 = 0; - let mut x1420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); - let mut x1421: u32 = 0; - let mut x1422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); - let x1423: u32 = ((x1422 as u32) + x1362); - let mut x1424: u32 = 0; - let mut x1425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); - let mut x1426: u32 = 0; - let mut x1427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); - let mut x1428: u32 = 0; - let mut x1429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); - let mut x1430: u32 = 0; - let mut x1431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); - let mut x1432: u32 = 0; - let mut x1433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); - let mut x1434: u32 = 0; - let mut x1435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); - let mut x1436: u32 = 0; - let mut x1437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); - let mut x1438: u32 = 0; - let mut x1439: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); - let mut x1440: u32 = 0; - let mut x1441: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); - let mut x1442: u32 = 0; - let mut x1443: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); - let mut x1444: u32 = 0; - let mut x1445: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); - let mut x1446: u32 = 0; - let mut x1447: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); - let mut x1448: u32 = 0; - let mut x1449: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); - let mut x1450: u32 = 0; - let mut x1451: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); - let mut x1452: u32 = 0; - let mut x1453: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); - let mut x1454: u32 = 0; - let mut x1455: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); - let mut x1456: u32 = 0; - let mut x1457: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); - let mut x1458: u32 = 0; - let mut x1459: u32 = 0; - fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); - let mut x1460: u32 = 0; - let mut x1461: u32 = 0; - fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); - let mut x1462: u32 = 0; - let mut x1463: u32 = 0; - fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); - let mut x1464: u32 = 0; - let mut x1465: u32 = 0; - fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); - let mut x1466: u32 = 0; - let mut x1467: u32 = 0; - fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); - let mut x1468: u32 = 0; - let mut x1469: u32 = 0; - fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); - let mut x1470: u32 = 0; - let mut x1471: u32 = 0; - fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); - let mut x1472: u32 = 0; - let mut x1473: u32 = 0; - fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); - let mut x1474: u32 = 0; - let mut x1475: u32 = 0; - fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); - let mut x1476: u32 = 0; - let mut x1477: u32 = 0; - fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); - let mut x1478: u32 = 0; - let mut x1479: u32 = 0; - fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); - let mut x1480: u32 = 0; - let mut x1481: u32 = 0; - fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); - let mut x1482: u32 = 0; - let mut x1483: u32 = 0; - fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); - let mut x1484: u32 = 0; - let mut x1485: u32 = 0; - fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); - let mut x1486: u32 = 0; - let mut x1487: u32 = 0; - fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); - let mut x1488: u32 = 0; - let mut x1489: u32 = 0; - fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); - let mut x1490: u32 = 0; - let mut x1491: u32 = 0; - fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); - let mut x1492: u32 = 0; - let mut x1493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); - let mut x1494: u32 = 0; - let mut x1495: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); - let mut x1496: u32 = 0; - let mut x1497: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); - let mut x1498: u32 = 0; - let mut x1499: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); - let mut x1500: u32 = 0; - let mut x1501: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); - let mut x1502: u32 = 0; - let mut x1503: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); - let mut x1504: u32 = 0; - let mut x1505: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); - let mut x1506: u32 = 0; - let mut x1507: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); - let mut x1508: u32 = 0; - let mut x1509: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); - let mut x1510: u32 = 0; - let mut x1511: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); - let mut x1512: u32 = 0; - let mut x1513: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); - let mut x1514: u32 = 0; - let mut x1515: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); - let mut x1516: u32 = 0; - let mut x1517: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); - let mut x1518: u32 = 0; - let mut x1519: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); - let mut x1520: u32 = 0; - let mut x1521: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); - let x1522: u32 = ((x1521 as u32) + x1461); - let mut x1523: u32 = 0; - let mut x1524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); - let mut x1525: u32 = 0; - let mut x1526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); - let mut x1527: u32 = 0; - let mut x1528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); - let mut x1529: u32 = 0; - let mut x1530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); - let mut x1531: u32 = 0; - let mut x1532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); - let mut x1533: u32 = 0; - let mut x1534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); - let mut x1535: u32 = 0; - let mut x1536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); - let mut x1537: u32 = 0; - let mut x1538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); - let mut x1539: u32 = 0; - let mut x1540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); - let mut x1541: u32 = 0; - let mut x1542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); - let mut x1543: u32 = 0; - let mut x1544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); - let mut x1545: u32 = 0; - let mut x1546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); - let mut x1547: u32 = 0; - let mut x1548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); - let mut x1549: u32 = 0; - let mut x1550: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); - let mut x1551: u32 = 0; - let mut x1552: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); - let mut x1553: u32 = 0; - let mut x1554: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); - let mut x1555: u32 = 0; - let mut x1556: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); - let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); - let mut x1558: u32 = 0; - let mut x1559: u32 = 0; - fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg1[15])); - let mut x1560: u32 = 0; - let mut x1561: u32 = 0; - fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg1[14])); - let mut x1562: u32 = 0; - let mut x1563: u32 = 0; - fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg1[13])); - let mut x1564: u32 = 0; - let mut x1565: u32 = 0; - fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg1[12])); - let mut x1566: u32 = 0; - let mut x1567: u32 = 0; - fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg1[11])); - let mut x1568: u32 = 0; - let mut x1569: u32 = 0; - fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg1[10])); - let mut x1570: u32 = 0; - let mut x1571: u32 = 0; - fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg1[9])); - let mut x1572: u32 = 0; - let mut x1573: u32 = 0; - fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg1[8])); - let mut x1574: u32 = 0; - let mut x1575: u32 = 0; - fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg1[7])); - let mut x1576: u32 = 0; - let mut x1577: u32 = 0; - fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg1[6])); - let mut x1578: u32 = 0; - let mut x1579: u32 = 0; - fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg1[5])); - let mut x1580: u32 = 0; - let mut x1581: u32 = 0; - fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg1[4])); - let mut x1582: u32 = 0; - let mut x1583: u32 = 0; - fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg1[3])); - let mut x1584: u32 = 0; - let mut x1585: u32 = 0; - fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg1[2])); - let mut x1586: u32 = 0; - let mut x1587: u32 = 0; - fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg1[1])); - let mut x1588: u32 = 0; - let mut x1589: u32 = 0; - fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg1[0])); - let mut x1590: u32 = 0; - let mut x1591: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); - let mut x1592: u32 = 0; - let mut x1593: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); - let mut x1594: u32 = 0; - let mut x1595: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); - let mut x1596: u32 = 0; - let mut x1597: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); - let mut x1598: u32 = 0; - let mut x1599: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); - let mut x1600: u32 = 0; - let mut x1601: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); - let mut x1602: u32 = 0; - let mut x1603: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); - let mut x1604: u32 = 0; - let mut x1605: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); - let mut x1606: u32 = 0; - let mut x1607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); - let mut x1608: u32 = 0; - let mut x1609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); - let mut x1610: u32 = 0; - let mut x1611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); - let mut x1612: u32 = 0; - let mut x1613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); - let mut x1614: u32 = 0; - let mut x1615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); - let mut x1616: u32 = 0; - let mut x1617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); - let mut x1618: u32 = 0; - let mut x1619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); - let x1620: u32 = ((x1619 as u32) + x1559); - let mut x1621: u32 = 0; - let mut x1622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); - let mut x1623: u32 = 0; - let mut x1624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); - let mut x1625: u32 = 0; - let mut x1626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); - let mut x1627: u32 = 0; - let mut x1628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); - let mut x1629: u32 = 0; - let mut x1630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); - let mut x1631: u32 = 0; - let mut x1632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); - let mut x1633: u32 = 0; - let mut x1634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); - let mut x1635: u32 = 0; - let mut x1636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); - let mut x1637: u32 = 0; - let mut x1638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); - let mut x1639: u32 = 0; - let mut x1640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); - let mut x1641: u32 = 0; - let mut x1642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); - let mut x1643: u32 = 0; - let mut x1644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); - let mut x1645: u32 = 0; - let mut x1646: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); - let mut x1647: u32 = 0; - let mut x1648: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); - let mut x1649: u32 = 0; - let mut x1650: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); - let mut x1651: u32 = 0; - let mut x1652: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); - let mut x1653: u32 = 0; - let mut x1654: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); - let mut x1655: u32 = 0; - let mut x1656: u32 = 0; - fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); - let mut x1657: u32 = 0; - let mut x1658: u32 = 0; - fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); - let mut x1659: u32 = 0; - let mut x1660: u32 = 0; - fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); - let mut x1661: u32 = 0; - let mut x1662: u32 = 0; - fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); - let mut x1663: u32 = 0; - let mut x1664: u32 = 0; - fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); - let mut x1665: u32 = 0; - let mut x1666: u32 = 0; - fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); - let mut x1667: u32 = 0; - let mut x1668: u32 = 0; - fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); - let mut x1669: u32 = 0; - let mut x1670: u32 = 0; - fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); - let mut x1671: u32 = 0; - let mut x1672: u32 = 0; - fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); - let mut x1673: u32 = 0; - let mut x1674: u32 = 0; - fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); - let mut x1675: u32 = 0; - let mut x1676: u32 = 0; - fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); - let mut x1677: u32 = 0; - let mut x1678: u32 = 0; - fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); - let mut x1679: u32 = 0; - let mut x1680: u32 = 0; - fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); - let mut x1681: u32 = 0; - let mut x1682: u32 = 0; - fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); - let mut x1683: u32 = 0; - let mut x1684: u32 = 0; - fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); - let mut x1685: u32 = 0; - let mut x1686: u32 = 0; - fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); - let mut x1687: u32 = 0; - let mut x1688: u32 = 0; - fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); - let mut x1689: u32 = 0; - let mut x1690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); - let mut x1691: u32 = 0; - let mut x1692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); - let mut x1693: u32 = 0; - let mut x1694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); - let mut x1695: u32 = 0; - let mut x1696: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); - let mut x1697: u32 = 0; - let mut x1698: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); - let mut x1699: u32 = 0; - let mut x1700: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); - let mut x1701: u32 = 0; - let mut x1702: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); - let mut x1703: u32 = 0; - let mut x1704: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); - let mut x1705: u32 = 0; - let mut x1706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); - let mut x1707: u32 = 0; - let mut x1708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); - let mut x1709: u32 = 0; - let mut x1710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); - let mut x1711: u32 = 0; - let mut x1712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); - let mut x1713: u32 = 0; - let mut x1714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); - let mut x1715: u32 = 0; - let mut x1716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); - let mut x1717: u32 = 0; - let mut x1718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); - let x1719: u32 = ((x1718 as u32) + x1658); - let mut x1720: u32 = 0; - let mut x1721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); - let mut x1722: u32 = 0; - let mut x1723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); - let mut x1724: u32 = 0; - let mut x1725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); - let mut x1726: u32 = 0; - let mut x1727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); - let mut x1728: u32 = 0; - let mut x1729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); - let mut x1730: u32 = 0; - let mut x1731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); - let mut x1732: u32 = 0; - let mut x1733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); - let mut x1734: u32 = 0; - let mut x1735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); - let mut x1736: u32 = 0; - let mut x1737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); - let mut x1738: u32 = 0; - let mut x1739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); - let mut x1740: u32 = 0; - let mut x1741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); - let mut x1742: u32 = 0; - let mut x1743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); - let mut x1744: u32 = 0; - let mut x1745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); - let mut x1746: u32 = 0; - let mut x1747: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); - let mut x1748: u32 = 0; - let mut x1749: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); - let mut x1750: u32 = 0; - let mut x1751: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); - let mut x1752: u32 = 0; - let mut x1753: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); - let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); - let mut x1755: u32 = 0; - let mut x1756: u32 = 0; - fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg1[15])); - let mut x1757: u32 = 0; - let mut x1758: u32 = 0; - fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg1[14])); - let mut x1759: u32 = 0; - let mut x1760: u32 = 0; - fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg1[13])); - let mut x1761: u32 = 0; - let mut x1762: u32 = 0; - fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg1[12])); - let mut x1763: u32 = 0; - let mut x1764: u32 = 0; - fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg1[11])); - let mut x1765: u32 = 0; - let mut x1766: u32 = 0; - fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg1[10])); - let mut x1767: u32 = 0; - let mut x1768: u32 = 0; - fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg1[9])); - let mut x1769: u32 = 0; - let mut x1770: u32 = 0; - fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg1[8])); - let mut x1771: u32 = 0; - let mut x1772: u32 = 0; - fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg1[7])); - let mut x1773: u32 = 0; - let mut x1774: u32 = 0; - fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg1[6])); - let mut x1775: u32 = 0; - let mut x1776: u32 = 0; - fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg1[5])); - let mut x1777: u32 = 0; - let mut x1778: u32 = 0; - fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg1[4])); - let mut x1779: u32 = 0; - let mut x1780: u32 = 0; - fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg1[3])); - let mut x1781: u32 = 0; - let mut x1782: u32 = 0; - fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg1[2])); - let mut x1783: u32 = 0; - let mut x1784: u32 = 0; - fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg1[1])); - let mut x1785: u32 = 0; - let mut x1786: u32 = 0; - fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg1[0])); - let mut x1787: u32 = 0; - let mut x1788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); - let mut x1789: u32 = 0; - let mut x1790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); - let mut x1791: u32 = 0; - let mut x1792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); - let mut x1793: u32 = 0; - let mut x1794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); - let mut x1795: u32 = 0; - let mut x1796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); - let mut x1797: u32 = 0; - let mut x1798: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); - let mut x1799: u32 = 0; - let mut x1800: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); - let mut x1801: u32 = 0; - let mut x1802: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); - let mut x1803: u32 = 0; - let mut x1804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); - let mut x1805: u32 = 0; - let mut x1806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); - let mut x1807: u32 = 0; - let mut x1808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); - let mut x1809: u32 = 0; - let mut x1810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); - let mut x1811: u32 = 0; - let mut x1812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); - let mut x1813: u32 = 0; - let mut x1814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); - let mut x1815: u32 = 0; - let mut x1816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); - let x1817: u32 = ((x1816 as u32) + x1756); - let mut x1818: u32 = 0; - let mut x1819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); - let mut x1820: u32 = 0; - let mut x1821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); - let mut x1822: u32 = 0; - let mut x1823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); - let mut x1824: u32 = 0; - let mut x1825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); - let mut x1826: u32 = 0; - let mut x1827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); - let mut x1828: u32 = 0; - let mut x1829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); - let mut x1830: u32 = 0; - let mut x1831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); - let mut x1832: u32 = 0; - let mut x1833: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); - let mut x1834: u32 = 0; - let mut x1835: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); - let mut x1836: u32 = 0; - let mut x1837: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); - let mut x1838: u32 = 0; - let mut x1839: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); - let mut x1840: u32 = 0; - let mut x1841: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); - let mut x1842: u32 = 0; - let mut x1843: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); - let mut x1844: u32 = 0; - let mut x1845: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); - let mut x1846: u32 = 0; - let mut x1847: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); - let mut x1848: u32 = 0; - let mut x1849: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); - let mut x1850: u32 = 0; - let mut x1851: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); - let mut x1852: u32 = 0; - let mut x1853: u32 = 0; - fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); - let mut x1854: u32 = 0; - let mut x1855: u32 = 0; - fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); - let mut x1856: u32 = 0; - let mut x1857: u32 = 0; - fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); - let mut x1858: u32 = 0; - let mut x1859: u32 = 0; - fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); - let mut x1860: u32 = 0; - let mut x1861: u32 = 0; - fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); - let mut x1862: u32 = 0; - let mut x1863: u32 = 0; - fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); - let mut x1864: u32 = 0; - let mut x1865: u32 = 0; - fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); - let mut x1866: u32 = 0; - let mut x1867: u32 = 0; - fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); - let mut x1868: u32 = 0; - let mut x1869: u32 = 0; - fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); - let mut x1870: u32 = 0; - let mut x1871: u32 = 0; - fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); - let mut x1872: u32 = 0; - let mut x1873: u32 = 0; - fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); - let mut x1874: u32 = 0; - let mut x1875: u32 = 0; - fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); - let mut x1876: u32 = 0; - let mut x1877: u32 = 0; - fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); - let mut x1878: u32 = 0; - let mut x1879: u32 = 0; - fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); - let mut x1880: u32 = 0; - let mut x1881: u32 = 0; - fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); - let mut x1882: u32 = 0; - let mut x1883: u32 = 0; - fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); - let mut x1884: u32 = 0; - let mut x1885: u32 = 0; - fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); - let mut x1886: u32 = 0; - let mut x1887: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); - let mut x1888: u32 = 0; - let mut x1889: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); - let mut x1890: u32 = 0; - let mut x1891: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); - let mut x1892: u32 = 0; - let mut x1893: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); - let mut x1894: u32 = 0; - let mut x1895: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); - let mut x1896: u32 = 0; - let mut x1897: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); - let mut x1898: u32 = 0; - let mut x1899: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); - let mut x1900: u32 = 0; - let mut x1901: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); - let mut x1902: u32 = 0; - let mut x1903: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); - let mut x1904: u32 = 0; - let mut x1905: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); - let mut x1906: u32 = 0; - let mut x1907: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); - let mut x1908: u32 = 0; - let mut x1909: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); - let mut x1910: u32 = 0; - let mut x1911: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); - let mut x1912: u32 = 0; - let mut x1913: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); - let mut x1914: u32 = 0; - let mut x1915: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); - let x1916: u32 = ((x1915 as u32) + x1855); - let mut x1917: u32 = 0; - let mut x1918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); - let mut x1919: u32 = 0; - let mut x1920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); - let mut x1921: u32 = 0; - let mut x1922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); - let mut x1923: u32 = 0; - let mut x1924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); - let mut x1925: u32 = 0; - let mut x1926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); - let mut x1927: u32 = 0; - let mut x1928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); - let mut x1929: u32 = 0; - let mut x1930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); - let mut x1931: u32 = 0; - let mut x1932: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); - let mut x1933: u32 = 0; - let mut x1934: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); - let mut x1935: u32 = 0; - let mut x1936: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); - let mut x1937: u32 = 0; - let mut x1938: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); - let mut x1939: u32 = 0; - let mut x1940: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); - let mut x1941: u32 = 0; - let mut x1942: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); - let mut x1943: u32 = 0; - let mut x1944: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); - let mut x1945: u32 = 0; - let mut x1946: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); - let mut x1947: u32 = 0; - let mut x1948: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); - let mut x1949: u32 = 0; - let mut x1950: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); - let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); - let mut x1952: u32 = 0; - let mut x1953: u32 = 0; - fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg1[15])); - let mut x1954: u32 = 0; - let mut x1955: u32 = 0; - fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg1[14])); - let mut x1956: u32 = 0; - let mut x1957: u32 = 0; - fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg1[13])); - let mut x1958: u32 = 0; - let mut x1959: u32 = 0; - fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg1[12])); - let mut x1960: u32 = 0; - let mut x1961: u32 = 0; - fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg1[11])); - let mut x1962: u32 = 0; - let mut x1963: u32 = 0; - fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg1[10])); - let mut x1964: u32 = 0; - let mut x1965: u32 = 0; - fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg1[9])); - let mut x1966: u32 = 0; - let mut x1967: u32 = 0; - fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg1[8])); - let mut x1968: u32 = 0; - let mut x1969: u32 = 0; - fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg1[7])); - let mut x1970: u32 = 0; - let mut x1971: u32 = 0; - fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg1[6])); - let mut x1972: u32 = 0; - let mut x1973: u32 = 0; - fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg1[5])); - let mut x1974: u32 = 0; - let mut x1975: u32 = 0; - fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg1[4])); - let mut x1976: u32 = 0; - let mut x1977: u32 = 0; - fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg1[3])); - let mut x1978: u32 = 0; - let mut x1979: u32 = 0; - fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg1[2])); - let mut x1980: u32 = 0; - let mut x1981: u32 = 0; - fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg1[1])); - let mut x1982: u32 = 0; - let mut x1983: u32 = 0; - fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg1[0])); - let mut x1984: u32 = 0; - let mut x1985: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); - let mut x1986: u32 = 0; - let mut x1987: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); - let mut x1988: u32 = 0; - let mut x1989: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); - let mut x1990: u32 = 0; - let mut x1991: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); - let mut x1992: u32 = 0; - let mut x1993: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); - let mut x1994: u32 = 0; - let mut x1995: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); - let mut x1996: u32 = 0; - let mut x1997: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); - let mut x1998: u32 = 0; - let mut x1999: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); - let mut x2000: u32 = 0; - let mut x2001: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); - let mut x2002: u32 = 0; - let mut x2003: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); - let mut x2004: u32 = 0; - let mut x2005: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); - let mut x2006: u32 = 0; - let mut x2007: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); - let mut x2008: u32 = 0; - let mut x2009: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); - let mut x2010: u32 = 0; - let mut x2011: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); - let mut x2012: u32 = 0; - let mut x2013: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); - let x2014: u32 = ((x2013 as u32) + x1953); - let mut x2015: u32 = 0; - let mut x2016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); - let mut x2017: u32 = 0; - let mut x2018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); - let mut x2019: u32 = 0; - let mut x2020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); - let mut x2021: u32 = 0; - let mut x2022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); - let mut x2023: u32 = 0; - let mut x2024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); - let mut x2025: u32 = 0; - let mut x2026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); - let mut x2027: u32 = 0; - let mut x2028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); - let mut x2029: u32 = 0; - let mut x2030: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); - let mut x2031: u32 = 0; - let mut x2032: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); - let mut x2033: u32 = 0; - let mut x2034: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); - let mut x2035: u32 = 0; - let mut x2036: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); - let mut x2037: u32 = 0; - let mut x2038: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); - let mut x2039: u32 = 0; - let mut x2040: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); - let mut x2041: u32 = 0; - let mut x2042: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); - let mut x2043: u32 = 0; - let mut x2044: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); - let mut x2045: u32 = 0; - let mut x2046: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); - let mut x2047: u32 = 0; - let mut x2048: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); - let mut x2049: u32 = 0; - let mut x2050: u32 = 0; - fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); - let mut x2051: u32 = 0; - let mut x2052: u32 = 0; - fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); - let mut x2053: u32 = 0; - let mut x2054: u32 = 0; - fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); - let mut x2055: u32 = 0; - let mut x2056: u32 = 0; - fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); - let mut x2057: u32 = 0; - let mut x2058: u32 = 0; - fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); - let mut x2059: u32 = 0; - let mut x2060: u32 = 0; - fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); - let mut x2061: u32 = 0; - let mut x2062: u32 = 0; - fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); - let mut x2063: u32 = 0; - let mut x2064: u32 = 0; - fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); - let mut x2065: u32 = 0; - let mut x2066: u32 = 0; - fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); - let mut x2067: u32 = 0; - let mut x2068: u32 = 0; - fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); - let mut x2069: u32 = 0; - let mut x2070: u32 = 0; - fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); - let mut x2071: u32 = 0; - let mut x2072: u32 = 0; - fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); - let mut x2073: u32 = 0; - let mut x2074: u32 = 0; - fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); - let mut x2075: u32 = 0; - let mut x2076: u32 = 0; - fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); - let mut x2077: u32 = 0; - let mut x2078: u32 = 0; - fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); - let mut x2079: u32 = 0; - let mut x2080: u32 = 0; - fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); - let mut x2081: u32 = 0; - let mut x2082: u32 = 0; - fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); - let mut x2083: u32 = 0; - let mut x2084: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); - let mut x2085: u32 = 0; - let mut x2086: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); - let mut x2087: u32 = 0; - let mut x2088: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); - let mut x2089: u32 = 0; - let mut x2090: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); - let mut x2091: u32 = 0; - let mut x2092: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); - let mut x2093: u32 = 0; - let mut x2094: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); - let mut x2095: u32 = 0; - let mut x2096: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); - let mut x2097: u32 = 0; - let mut x2098: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); - let mut x2099: u32 = 0; - let mut x2100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); - let mut x2101: u32 = 0; - let mut x2102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); - let mut x2103: u32 = 0; - let mut x2104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); - let mut x2105: u32 = 0; - let mut x2106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); - let mut x2107: u32 = 0; - let mut x2108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); - let mut x2109: u32 = 0; - let mut x2110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); - let mut x2111: u32 = 0; - let mut x2112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); - let x2113: u32 = ((x2112 as u32) + x2052); - let mut x2114: u32 = 0; - let mut x2115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); - let mut x2116: u32 = 0; - let mut x2117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); - let mut x2118: u32 = 0; - let mut x2119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); - let mut x2120: u32 = 0; - let mut x2121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); - let mut x2122: u32 = 0; - let mut x2123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); - let mut x2124: u32 = 0; - let mut x2125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); - let mut x2126: u32 = 0; - let mut x2127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); - let mut x2128: u32 = 0; - let mut x2129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); - let mut x2130: u32 = 0; - let mut x2131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); - let mut x2132: u32 = 0; - let mut x2133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); - let mut x2134: u32 = 0; - let mut x2135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); - let mut x2136: u32 = 0; - let mut x2137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); - let mut x2138: u32 = 0; - let mut x2139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); - let mut x2140: u32 = 0; - let mut x2141: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); - let mut x2142: u32 = 0; - let mut x2143: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); - let mut x2144: u32 = 0; - let mut x2145: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); - let mut x2146: u32 = 0; - let mut x2147: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); - let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); - let mut x2149: u32 = 0; - let mut x2150: u32 = 0; - fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg1[15])); - let mut x2151: u32 = 0; - let mut x2152: u32 = 0; - fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg1[14])); - let mut x2153: u32 = 0; - let mut x2154: u32 = 0; - fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg1[13])); - let mut x2155: u32 = 0; - let mut x2156: u32 = 0; - fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg1[12])); - let mut x2157: u32 = 0; - let mut x2158: u32 = 0; - fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg1[11])); - let mut x2159: u32 = 0; - let mut x2160: u32 = 0; - fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg1[10])); - let mut x2161: u32 = 0; - let mut x2162: u32 = 0; - fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg1[9])); - let mut x2163: u32 = 0; - let mut x2164: u32 = 0; - fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg1[8])); - let mut x2165: u32 = 0; - let mut x2166: u32 = 0; - fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg1[7])); - let mut x2167: u32 = 0; - let mut x2168: u32 = 0; - fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg1[6])); - let mut x2169: u32 = 0; - let mut x2170: u32 = 0; - fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg1[5])); - let mut x2171: u32 = 0; - let mut x2172: u32 = 0; - fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg1[4])); - let mut x2173: u32 = 0; - let mut x2174: u32 = 0; - fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg1[3])); - let mut x2175: u32 = 0; - let mut x2176: u32 = 0; - fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg1[2])); - let mut x2177: u32 = 0; - let mut x2178: u32 = 0; - fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg1[1])); - let mut x2179: u32 = 0; - let mut x2180: u32 = 0; - fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg1[0])); - let mut x2181: u32 = 0; - let mut x2182: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); - let mut x2183: u32 = 0; - let mut x2184: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); - let mut x2185: u32 = 0; - let mut x2186: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); - let mut x2187: u32 = 0; - let mut x2188: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); - let mut x2189: u32 = 0; - let mut x2190: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); - let mut x2191: u32 = 0; - let mut x2192: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); - let mut x2193: u32 = 0; - let mut x2194: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); - let mut x2195: u32 = 0; - let mut x2196: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); - let mut x2197: u32 = 0; - let mut x2198: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); - let mut x2199: u32 = 0; - let mut x2200: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); - let mut x2201: u32 = 0; - let mut x2202: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); - let mut x2203: u32 = 0; - let mut x2204: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); - let mut x2205: u32 = 0; - let mut x2206: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); - let mut x2207: u32 = 0; - let mut x2208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); - let mut x2209: u32 = 0; - let mut x2210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); - let x2211: u32 = ((x2210 as u32) + x2150); - let mut x2212: u32 = 0; - let mut x2213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); - let mut x2214: u32 = 0; - let mut x2215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); - let mut x2216: u32 = 0; - let mut x2217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); - let mut x2218: u32 = 0; - let mut x2219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); - let mut x2220: u32 = 0; - let mut x2221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); - let mut x2222: u32 = 0; - let mut x2223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); - let mut x2224: u32 = 0; - let mut x2225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); - let mut x2226: u32 = 0; - let mut x2227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); - let mut x2228: u32 = 0; - let mut x2229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); - let mut x2230: u32 = 0; - let mut x2231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); - let mut x2232: u32 = 0; - let mut x2233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); - let mut x2234: u32 = 0; - let mut x2235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); - let mut x2236: u32 = 0; - let mut x2237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); - let mut x2238: u32 = 0; - let mut x2239: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); - let mut x2240: u32 = 0; - let mut x2241: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); - let mut x2242: u32 = 0; - let mut x2243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); - let mut x2244: u32 = 0; - let mut x2245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); - let mut x2246: u32 = 0; - let mut x2247: u32 = 0; - fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); - let mut x2248: u32 = 0; - let mut x2249: u32 = 0; - fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); - let mut x2250: u32 = 0; - let mut x2251: u32 = 0; - fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); - let mut x2252: u32 = 0; - let mut x2253: u32 = 0; - fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); - let mut x2254: u32 = 0; - let mut x2255: u32 = 0; - fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); - let mut x2256: u32 = 0; - let mut x2257: u32 = 0; - fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); - let mut x2258: u32 = 0; - let mut x2259: u32 = 0; - fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); - let mut x2260: u32 = 0; - let mut x2261: u32 = 0; - fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); - let mut x2262: u32 = 0; - let mut x2263: u32 = 0; - fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); - let mut x2264: u32 = 0; - let mut x2265: u32 = 0; - fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); - let mut x2266: u32 = 0; - let mut x2267: u32 = 0; - fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); - let mut x2268: u32 = 0; - let mut x2269: u32 = 0; - fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); - let mut x2270: u32 = 0; - let mut x2271: u32 = 0; - fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); - let mut x2272: u32 = 0; - let mut x2273: u32 = 0; - fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); - let mut x2274: u32 = 0; - let mut x2275: u32 = 0; - fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); - let mut x2276: u32 = 0; - let mut x2277: u32 = 0; - fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); - let mut x2278: u32 = 0; - let mut x2279: u32 = 0; - fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); - let mut x2280: u32 = 0; - let mut x2281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); - let mut x2282: u32 = 0; - let mut x2283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); - let mut x2284: u32 = 0; - let mut x2285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); - let mut x2286: u32 = 0; - let mut x2287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); - let mut x2288: u32 = 0; - let mut x2289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); - let mut x2290: u32 = 0; - let mut x2291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); - let mut x2292: u32 = 0; - let mut x2293: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); - let mut x2294: u32 = 0; - let mut x2295: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); - let mut x2296: u32 = 0; - let mut x2297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); - let mut x2298: u32 = 0; - let mut x2299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); - let mut x2300: u32 = 0; - let mut x2301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); - let mut x2302: u32 = 0; - let mut x2303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); - let mut x2304: u32 = 0; - let mut x2305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); - let mut x2306: u32 = 0; - let mut x2307: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); - let mut x2308: u32 = 0; - let mut x2309: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); - let x2310: u32 = ((x2309 as u32) + x2249); - let mut x2311: u32 = 0; - let mut x2312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); - let mut x2313: u32 = 0; - let mut x2314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); - let mut x2315: u32 = 0; - let mut x2316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); - let mut x2317: u32 = 0; - let mut x2318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); - let mut x2319: u32 = 0; - let mut x2320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); - let mut x2321: u32 = 0; - let mut x2322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); - let mut x2323: u32 = 0; - let mut x2324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); - let mut x2325: u32 = 0; - let mut x2326: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); - let mut x2327: u32 = 0; - let mut x2328: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); - let mut x2329: u32 = 0; - let mut x2330: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); - let mut x2331: u32 = 0; - let mut x2332: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); - let mut x2333: u32 = 0; - let mut x2334: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); - let mut x2335: u32 = 0; - let mut x2336: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); - let mut x2337: u32 = 0; - let mut x2338: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); - let mut x2339: u32 = 0; - let mut x2340: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); - let mut x2341: u32 = 0; - let mut x2342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); - let mut x2343: u32 = 0; - let mut x2344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); - let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); - let mut x2346: u32 = 0; - let mut x2347: u32 = 0; - fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg1[15])); - let mut x2348: u32 = 0; - let mut x2349: u32 = 0; - fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg1[14])); - let mut x2350: u32 = 0; - let mut x2351: u32 = 0; - fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg1[13])); - let mut x2352: u32 = 0; - let mut x2353: u32 = 0; - fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg1[12])); - let mut x2354: u32 = 0; - let mut x2355: u32 = 0; - fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg1[11])); - let mut x2356: u32 = 0; - let mut x2357: u32 = 0; - fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg1[10])); - let mut x2358: u32 = 0; - let mut x2359: u32 = 0; - fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg1[9])); - let mut x2360: u32 = 0; - let mut x2361: u32 = 0; - fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg1[8])); - let mut x2362: u32 = 0; - let mut x2363: u32 = 0; - fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg1[7])); - let mut x2364: u32 = 0; - let mut x2365: u32 = 0; - fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg1[6])); - let mut x2366: u32 = 0; - let mut x2367: u32 = 0; - fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg1[5])); - let mut x2368: u32 = 0; - let mut x2369: u32 = 0; - fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg1[4])); - let mut x2370: u32 = 0; - let mut x2371: u32 = 0; - fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg1[3])); - let mut x2372: u32 = 0; - let mut x2373: u32 = 0; - fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg1[2])); - let mut x2374: u32 = 0; - let mut x2375: u32 = 0; - fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg1[1])); - let mut x2376: u32 = 0; - let mut x2377: u32 = 0; - fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg1[0])); - let mut x2378: u32 = 0; - let mut x2379: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); - let mut x2380: u32 = 0; - let mut x2381: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); - let mut x2382: u32 = 0; - let mut x2383: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); - let mut x2384: u32 = 0; - let mut x2385: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); - let mut x2386: u32 = 0; - let mut x2387: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); - let mut x2388: u32 = 0; - let mut x2389: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); - let mut x2390: u32 = 0; - let mut x2391: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); - let mut x2392: u32 = 0; - let mut x2393: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); - let mut x2394: u32 = 0; - let mut x2395: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); - let mut x2396: u32 = 0; - let mut x2397: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); - let mut x2398: u32 = 0; - let mut x2399: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); - let mut x2400: u32 = 0; - let mut x2401: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); - let mut x2402: u32 = 0; - let mut x2403: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); - let mut x2404: u32 = 0; - let mut x2405: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); - let mut x2406: u32 = 0; - let mut x2407: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); - let x2408: u32 = ((x2407 as u32) + x2347); - let mut x2409: u32 = 0; - let mut x2410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); - let mut x2411: u32 = 0; - let mut x2412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); - let mut x2413: u32 = 0; - let mut x2414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); - let mut x2415: u32 = 0; - let mut x2416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); - let mut x2417: u32 = 0; - let mut x2418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); - let mut x2419: u32 = 0; - let mut x2420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); - let mut x2421: u32 = 0; - let mut x2422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); - let mut x2423: u32 = 0; - let mut x2424: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); - let mut x2425: u32 = 0; - let mut x2426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); - let mut x2427: u32 = 0; - let mut x2428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); - let mut x2429: u32 = 0; - let mut x2430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); - let mut x2431: u32 = 0; - let mut x2432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); - let mut x2433: u32 = 0; - let mut x2434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); - let mut x2435: u32 = 0; - let mut x2436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); - let mut x2437: u32 = 0; - let mut x2438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); - let mut x2439: u32 = 0; - let mut x2440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); - let mut x2441: u32 = 0; - let mut x2442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); - let mut x2443: u32 = 0; - let mut x2444: u32 = 0; - fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); - let mut x2445: u32 = 0; - let mut x2446: u32 = 0; - fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); - let mut x2447: u32 = 0; - let mut x2448: u32 = 0; - fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); - let mut x2449: u32 = 0; - let mut x2450: u32 = 0; - fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); - let mut x2451: u32 = 0; - let mut x2452: u32 = 0; - fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); - let mut x2453: u32 = 0; - let mut x2454: u32 = 0; - fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); - let mut x2455: u32 = 0; - let mut x2456: u32 = 0; - fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); - let mut x2457: u32 = 0; - let mut x2458: u32 = 0; - fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); - let mut x2459: u32 = 0; - let mut x2460: u32 = 0; - fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); - let mut x2461: u32 = 0; - let mut x2462: u32 = 0; - fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); - let mut x2463: u32 = 0; - let mut x2464: u32 = 0; - fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); - let mut x2465: u32 = 0; - let mut x2466: u32 = 0; - fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); - let mut x2467: u32 = 0; - let mut x2468: u32 = 0; - fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); - let mut x2469: u32 = 0; - let mut x2470: u32 = 0; - fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); - let mut x2471: u32 = 0; - let mut x2472: u32 = 0; - fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); - let mut x2473: u32 = 0; - let mut x2474: u32 = 0; - fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); - let mut x2475: u32 = 0; - let mut x2476: u32 = 0; - fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); - let mut x2477: u32 = 0; - let mut x2478: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); - let mut x2479: u32 = 0; - let mut x2480: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); - let mut x2481: u32 = 0; - let mut x2482: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); - let mut x2483: u32 = 0; - let mut x2484: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); - let mut x2485: u32 = 0; - let mut x2486: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); - let mut x2487: u32 = 0; - let mut x2488: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); - let mut x2489: u32 = 0; - let mut x2490: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); - let mut x2491: u32 = 0; - let mut x2492: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); - let mut x2493: u32 = 0; - let mut x2494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); - let mut x2495: u32 = 0; - let mut x2496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); - let mut x2497: u32 = 0; - let mut x2498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); - let mut x2499: u32 = 0; - let mut x2500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); - let mut x2501: u32 = 0; - let mut x2502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); - let mut x2503: u32 = 0; - let mut x2504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); - let mut x2505: u32 = 0; - let mut x2506: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); - let x2507: u32 = ((x2506 as u32) + x2446); - let mut x2508: u32 = 0; - let mut x2509: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); - let mut x2510: u32 = 0; - let mut x2511: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); - let mut x2512: u32 = 0; - let mut x2513: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); - let mut x2514: u32 = 0; - let mut x2515: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); - let mut x2516: u32 = 0; - let mut x2517: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); - let mut x2518: u32 = 0; - let mut x2519: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); - let mut x2520: u32 = 0; - let mut x2521: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); - let mut x2522: u32 = 0; - let mut x2523: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); - let mut x2524: u32 = 0; - let mut x2525: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); - let mut x2526: u32 = 0; - let mut x2527: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); - let mut x2528: u32 = 0; - let mut x2529: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); - let mut x2530: u32 = 0; - let mut x2531: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); - let mut x2532: u32 = 0; - let mut x2533: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); - let mut x2534: u32 = 0; - let mut x2535: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); - let mut x2536: u32 = 0; - let mut x2537: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); - let mut x2538: u32 = 0; - let mut x2539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); - let mut x2540: u32 = 0; - let mut x2541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); - let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); - let mut x2543: u32 = 0; - let mut x2544: u32 = 0; - fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg1[15])); - let mut x2545: u32 = 0; - let mut x2546: u32 = 0; - fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg1[14])); - let mut x2547: u32 = 0; - let mut x2548: u32 = 0; - fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg1[13])); - let mut x2549: u32 = 0; - let mut x2550: u32 = 0; - fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg1[12])); - let mut x2551: u32 = 0; - let mut x2552: u32 = 0; - fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg1[11])); - let mut x2553: u32 = 0; - let mut x2554: u32 = 0; - fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg1[10])); - let mut x2555: u32 = 0; - let mut x2556: u32 = 0; - fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg1[9])); - let mut x2557: u32 = 0; - let mut x2558: u32 = 0; - fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg1[8])); - let mut x2559: u32 = 0; - let mut x2560: u32 = 0; - fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg1[7])); - let mut x2561: u32 = 0; - let mut x2562: u32 = 0; - fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg1[6])); - let mut x2563: u32 = 0; - let mut x2564: u32 = 0; - fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg1[5])); - let mut x2565: u32 = 0; - let mut x2566: u32 = 0; - fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg1[4])); - let mut x2567: u32 = 0; - let mut x2568: u32 = 0; - fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg1[3])); - let mut x2569: u32 = 0; - let mut x2570: u32 = 0; - fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg1[2])); - let mut x2571: u32 = 0; - let mut x2572: u32 = 0; - fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg1[1])); - let mut x2573: u32 = 0; - let mut x2574: u32 = 0; - fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg1[0])); - let mut x2575: u32 = 0; - let mut x2576: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); - let mut x2577: u32 = 0; - let mut x2578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); - let mut x2579: u32 = 0; - let mut x2580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); - let mut x2581: u32 = 0; - let mut x2582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); - let mut x2583: u32 = 0; - let mut x2584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); - let mut x2585: u32 = 0; - let mut x2586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); - let mut x2587: u32 = 0; - let mut x2588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); - let mut x2589: u32 = 0; - let mut x2590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); - let mut x2591: u32 = 0; - let mut x2592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); - let mut x2593: u32 = 0; - let mut x2594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); - let mut x2595: u32 = 0; - let mut x2596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); - let mut x2597: u32 = 0; - let mut x2598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); - let mut x2599: u32 = 0; - let mut x2600: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); - let mut x2601: u32 = 0; - let mut x2602: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); - let mut x2603: u32 = 0; - let mut x2604: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); - let x2605: u32 = ((x2604 as u32) + x2544); - let mut x2606: u32 = 0; - let mut x2607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); - let mut x2608: u32 = 0; - let mut x2609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); - let mut x2610: u32 = 0; - let mut x2611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); - let mut x2612: u32 = 0; - let mut x2613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); - let mut x2614: u32 = 0; - let mut x2615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); - let mut x2616: u32 = 0; - let mut x2617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); - let mut x2618: u32 = 0; - let mut x2619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); - let mut x2620: u32 = 0; - let mut x2621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); - let mut x2622: u32 = 0; - let mut x2623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); - let mut x2624: u32 = 0; - let mut x2625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); - let mut x2626: u32 = 0; - let mut x2627: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); - let mut x2628: u32 = 0; - let mut x2629: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); - let mut x2630: u32 = 0; - let mut x2631: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); - let mut x2632: u32 = 0; - let mut x2633: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); - let mut x2634: u32 = 0; - let mut x2635: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); - let mut x2636: u32 = 0; - let mut x2637: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); - let mut x2638: u32 = 0; - let mut x2639: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); - let mut x2640: u32 = 0; - let mut x2641: u32 = 0; - fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); - let mut x2642: u32 = 0; - let mut x2643: u32 = 0; - fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); - let mut x2644: u32 = 0; - let mut x2645: u32 = 0; - fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); - let mut x2646: u32 = 0; - let mut x2647: u32 = 0; - fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); - let mut x2648: u32 = 0; - let mut x2649: u32 = 0; - fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); - let mut x2650: u32 = 0; - let mut x2651: u32 = 0; - fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); - let mut x2652: u32 = 0; - let mut x2653: u32 = 0; - fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); - let mut x2654: u32 = 0; - let mut x2655: u32 = 0; - fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); - let mut x2656: u32 = 0; - let mut x2657: u32 = 0; - fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); - let mut x2658: u32 = 0; - let mut x2659: u32 = 0; - fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); - let mut x2660: u32 = 0; - let mut x2661: u32 = 0; - fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); - let mut x2662: u32 = 0; - let mut x2663: u32 = 0; - fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); - let mut x2664: u32 = 0; - let mut x2665: u32 = 0; - fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); - let mut x2666: u32 = 0; - let mut x2667: u32 = 0; - fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); - let mut x2668: u32 = 0; - let mut x2669: u32 = 0; - fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); - let mut x2670: u32 = 0; - let mut x2671: u32 = 0; - fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); - let mut x2672: u32 = 0; - let mut x2673: u32 = 0; - fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); - let mut x2674: u32 = 0; - let mut x2675: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); - let mut x2676: u32 = 0; - let mut x2677: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); - let mut x2678: u32 = 0; - let mut x2679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); - let mut x2680: u32 = 0; - let mut x2681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); - let mut x2682: u32 = 0; - let mut x2683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); - let mut x2684: u32 = 0; - let mut x2685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); - let mut x2686: u32 = 0; - let mut x2687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); - let mut x2688: u32 = 0; - let mut x2689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); - let mut x2690: u32 = 0; - let mut x2691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); - let mut x2692: u32 = 0; - let mut x2693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); - let mut x2694: u32 = 0; - let mut x2695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); - let mut x2696: u32 = 0; - let mut x2697: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); - let mut x2698: u32 = 0; - let mut x2699: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); - let mut x2700: u32 = 0; - let mut x2701: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); - let mut x2702: u32 = 0; - let mut x2703: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); - let x2704: u32 = ((x2703 as u32) + x2643); - let mut x2705: u32 = 0; - let mut x2706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); - let mut x2707: u32 = 0; - let mut x2708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); - let mut x2709: u32 = 0; - let mut x2710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); - let mut x2711: u32 = 0; - let mut x2712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); - let mut x2713: u32 = 0; - let mut x2714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); - let mut x2715: u32 = 0; - let mut x2716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); - let mut x2717: u32 = 0; - let mut x2718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); - let mut x2719: u32 = 0; - let mut x2720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); - let mut x2721: u32 = 0; - let mut x2722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); - let mut x2723: u32 = 0; - let mut x2724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); - let mut x2725: u32 = 0; - let mut x2726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); - let mut x2727: u32 = 0; - let mut x2728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); - let mut x2729: u32 = 0; - let mut x2730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); - let mut x2731: u32 = 0; - let mut x2732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); - let mut x2733: u32 = 0; - let mut x2734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); - let mut x2735: u32 = 0; - let mut x2736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); - let mut x2737: u32 = 0; - let mut x2738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); - let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); - let mut x2740: u32 = 0; - let mut x2741: u32 = 0; - fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg1[15])); - let mut x2742: u32 = 0; - let mut x2743: u32 = 0; - fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg1[14])); - let mut x2744: u32 = 0; - let mut x2745: u32 = 0; - fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg1[13])); - let mut x2746: u32 = 0; - let mut x2747: u32 = 0; - fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg1[12])); - let mut x2748: u32 = 0; - let mut x2749: u32 = 0; - fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg1[11])); - let mut x2750: u32 = 0; - let mut x2751: u32 = 0; - fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg1[10])); - let mut x2752: u32 = 0; - let mut x2753: u32 = 0; - fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg1[9])); - let mut x2754: u32 = 0; - let mut x2755: u32 = 0; - fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg1[8])); - let mut x2756: u32 = 0; - let mut x2757: u32 = 0; - fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg1[7])); - let mut x2758: u32 = 0; - let mut x2759: u32 = 0; - fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg1[6])); - let mut x2760: u32 = 0; - let mut x2761: u32 = 0; - fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg1[5])); - let mut x2762: u32 = 0; - let mut x2763: u32 = 0; - fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg1[4])); - let mut x2764: u32 = 0; - let mut x2765: u32 = 0; - fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg1[3])); - let mut x2766: u32 = 0; - let mut x2767: u32 = 0; - fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg1[2])); - let mut x2768: u32 = 0; - let mut x2769: u32 = 0; - fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg1[1])); - let mut x2770: u32 = 0; - let mut x2771: u32 = 0; - fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg1[0])); - let mut x2772: u32 = 0; - let mut x2773: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); - let mut x2774: u32 = 0; - let mut x2775: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); - let mut x2776: u32 = 0; - let mut x2777: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); - let mut x2778: u32 = 0; - let mut x2779: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); - let mut x2780: u32 = 0; - let mut x2781: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); - let mut x2782: u32 = 0; - let mut x2783: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); - let mut x2784: u32 = 0; - let mut x2785: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); - let mut x2786: u32 = 0; - let mut x2787: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); - let mut x2788: u32 = 0; - let mut x2789: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); - let mut x2790: u32 = 0; - let mut x2791: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); - let mut x2792: u32 = 0; - let mut x2793: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); - let mut x2794: u32 = 0; - let mut x2795: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); - let mut x2796: u32 = 0; - let mut x2797: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); - let mut x2798: u32 = 0; - let mut x2799: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); - let mut x2800: u32 = 0; - let mut x2801: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); - let x2802: u32 = ((x2801 as u32) + x2741); - let mut x2803: u32 = 0; - let mut x2804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); - let mut x2805: u32 = 0; - let mut x2806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); - let mut x2807: u32 = 0; - let mut x2808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); - let mut x2809: u32 = 0; - let mut x2810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); - let mut x2811: u32 = 0; - let mut x2812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); - let mut x2813: u32 = 0; - let mut x2814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); - let mut x2815: u32 = 0; - let mut x2816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); - let mut x2817: u32 = 0; - let mut x2818: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); - let mut x2819: u32 = 0; - let mut x2820: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); - let mut x2821: u32 = 0; - let mut x2822: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); - let mut x2823: u32 = 0; - let mut x2824: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); - let mut x2825: u32 = 0; - let mut x2826: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); - let mut x2827: u32 = 0; - let mut x2828: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); - let mut x2829: u32 = 0; - let mut x2830: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); - let mut x2831: u32 = 0; - let mut x2832: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); - let mut x2833: u32 = 0; - let mut x2834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); - let mut x2835: u32 = 0; - let mut x2836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); - let mut x2837: u32 = 0; - let mut x2838: u32 = 0; - fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); - let mut x2839: u32 = 0; - let mut x2840: u32 = 0; - fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); - let mut x2841: u32 = 0; - let mut x2842: u32 = 0; - fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); - let mut x2843: u32 = 0; - let mut x2844: u32 = 0; - fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); - let mut x2845: u32 = 0; - let mut x2846: u32 = 0; - fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); - let mut x2847: u32 = 0; - let mut x2848: u32 = 0; - fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); - let mut x2849: u32 = 0; - let mut x2850: u32 = 0; - fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); - let mut x2851: u32 = 0; - let mut x2852: u32 = 0; - fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); - let mut x2853: u32 = 0; - let mut x2854: u32 = 0; - fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); - let mut x2855: u32 = 0; - let mut x2856: u32 = 0; - fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); - let mut x2857: u32 = 0; - let mut x2858: u32 = 0; - fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); - let mut x2859: u32 = 0; - let mut x2860: u32 = 0; - fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); - let mut x2861: u32 = 0; - let mut x2862: u32 = 0; - fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); - let mut x2863: u32 = 0; - let mut x2864: u32 = 0; - fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); - let mut x2865: u32 = 0; - let mut x2866: u32 = 0; - fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); - let mut x2867: u32 = 0; - let mut x2868: u32 = 0; - fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); - let mut x2869: u32 = 0; - let mut x2870: u32 = 0; - fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); - let mut x2871: u32 = 0; - let mut x2872: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); - let mut x2873: u32 = 0; - let mut x2874: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); - let mut x2875: u32 = 0; - let mut x2876: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); - let mut x2877: u32 = 0; - let mut x2878: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); - let mut x2879: u32 = 0; - let mut x2880: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); - let mut x2881: u32 = 0; - let mut x2882: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); - let mut x2883: u32 = 0; - let mut x2884: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); - let mut x2885: u32 = 0; - let mut x2886: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); - let mut x2887: u32 = 0; - let mut x2888: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); - let mut x2889: u32 = 0; - let mut x2890: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); - let mut x2891: u32 = 0; - let mut x2892: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); - let mut x2893: u32 = 0; - let mut x2894: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); - let mut x2895: u32 = 0; - let mut x2896: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); - let mut x2897: u32 = 0; - let mut x2898: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); - let mut x2899: u32 = 0; - let mut x2900: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); - let x2901: u32 = ((x2900 as u32) + x2840); - let mut x2902: u32 = 0; - let mut x2903: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); - let mut x2904: u32 = 0; - let mut x2905: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); - let mut x2906: u32 = 0; - let mut x2907: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); - let mut x2908: u32 = 0; - let mut x2909: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); - let mut x2910: u32 = 0; - let mut x2911: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); - let mut x2912: u32 = 0; - let mut x2913: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); - let mut x2914: u32 = 0; - let mut x2915: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); - let mut x2916: u32 = 0; - let mut x2917: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); - let mut x2918: u32 = 0; - let mut x2919: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); - let mut x2920: u32 = 0; - let mut x2921: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); - let mut x2922: u32 = 0; - let mut x2923: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); - let mut x2924: u32 = 0; - let mut x2925: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); - let mut x2926: u32 = 0; - let mut x2927: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); - let mut x2928: u32 = 0; - let mut x2929: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); - let mut x2930: u32 = 0; - let mut x2931: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); - let mut x2932: u32 = 0; - let mut x2933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); - let mut x2934: u32 = 0; - let mut x2935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); - let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); - let mut x2937: u32 = 0; - let mut x2938: u32 = 0; - fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg1[15])); - let mut x2939: u32 = 0; - let mut x2940: u32 = 0; - fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg1[14])); - let mut x2941: u32 = 0; - let mut x2942: u32 = 0; - fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg1[13])); - let mut x2943: u32 = 0; - let mut x2944: u32 = 0; - fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg1[12])); - let mut x2945: u32 = 0; - let mut x2946: u32 = 0; - fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg1[11])); - let mut x2947: u32 = 0; - let mut x2948: u32 = 0; - fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg1[10])); - let mut x2949: u32 = 0; - let mut x2950: u32 = 0; - fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg1[9])); - let mut x2951: u32 = 0; - let mut x2952: u32 = 0; - fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg1[8])); - let mut x2953: u32 = 0; - let mut x2954: u32 = 0; - fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg1[7])); - let mut x2955: u32 = 0; - let mut x2956: u32 = 0; - fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg1[6])); - let mut x2957: u32 = 0; - let mut x2958: u32 = 0; - fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg1[5])); - let mut x2959: u32 = 0; - let mut x2960: u32 = 0; - fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg1[4])); - let mut x2961: u32 = 0; - let mut x2962: u32 = 0; - fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg1[3])); - let mut x2963: u32 = 0; - let mut x2964: u32 = 0; - fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg1[2])); - let mut x2965: u32 = 0; - let mut x2966: u32 = 0; - fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg1[1])); - let mut x2967: u32 = 0; - let mut x2968: u32 = 0; - fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg1[0])); - let mut x2969: u32 = 0; - let mut x2970: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); - let mut x2971: u32 = 0; - let mut x2972: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); - let mut x2973: u32 = 0; - let mut x2974: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); - let mut x2975: u32 = 0; - let mut x2976: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); - let mut x2977: u32 = 0; - let mut x2978: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); - let mut x2979: u32 = 0; - let mut x2980: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); - let mut x2981: u32 = 0; - let mut x2982: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); - let mut x2983: u32 = 0; - let mut x2984: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); - let mut x2985: u32 = 0; - let mut x2986: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); - let mut x2987: u32 = 0; - let mut x2988: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); - let mut x2989: u32 = 0; - let mut x2990: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); - let mut x2991: u32 = 0; - let mut x2992: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); - let mut x2993: u32 = 0; - let mut x2994: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); - let mut x2995: u32 = 0; - let mut x2996: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); - let mut x2997: u32 = 0; - let mut x2998: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); - let x2999: u32 = ((x2998 as u32) + x2938); - let mut x3000: u32 = 0; - let mut x3001: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); - let mut x3002: u32 = 0; - let mut x3003: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); - let mut x3004: u32 = 0; - let mut x3005: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); - let mut x3006: u32 = 0; - let mut x3007: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); - let mut x3008: u32 = 0; - let mut x3009: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); - let mut x3010: u32 = 0; - let mut x3011: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); - let mut x3012: u32 = 0; - let mut x3013: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); - let mut x3014: u32 = 0; - let mut x3015: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); - let mut x3016: u32 = 0; - let mut x3017: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); - let mut x3018: u32 = 0; - let mut x3019: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); - let mut x3020: u32 = 0; - let mut x3021: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); - let mut x3022: u32 = 0; - let mut x3023: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); - let mut x3024: u32 = 0; - let mut x3025: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); - let mut x3026: u32 = 0; - let mut x3027: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); - let mut x3028: u32 = 0; - let mut x3029: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); - let mut x3030: u32 = 0; - let mut x3031: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); - let mut x3032: u32 = 0; - let mut x3033: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); - let mut x3034: u32 = 0; - let mut x3035: u32 = 0; - fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); - let mut x3036: u32 = 0; - let mut x3037: u32 = 0; - fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); - let mut x3038: u32 = 0; - let mut x3039: u32 = 0; - fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); - let mut x3040: u32 = 0; - let mut x3041: u32 = 0; - fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); - let mut x3042: u32 = 0; - let mut x3043: u32 = 0; - fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); - let mut x3044: u32 = 0; - let mut x3045: u32 = 0; - fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); - let mut x3046: u32 = 0; - let mut x3047: u32 = 0; - fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); - let mut x3048: u32 = 0; - let mut x3049: u32 = 0; - fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); - let mut x3050: u32 = 0; - let mut x3051: u32 = 0; - fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); - let mut x3052: u32 = 0; - let mut x3053: u32 = 0; - fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); - let mut x3054: u32 = 0; - let mut x3055: u32 = 0; - fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); - let mut x3056: u32 = 0; - let mut x3057: u32 = 0; - fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); - let mut x3058: u32 = 0; - let mut x3059: u32 = 0; - fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); - let mut x3060: u32 = 0; - let mut x3061: u32 = 0; - fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); - let mut x3062: u32 = 0; - let mut x3063: u32 = 0; - fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); - let mut x3064: u32 = 0; - let mut x3065: u32 = 0; - fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); - let mut x3066: u32 = 0; - let mut x3067: u32 = 0; - fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); - let mut x3068: u32 = 0; - let mut x3069: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); - let mut x3070: u32 = 0; - let mut x3071: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); - let mut x3072: u32 = 0; - let mut x3073: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); - let mut x3074: u32 = 0; - let mut x3075: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); - let mut x3076: u32 = 0; - let mut x3077: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); - let mut x3078: u32 = 0; - let mut x3079: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); - let mut x3080: u32 = 0; - let mut x3081: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); - let mut x3082: u32 = 0; - let mut x3083: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); - let mut x3084: u32 = 0; - let mut x3085: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); - let mut x3086: u32 = 0; - let mut x3087: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); - let mut x3088: u32 = 0; - let mut x3089: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); - let mut x3090: u32 = 0; - let mut x3091: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); - let mut x3092: u32 = 0; - let mut x3093: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); - let mut x3094: u32 = 0; - let mut x3095: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); - let mut x3096: u32 = 0; - let mut x3097: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); - let x3098: u32 = ((x3097 as u32) + x3037); - let mut x3099: u32 = 0; - let mut x3100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); - let mut x3101: u32 = 0; - let mut x3102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); - let mut x3103: u32 = 0; - let mut x3104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); - let mut x3105: u32 = 0; - let mut x3106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); - let mut x3107: u32 = 0; - let mut x3108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); - let mut x3109: u32 = 0; - let mut x3110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); - let mut x3111: u32 = 0; - let mut x3112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); - let mut x3113: u32 = 0; - let mut x3114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); - let mut x3115: u32 = 0; - let mut x3116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); - let mut x3117: u32 = 0; - let mut x3118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); - let mut x3119: u32 = 0; - let mut x3120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); - let mut x3121: u32 = 0; - let mut x3122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); - let mut x3123: u32 = 0; - let mut x3124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); - let mut x3125: u32 = 0; - let mut x3126: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); - let mut x3127: u32 = 0; - let mut x3128: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); - let mut x3129: u32 = 0; - let mut x3130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); - let mut x3131: u32 = 0; - let mut x3132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); - let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); - let mut x3134: u32 = 0; - let mut x3135: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); - let mut x3136: u32 = 0; - let mut x3137: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); - let mut x3138: u32 = 0; - let mut x3139: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); - let mut x3140: u32 = 0; - let mut x3141: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); - let mut x3142: u32 = 0; - let mut x3143: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); - let mut x3144: u32 = 0; - let mut x3145: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); - let mut x3146: u32 = 0; - let mut x3147: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); - let mut x3148: u32 = 0; - let mut x3149: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); - let mut x3150: u32 = 0; - let mut x3151: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); - let mut x3152: u32 = 0; - let mut x3153: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); - let mut x3154: u32 = 0; - let mut x3155: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); - let mut x3156: u32 = 0; - let mut x3157: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); - let mut x3158: u32 = 0; - let mut x3159: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); - let mut x3160: u32 = 0; - let mut x3161: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); - let mut x3162: u32 = 0; - let mut x3163: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); - let mut x3164: u32 = 0; - let mut x3165: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); - let mut x3166: u32 = 0; - let mut x3167: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); - let mut x3168: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); - let mut x3169: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); - let mut x3170: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); - let mut x3171: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); - let mut x3172: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); - let mut x3173: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); - let mut x3174: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); - let mut x3175: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); - let mut x3176: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); - let mut x3177: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); - let mut x3178: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); - let mut x3179: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); - let mut x3180: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); - let mut x3181: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); - let mut x3182: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); - let mut x3183: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); - out1[0] = x3168; - out1[1] = x3169; - out1[2] = x3170; - out1[3] = x3171; - out1[4] = x3172; - out1[5] = x3173; - out1[6] = x3174; - out1[7] = x3175; - out1[8] = x3176; - out1[9] = x3177; - out1[10] = x3178; - out1[11] = x3179; - out1[12] = x3180; - out1[13] = x3181; - out1[14] = x3182; - out1[15] = x3183; +pub fn fiat_bp512_square( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, (arg1[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, (arg1[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, (arg1[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, (arg1[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, (arg1[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, (arg1[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, (arg1[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, (arg1[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, (arg1[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, (arg1[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, (arg1[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, (arg1[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, (arg1[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, (arg1[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, (arg1[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, (arg1[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_mulx_u32(&mut x80, &mut x81, x47, 0x7d89efc5); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_mulx_u32(&mut x96, &mut x97, x80, 0x70330871); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_mulx_u32(&mut x98, &mut x99, x80, 0x7d4d9b00); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_mulx_u32(&mut x100, &mut x101, x80, 0x9bc66842); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_mulx_u32(&mut x102, &mut x103, x80, 0xaecda12a); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_mulx_u32(&mut x104, &mut x105, x80, 0xe6a380e6); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_mulx_u32(&mut x106, &mut x107, x80, 0x2881ff2f); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_mulx_u32(&mut x108, &mut x109, x80, 0x2d82c685); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_mulx_u32(&mut x110, &mut x111, x80, 0x28aa6056); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_mulx_u32(&mut x112, &mut x113, x80, 0x583a48f3); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, (arg1[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, (arg1[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, (arg1[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, (arg1[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, (arg1[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, (arg1[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, (arg1[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, (arg1[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, (arg1[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, (arg1[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, (arg1[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, (arg1[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, (arg1[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, (arg1[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_mulx_u32(&mut x207, &mut x208, x1, (arg1[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_mulx_u32(&mut x209, &mut x210, x1, (arg1[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x242, 0x7d89efc5); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_mulx_u32(&mut x292, &mut x293, x276, 0x70330871); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_mulx_u32(&mut x294, &mut x295, x276, 0x7d4d9b00); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_mulx_u32(&mut x296, &mut x297, x276, 0x9bc66842); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_mulx_u32(&mut x298, &mut x299, x276, 0xaecda12a); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_mulx_u32(&mut x300, &mut x301, x276, 0xe6a380e6); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_mulx_u32(&mut x302, &mut x303, x276, 0x2881ff2f); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_mulx_u32(&mut x304, &mut x305, x276, 0x2d82c685); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_mulx_u32(&mut x306, &mut x307, x276, 0x28aa6056); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_mulx_u32(&mut x308, &mut x309, x276, 0x583a48f3); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_mulx_u32(&mut x376, &mut x377, x2, (arg1[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_mulx_u32(&mut x378, &mut x379, x2, (arg1[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x2, (arg1[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x2, (arg1[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x2, (arg1[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x2, (arg1[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x2, (arg1[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x2, (arg1[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x2, (arg1[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x2, (arg1[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x2, (arg1[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x2, (arg1[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x2, (arg1[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x2, (arg1[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x2, (arg1[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x2, (arg1[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x439, 0x7d89efc5); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x473, 0x70330871); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x473, 0x7d4d9b00); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_mulx_u32(&mut x493, &mut x494, x473, 0x9bc66842); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_mulx_u32(&mut x495, &mut x496, x473, 0xaecda12a); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_mulx_u32(&mut x497, &mut x498, x473, 0xe6a380e6); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_mulx_u32(&mut x499, &mut x500, x473, 0x2881ff2f); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_mulx_u32(&mut x501, &mut x502, x473, 0x2d82c685); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_mulx_u32(&mut x503, &mut x504, x473, 0x28aa6056); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_mulx_u32(&mut x505, &mut x506, x473, 0x583a48f3); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, (arg1[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, (arg1[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, (arg1[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, (arg1[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, (arg1[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, (arg1[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, (arg1[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_mulx_u32(&mut x587, &mut x588, x3, (arg1[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_mulx_u32(&mut x589, &mut x590, x3, (arg1[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_mulx_u32(&mut x591, &mut x592, x3, (arg1[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_mulx_u32(&mut x593, &mut x594, x3, (arg1[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_mulx_u32(&mut x595, &mut x596, x3, (arg1[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_mulx_u32(&mut x597, &mut x598, x3, (arg1[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_mulx_u32(&mut x599, &mut x600, x3, (arg1[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_mulx_u32(&mut x601, &mut x602, x3, (arg1[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_mulx_u32(&mut x603, &mut x604, x3, (arg1[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_mulx_u32(&mut x670, &mut x671, x636, 0x7d89efc5); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_mulx_u32(&mut x686, &mut x687, x670, 0x70330871); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_mulx_u32(&mut x688, &mut x689, x670, 0x7d4d9b00); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_mulx_u32(&mut x690, &mut x691, x670, 0x9bc66842); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_mulx_u32(&mut x692, &mut x693, x670, 0xaecda12a); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_mulx_u32(&mut x694, &mut x695, x670, 0xe6a380e6); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_mulx_u32(&mut x696, &mut x697, x670, 0x2881ff2f); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_mulx_u32(&mut x698, &mut x699, x670, 0x2d82c685); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_mulx_u32(&mut x700, &mut x701, x670, 0x28aa6056); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_mulx_u32(&mut x702, &mut x703, x670, 0x583a48f3); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x4, (arg1[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x4, (arg1[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x4, (arg1[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x4, (arg1[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x4, (arg1[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x4, (arg1[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x4, (arg1[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x4, (arg1[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x4, (arg1[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x4, (arg1[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x4, (arg1[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_mulx_u32(&mut x792, &mut x793, x4, (arg1[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_mulx_u32(&mut x794, &mut x795, x4, (arg1[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_mulx_u32(&mut x796, &mut x797, x4, (arg1[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_mulx_u32(&mut x798, &mut x799, x4, (arg1[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_mulx_u32(&mut x800, &mut x801, x4, (arg1[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x833, 0x7d89efc5); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_mulx_u32(&mut x883, &mut x884, x867, 0x70330871); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_mulx_u32(&mut x885, &mut x886, x867, 0x7d4d9b00); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_mulx_u32(&mut x887, &mut x888, x867, 0x9bc66842); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_mulx_u32(&mut x889, &mut x890, x867, 0xaecda12a); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_mulx_u32(&mut x891, &mut x892, x867, 0xe6a380e6); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_mulx_u32(&mut x893, &mut x894, x867, 0x2881ff2f); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_mulx_u32(&mut x895, &mut x896, x867, 0x2d82c685); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_mulx_u32(&mut x897, &mut x898, x867, 0x28aa6056); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_mulx_u32(&mut x899, &mut x900, x867, 0x583a48f3); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_mulx_u32(&mut x967, &mut x968, x5, (arg1[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_mulx_u32(&mut x969, &mut x970, x5, (arg1[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_mulx_u32(&mut x971, &mut x972, x5, (arg1[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_mulx_u32(&mut x973, &mut x974, x5, (arg1[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_mulx_u32(&mut x975, &mut x976, x5, (arg1[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_mulx_u32(&mut x977, &mut x978, x5, (arg1[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_mulx_u32(&mut x979, &mut x980, x5, (arg1[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_mulx_u32(&mut x981, &mut x982, x5, (arg1[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_mulx_u32(&mut x983, &mut x984, x5, (arg1[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_mulx_u32(&mut x985, &mut x986, x5, (arg1[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_mulx_u32(&mut x987, &mut x988, x5, (arg1[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_mulx_u32(&mut x989, &mut x990, x5, (arg1[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_mulx_u32(&mut x991, &mut x992, x5, (arg1[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_mulx_u32(&mut x993, &mut x994, x5, (arg1[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_mulx_u32(&mut x995, &mut x996, x5, (arg1[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_mulx_u32(&mut x997, &mut x998, x5, (arg1[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_mulx_u32(&mut x1064, &mut x1065, x1030, 0x7d89efc5); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330871); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_mulx_u32(&mut x1082, &mut x1083, x1064, 0x7d4d9b00); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_mulx_u32(&mut x1084, &mut x1085, x1064, 0x9bc66842); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_mulx_u32(&mut x1086, &mut x1087, x1064, 0xaecda12a); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_mulx_u32(&mut x1088, &mut x1089, x1064, 0xe6a380e6); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_mulx_u32(&mut x1090, &mut x1091, x1064, 0x2881ff2f); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_mulx_u32(&mut x1092, &mut x1093, x1064, 0x2d82c685); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_mulx_u32(&mut x1094, &mut x1095, x1064, 0x28aa6056); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_mulx_u32(&mut x1096, &mut x1097, x1064, 0x583a48f3); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x6, (arg1[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x6, (arg1[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x6, (arg1[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_mulx_u32(&mut x1170, &mut x1171, x6, (arg1[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_mulx_u32(&mut x1172, &mut x1173, x6, (arg1[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_mulx_u32(&mut x1174, &mut x1175, x6, (arg1[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_mulx_u32(&mut x1176, &mut x1177, x6, (arg1[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_mulx_u32(&mut x1178, &mut x1179, x6, (arg1[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_mulx_u32(&mut x1180, &mut x1181, x6, (arg1[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_mulx_u32(&mut x1182, &mut x1183, x6, (arg1[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_mulx_u32(&mut x1184, &mut x1185, x6, (arg1[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_mulx_u32(&mut x1186, &mut x1187, x6, (arg1[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_mulx_u32(&mut x1188, &mut x1189, x6, (arg1[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_mulx_u32(&mut x1190, &mut x1191, x6, (arg1[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_mulx_u32(&mut x1192, &mut x1193, x6, (arg1[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_mulx_u32(&mut x1194, &mut x1195, x6, (arg1[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_mulx_u32(&mut x1261, &mut x1262, x1227, 0x7d89efc5); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330871); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_mulx_u32(&mut x1279, &mut x1280, x1261, 0x7d4d9b00); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_mulx_u32(&mut x1281, &mut x1282, x1261, 0x9bc66842); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_mulx_u32(&mut x1283, &mut x1284, x1261, 0xaecda12a); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_mulx_u32(&mut x1285, &mut x1286, x1261, 0xe6a380e6); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_mulx_u32(&mut x1287, &mut x1288, x1261, 0x2881ff2f); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_mulx_u32(&mut x1289, &mut x1290, x1261, 0x2d82c685); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_mulx_u32(&mut x1291, &mut x1292, x1261, 0x28aa6056); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_mulx_u32(&mut x1293, &mut x1294, x1261, 0x583a48f3); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_mulx_u32(&mut x1361, &mut x1362, x7, (arg1[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_mulx_u32(&mut x1363, &mut x1364, x7, (arg1[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_mulx_u32(&mut x1365, &mut x1366, x7, (arg1[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_mulx_u32(&mut x1367, &mut x1368, x7, (arg1[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_mulx_u32(&mut x1369, &mut x1370, x7, (arg1[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_mulx_u32(&mut x1371, &mut x1372, x7, (arg1[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_mulx_u32(&mut x1373, &mut x1374, x7, (arg1[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_mulx_u32(&mut x1375, &mut x1376, x7, (arg1[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_mulx_u32(&mut x1377, &mut x1378, x7, (arg1[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_mulx_u32(&mut x1379, &mut x1380, x7, (arg1[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_mulx_u32(&mut x1381, &mut x1382, x7, (arg1[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_mulx_u32(&mut x1383, &mut x1384, x7, (arg1[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_mulx_u32(&mut x1385, &mut x1386, x7, (arg1[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_mulx_u32(&mut x1387, &mut x1388, x7, (arg1[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_mulx_u32(&mut x1389, &mut x1390, x7, (arg1[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_mulx_u32(&mut x1391, &mut x1392, x7, (arg1[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_mulx_u32(&mut x1458, &mut x1459, x1424, 0x7d89efc5); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330871); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_mulx_u32(&mut x1476, &mut x1477, x1458, 0x7d4d9b00); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_mulx_u32(&mut x1478, &mut x1479, x1458, 0x9bc66842); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_mulx_u32(&mut x1480, &mut x1481, x1458, 0xaecda12a); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_mulx_u32(&mut x1482, &mut x1483, x1458, 0xe6a380e6); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_mulx_u32(&mut x1484, &mut x1485, x1458, 0x2881ff2f); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_mulx_u32(&mut x1486, &mut x1487, x1458, 0x2d82c685); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_mulx_u32(&mut x1488, &mut x1489, x1458, 0x28aa6056); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_mulx_u32(&mut x1490, &mut x1491, x1458, 0x583a48f3); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_mulx_u32(&mut x1558, &mut x1559, x8, (arg1[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_mulx_u32(&mut x1560, &mut x1561, x8, (arg1[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_mulx_u32(&mut x1562, &mut x1563, x8, (arg1[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_mulx_u32(&mut x1564, &mut x1565, x8, (arg1[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_mulx_u32(&mut x1566, &mut x1567, x8, (arg1[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_mulx_u32(&mut x1568, &mut x1569, x8, (arg1[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_mulx_u32(&mut x1570, &mut x1571, x8, (arg1[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_mulx_u32(&mut x1572, &mut x1573, x8, (arg1[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_mulx_u32(&mut x1574, &mut x1575, x8, (arg1[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_mulx_u32(&mut x1576, &mut x1577, x8, (arg1[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_mulx_u32(&mut x1578, &mut x1579, x8, (arg1[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_mulx_u32(&mut x1580, &mut x1581, x8, (arg1[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_mulx_u32(&mut x1582, &mut x1583, x8, (arg1[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_mulx_u32(&mut x1584, &mut x1585, x8, (arg1[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_mulx_u32(&mut x1586, &mut x1587, x8, (arg1[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_mulx_u32(&mut x1588, &mut x1589, x8, (arg1[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_mulx_u32(&mut x1655, &mut x1656, x1621, 0x7d89efc5); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330871); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_mulx_u32(&mut x1673, &mut x1674, x1655, 0x7d4d9b00); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_mulx_u32(&mut x1675, &mut x1676, x1655, 0x9bc66842); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_mulx_u32(&mut x1677, &mut x1678, x1655, 0xaecda12a); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_mulx_u32(&mut x1679, &mut x1680, x1655, 0xe6a380e6); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_mulx_u32(&mut x1681, &mut x1682, x1655, 0x2881ff2f); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_mulx_u32(&mut x1683, &mut x1684, x1655, 0x2d82c685); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_mulx_u32(&mut x1685, &mut x1686, x1655, 0x28aa6056); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_mulx_u32(&mut x1687, &mut x1688, x1655, 0x583a48f3); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_mulx_u32(&mut x1755, &mut x1756, x9, (arg1[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_mulx_u32(&mut x1757, &mut x1758, x9, (arg1[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_mulx_u32(&mut x1759, &mut x1760, x9, (arg1[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_mulx_u32(&mut x1761, &mut x1762, x9, (arg1[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_mulx_u32(&mut x1763, &mut x1764, x9, (arg1[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_mulx_u32(&mut x1765, &mut x1766, x9, (arg1[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_mulx_u32(&mut x1767, &mut x1768, x9, (arg1[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_mulx_u32(&mut x1769, &mut x1770, x9, (arg1[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_mulx_u32(&mut x1771, &mut x1772, x9, (arg1[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_mulx_u32(&mut x1773, &mut x1774, x9, (arg1[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_mulx_u32(&mut x1775, &mut x1776, x9, (arg1[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_mulx_u32(&mut x1777, &mut x1778, x9, (arg1[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_mulx_u32(&mut x1779, &mut x1780, x9, (arg1[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_mulx_u32(&mut x1781, &mut x1782, x9, (arg1[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_mulx_u32(&mut x1783, &mut x1784, x9, (arg1[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_mulx_u32(&mut x1785, &mut x1786, x9, (arg1[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_mulx_u32(&mut x1852, &mut x1853, x1818, 0x7d89efc5); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330871); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_mulx_u32(&mut x1870, &mut x1871, x1852, 0x7d4d9b00); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_mulx_u32(&mut x1872, &mut x1873, x1852, 0x9bc66842); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_mulx_u32(&mut x1874, &mut x1875, x1852, 0xaecda12a); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_mulx_u32(&mut x1876, &mut x1877, x1852, 0xe6a380e6); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_mulx_u32(&mut x1878, &mut x1879, x1852, 0x2881ff2f); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_mulx_u32(&mut x1880, &mut x1881, x1852, 0x2d82c685); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_mulx_u32(&mut x1882, &mut x1883, x1852, 0x28aa6056); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_mulx_u32(&mut x1884, &mut x1885, x1852, 0x583a48f3); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_mulx_u32(&mut x1952, &mut x1953, x10, (arg1[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_mulx_u32(&mut x1954, &mut x1955, x10, (arg1[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_mulx_u32(&mut x1956, &mut x1957, x10, (arg1[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_mulx_u32(&mut x1958, &mut x1959, x10, (arg1[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_mulx_u32(&mut x1960, &mut x1961, x10, (arg1[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_mulx_u32(&mut x1962, &mut x1963, x10, (arg1[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_mulx_u32(&mut x1964, &mut x1965, x10, (arg1[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_mulx_u32(&mut x1966, &mut x1967, x10, (arg1[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_mulx_u32(&mut x1968, &mut x1969, x10, (arg1[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_mulx_u32(&mut x1970, &mut x1971, x10, (arg1[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_mulx_u32(&mut x1972, &mut x1973, x10, (arg1[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_mulx_u32(&mut x1974, &mut x1975, x10, (arg1[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_mulx_u32(&mut x1976, &mut x1977, x10, (arg1[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_mulx_u32(&mut x1978, &mut x1979, x10, (arg1[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_mulx_u32(&mut x1980, &mut x1981, x10, (arg1[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_mulx_u32(&mut x1982, &mut x1983, x10, (arg1[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_mulx_u32(&mut x2049, &mut x2050, x2015, 0x7d89efc5); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330871); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_mulx_u32(&mut x2067, &mut x2068, x2049, 0x7d4d9b00); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_mulx_u32(&mut x2069, &mut x2070, x2049, 0x9bc66842); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_mulx_u32(&mut x2071, &mut x2072, x2049, 0xaecda12a); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_mulx_u32(&mut x2073, &mut x2074, x2049, 0xe6a380e6); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x2049, 0x2881ff2f); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x2049, 0x2d82c685); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x2049, 0x28aa6056); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x2049, 0x583a48f3); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_mulx_u32(&mut x2149, &mut x2150, x11, (arg1[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_mulx_u32(&mut x2151, &mut x2152, x11, (arg1[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_mulx_u32(&mut x2153, &mut x2154, x11, (arg1[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_mulx_u32(&mut x2155, &mut x2156, x11, (arg1[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_mulx_u32(&mut x2157, &mut x2158, x11, (arg1[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_mulx_u32(&mut x2159, &mut x2160, x11, (arg1[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_mulx_u32(&mut x2161, &mut x2162, x11, (arg1[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_mulx_u32(&mut x2163, &mut x2164, x11, (arg1[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_mulx_u32(&mut x2165, &mut x2166, x11, (arg1[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_mulx_u32(&mut x2167, &mut x2168, x11, (arg1[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x11, (arg1[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x11, (arg1[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x11, (arg1[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x11, (arg1[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x11, (arg1[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x11, (arg1[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_mulx_u32(&mut x2246, &mut x2247, x2212, 0x7d89efc5); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330871); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_mulx_u32(&mut x2264, &mut x2265, x2246, 0x7d4d9b00); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_mulx_u32(&mut x2266, &mut x2267, x2246, 0x9bc66842); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_mulx_u32(&mut x2268, &mut x2269, x2246, 0xaecda12a); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_mulx_u32(&mut x2270, &mut x2271, x2246, 0xe6a380e6); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_mulx_u32(&mut x2272, &mut x2273, x2246, 0x2881ff2f); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_mulx_u32(&mut x2274, &mut x2275, x2246, 0x2d82c685); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_mulx_u32(&mut x2276, &mut x2277, x2246, 0x28aa6056); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_mulx_u32(&mut x2278, &mut x2279, x2246, 0x583a48f3); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_mulx_u32(&mut x2346, &mut x2347, x12, (arg1[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_mulx_u32(&mut x2348, &mut x2349, x12, (arg1[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_mulx_u32(&mut x2350, &mut x2351, x12, (arg1[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_mulx_u32(&mut x2352, &mut x2353, x12, (arg1[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_mulx_u32(&mut x2354, &mut x2355, x12, (arg1[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_mulx_u32(&mut x2356, &mut x2357, x12, (arg1[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_mulx_u32(&mut x2358, &mut x2359, x12, (arg1[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_mulx_u32(&mut x2360, &mut x2361, x12, (arg1[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_mulx_u32(&mut x2362, &mut x2363, x12, (arg1[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_mulx_u32(&mut x2364, &mut x2365, x12, (arg1[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_mulx_u32(&mut x2366, &mut x2367, x12, (arg1[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_mulx_u32(&mut x2368, &mut x2369, x12, (arg1[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_mulx_u32(&mut x2370, &mut x2371, x12, (arg1[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_mulx_u32(&mut x2372, &mut x2373, x12, (arg1[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_mulx_u32(&mut x2374, &mut x2375, x12, (arg1[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_mulx_u32(&mut x2376, &mut x2377, x12, (arg1[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_mulx_u32(&mut x2443, &mut x2444, x2409, 0x7d89efc5); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330871); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x2443, 0x7d4d9b00); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x2443, 0x9bc66842); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x2443, 0xaecda12a); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x2443, 0xe6a380e6); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x2443, 0x2881ff2f); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x2443, 0x2d82c685); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x2443, 0x28aa6056); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x2443, 0x583a48f3); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_mulx_u32(&mut x2543, &mut x2544, x13, (arg1[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_mulx_u32(&mut x2545, &mut x2546, x13, (arg1[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_mulx_u32(&mut x2547, &mut x2548, x13, (arg1[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x13, (arg1[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x13, (arg1[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x13, (arg1[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x13, (arg1[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x13, (arg1[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x13, (arg1[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x13, (arg1[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x13, (arg1[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x13, (arg1[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x13, (arg1[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x13, (arg1[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x13, (arg1[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x13, (arg1[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_mulx_u32(&mut x2640, &mut x2641, x2606, 0x7d89efc5); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330871); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_mulx_u32(&mut x2658, &mut x2659, x2640, 0x7d4d9b00); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_mulx_u32(&mut x2660, &mut x2661, x2640, 0x9bc66842); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_mulx_u32(&mut x2662, &mut x2663, x2640, 0xaecda12a); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_mulx_u32(&mut x2664, &mut x2665, x2640, 0xe6a380e6); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_mulx_u32(&mut x2666, &mut x2667, x2640, 0x2881ff2f); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_mulx_u32(&mut x2668, &mut x2669, x2640, 0x2d82c685); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_mulx_u32(&mut x2670, &mut x2671, x2640, 0x28aa6056); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_mulx_u32(&mut x2672, &mut x2673, x2640, 0x583a48f3); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_mulx_u32(&mut x2740, &mut x2741, x14, (arg1[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_mulx_u32(&mut x2742, &mut x2743, x14, (arg1[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_mulx_u32(&mut x2744, &mut x2745, x14, (arg1[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_mulx_u32(&mut x2746, &mut x2747, x14, (arg1[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_mulx_u32(&mut x2748, &mut x2749, x14, (arg1[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_mulx_u32(&mut x2750, &mut x2751, x14, (arg1[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_mulx_u32(&mut x2752, &mut x2753, x14, (arg1[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_mulx_u32(&mut x2754, &mut x2755, x14, (arg1[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_mulx_u32(&mut x2756, &mut x2757, x14, (arg1[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_mulx_u32(&mut x2758, &mut x2759, x14, (arg1[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_mulx_u32(&mut x2760, &mut x2761, x14, (arg1[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_mulx_u32(&mut x2762, &mut x2763, x14, (arg1[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_mulx_u32(&mut x2764, &mut x2765, x14, (arg1[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_mulx_u32(&mut x2766, &mut x2767, x14, (arg1[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_mulx_u32(&mut x2768, &mut x2769, x14, (arg1[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_mulx_u32(&mut x2770, &mut x2771, x14, (arg1[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x2803, 0x7d89efc5); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330871); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x2837, 0x7d4d9b00); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x2837, 0x9bc66842); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x2837, 0xaecda12a); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x2837, 0xe6a380e6); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x2837, 0x2881ff2f); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x2837, 0x2d82c685); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_mulx_u32(&mut x2867, &mut x2868, x2837, 0x28aa6056); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_mulx_u32(&mut x2869, &mut x2870, x2837, 0x583a48f3); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x15, (arg1[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x15, (arg1[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x15, (arg1[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x15, (arg1[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x15, (arg1[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x15, (arg1[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x15, (arg1[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x15, (arg1[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x15, (arg1[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x15, (arg1[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x15, (arg1[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x15, (arg1[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x15, (arg1[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_mulx_u32(&mut x2963, &mut x2964, x15, (arg1[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_mulx_u32(&mut x2965, &mut x2966, x15, (arg1[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_mulx_u32(&mut x2967, &mut x2968, x15, (arg1[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_mulx_u32(&mut x3034, &mut x3035, x3000, 0x7d89efc5); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330871); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_mulx_u32(&mut x3052, &mut x3053, x3034, 0x7d4d9b00); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_mulx_u32(&mut x3054, &mut x3055, x3034, 0x9bc66842); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_mulx_u32(&mut x3056, &mut x3057, x3034, 0xaecda12a); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_mulx_u32(&mut x3058, &mut x3059, x3034, 0xe6a380e6); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_mulx_u32(&mut x3060, &mut x3061, x3034, 0x2881ff2f); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_mulx_u32(&mut x3062, &mut x3063, x3034, 0x2d82c685); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_mulx_u32(&mut x3064, &mut x3065, x3034, 0x28aa6056); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_mulx_u32(&mut x3066, &mut x3067, x3034, 0x583a48f3); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x583a48f3); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0x28aa6056); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x2d82c685); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x2881ff2f); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0xe6a380e6); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0xaecda12a); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x9bc66842); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x7d4d9b00); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330871); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; } /// The function fiat_bp512_add adds two field elements in the Montgomery domain. @@ -9723,154 +9742,158 @@ pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u32 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); - let mut x3: u32 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); - let mut x5: u32 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); - let mut x7: u32 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); - let mut x9: u32 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); - let mut x11: u32 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); - let mut x13: u32 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); - let mut x15: u32 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); - let mut x17: u32 = 0; - let mut x18: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); - let mut x19: u32 = 0; - let mut x20: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); - let mut x21: u32 = 0; - let mut x22: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); - let mut x23: u32 = 0; - let mut x24: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); - let mut x25: u32 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); - let mut x27: u32 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); - let mut x29: u32 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); - let mut x31: u32 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); - let mut x33: u32 = 0; - let mut x34: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x33, &mut x34, 0x0, x1, 0x583a48f3); - let mut x35: u32 = 0; - let mut x36: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x35, &mut x36, x34, x3, 0x28aa6056); - let mut x37: u32 = 0; - let mut x38: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x37, &mut x38, x36, x5, 0x2d82c685); - let mut x39: u32 = 0; - let mut x40: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x39, &mut x40, x38, x7, 0x2881ff2f); - let mut x41: u32 = 0; - let mut x42: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x41, &mut x42, x40, x9, 0xe6a380e6); - let mut x43: u32 = 0; - let mut x44: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x43, &mut x44, x42, x11, 0xaecda12a); - let mut x45: u32 = 0; - let mut x46: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x45, &mut x46, x44, x13, 0x9bc66842); - let mut x47: u32 = 0; - let mut x48: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x47, &mut x48, x46, x15, 0x7d4d9b00); - let mut x49: u32 = 0; - let mut x50: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x49, &mut x50, x48, x17, 0x70330871); - let mut x51: u32 = 0; - let mut x52: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x51, &mut x52, x50, x19, 0xd6639cca); - let mut x53: u32 = 0; - let mut x54: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x53, &mut x54, x52, x21, 0xb3c9d20e); - let mut x55: u32 = 0; - let mut x56: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x55, &mut x56, x54, x23, 0xcb308db3); - let mut x57: u32 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x57, &mut x58, x56, x25, 0x33c9fc07); - let mut x59: u32 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x59, &mut x60, x58, x27, 0x3fd4e6ae); - let mut x61: u32 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x61, &mut x62, x60, x29, 0xdbe9c48b); - let mut x63: u32 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x63, &mut x64, x62, x31, 0xaadd9db8); - let mut x65: u32 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x65, &mut x66, x64, (x32 as u32), (0x0 as u32)); - let mut x67: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x67, x66, x33, x1); - let mut x68: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x68, x66, x35, x3); - let mut x69: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x69, x66, x37, x5); - let mut x70: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x70, x66, x39, x7); - let mut x71: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x71, x66, x41, x9); - let mut x72: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x72, x66, x43, x11); - let mut x73: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x73, x66, x45, x13); - let mut x74: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x74, x66, x47, x15); - let mut x75: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x75, x66, x49, x17); - let mut x76: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x76, x66, x51, x19); - let mut x77: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x77, x66, x53, x21); - let mut x78: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x78, x66, x55, x23); - let mut x79: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x79, x66, x57, x25); - let mut x80: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x80, x66, x59, x27); - let mut x81: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x81, x66, x61, x29); - let mut x82: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x82, x66, x63, x31); - out1[0] = x67; - out1[1] = x68; - out1[2] = x69; - out1[3] = x70; - out1[4] = x71; - out1[5] = x72; - out1[6] = x73; - out1[7] = x74; - out1[8] = x75; - out1[9] = x76; - out1[10] = x77; - out1[11] = x78; - out1[12] = x79; - out1[13] = x80; - out1[14] = x81; - out1[15] = x82; +pub fn fiat_bp512_add( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x33, &mut x34, 0x0, x1, 0x583a48f3); + let mut x35: u32 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x35, &mut x36, x34, x3, 0x28aa6056); + let mut x37: u32 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x37, &mut x38, x36, x5, 0x2d82c685); + let mut x39: u32 = 0; + let mut x40: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x39, &mut x40, x38, x7, 0x2881ff2f); + let mut x41: u32 = 0; + let mut x42: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x41, &mut x42, x40, x9, 0xe6a380e6); + let mut x43: u32 = 0; + let mut x44: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x43, &mut x44, x42, x11, 0xaecda12a); + let mut x45: u32 = 0; + let mut x46: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x45, &mut x46, x44, x13, 0x9bc66842); + let mut x47: u32 = 0; + let mut x48: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x47, &mut x48, x46, x15, 0x7d4d9b00); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x49, &mut x50, x48, x17, 0x70330871); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x51, &mut x52, x50, x19, 0xd6639cca); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x53, &mut x54, x52, x21, 0xb3c9d20e); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x55, &mut x56, x54, x23, 0xcb308db3); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x57, &mut x58, x56, x25, 0x33c9fc07); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x59, &mut x60, x58, x27, 0x3fd4e6ae); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x61, &mut x62, x60, x29, 0xdbe9c48b); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x63, &mut x64, x62, x31, 0xaadd9db8); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x65, &mut x66, x64, (x32 as u32), (0x0 as u32)); + let mut x67: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x67, x66, x33, x1); + let mut x68: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x68, x66, x35, x3); + let mut x69: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x69, x66, x37, x5); + let mut x70: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x70, x66, x39, x7); + let mut x71: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x71, x66, x41, x9); + let mut x72: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x72, x66, x43, x11); + let mut x73: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x73, x66, x45, x13); + let mut x74: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x74, x66, x47, x15); + let mut x75: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x75, x66, x49, x17); + let mut x76: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x76, x66, x51, x19); + let mut x77: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x77, x66, x53, x21); + let mut x78: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x78, x66, x55, x23); + let mut x79: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x79, x66, x57, x25); + let mut x80: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x80, x66, x59, x27); + let mut x81: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x81, x66, x61, x29); + let mut x82: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x82, x66, x63, x31); + out1[0] = x67; + out1[1] = x68; + out1[2] = x69; + out1[3] = x70; + out1[4] = x71; + out1[5] = x72; + out1[6] = x73; + out1[7] = x74; + out1[8] = x75; + out1[9] = x76; + out1[10] = x77; + out1[11] = x78; + out1[12] = x79; + out1[13] = x80; + out1[14] = x81; + out1[15] = x82; } /// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. @@ -9883,121 +9906,125 @@ pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u32 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); - let mut x3: u32 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); - let mut x5: u32 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); - let mut x7: u32 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); - let mut x9: u32 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); - let mut x11: u32 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); - let mut x13: u32 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); - let mut x15: u32 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); - let mut x17: u32 = 0; - let mut x18: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); - let mut x19: u32 = 0; - let mut x20: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); - let mut x21: u32 = 0; - let mut x22: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); - let mut x23: u32 = 0; - let mut x24: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); - let mut x25: u32 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); - let mut x27: u32 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); - let mut x29: u32 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); - let mut x31: u32 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); - let mut x33: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); - let mut x34: u32 = 0; - let mut x35: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); - let mut x36: u32 = 0; - let mut x37: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); - let mut x38: u32 = 0; - let mut x39: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); - let mut x40: u32 = 0; - let mut x41: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); - let mut x42: u32 = 0; - let mut x43: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); - let mut x44: u32 = 0; - let mut x45: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); - let mut x46: u32 = 0; - let mut x47: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); - let mut x48: u32 = 0; - let mut x49: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); - let mut x50: u32 = 0; - let mut x51: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); - let mut x52: u32 = 0; - let mut x53: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); - let mut x54: u32 = 0; - let mut x55: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); - let mut x56: u32 = 0; - let mut x57: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); - let mut x58: u32 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); - let mut x60: u32 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); - let mut x62: u32 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); - let mut x64: u32 = 0; - let mut x65: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); - out1[0] = x34; - out1[1] = x36; - out1[2] = x38; - out1[3] = x40; - out1[4] = x42; - out1[5] = x44; - out1[6] = x46; - out1[7] = x48; - out1[8] = x50; - out1[9] = x52; - out1[10] = x54; - out1[11] = x56; - out1[12] = x58; - out1[13] = x60; - out1[14] = x62; - out1[15] = x64; +pub fn fiat_bp512_sub( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; } /// The function fiat_bp512_opp negates a field element in the Montgomery domain. @@ -10009,121 +10036,124 @@ pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u32 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); - let mut x3: u32 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); - let mut x5: u32 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); - let mut x7: u32 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); - let mut x9: u32 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); - let mut x11: u32 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); - let mut x13: u32 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); - let mut x15: u32 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); - let mut x17: u32 = 0; - let mut x18: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); - let mut x19: u32 = 0; - let mut x20: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); - let mut x21: u32 = 0; - let mut x22: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); - let mut x23: u32 = 0; - let mut x24: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); - let mut x25: u32 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (0x0 as u32), (arg1[12])); - let mut x27: u32 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (0x0 as u32), (arg1[13])); - let mut x29: u32 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (0x0 as u32), (arg1[14])); - let mut x31: u32 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (0x0 as u32), (arg1[15])); - let mut x33: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); - let mut x34: u32 = 0; - let mut x35: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); - let mut x36: u32 = 0; - let mut x37: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); - let mut x38: u32 = 0; - let mut x39: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); - let mut x40: u32 = 0; - let mut x41: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); - let mut x42: u32 = 0; - let mut x43: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); - let mut x44: u32 = 0; - let mut x45: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); - let mut x46: u32 = 0; - let mut x47: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); - let mut x48: u32 = 0; - let mut x49: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); - let mut x50: u32 = 0; - let mut x51: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); - let mut x52: u32 = 0; - let mut x53: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); - let mut x54: u32 = 0; - let mut x55: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); - let mut x56: u32 = 0; - let mut x57: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); - let mut x58: u32 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); - let mut x60: u32 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); - let mut x62: u32 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); - let mut x64: u32 = 0; - let mut x65: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); - out1[0] = x34; - out1[1] = x36; - out1[2] = x38; - out1[3] = x40; - out1[4] = x42; - out1[5] = x44; - out1[6] = x46; - out1[7] = x48; - out1[8] = x50; - out1[9] = x52; - out1[10] = x54; - out1[11] = x56; - out1[12] = x58; - out1[13] = x60; - out1[14] = x62; - out1[15] = x64; +pub fn fiat_bp512_opp( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x25, &mut x26, x24, (0x0 as u32), (arg1[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x27, &mut x28, x26, (0x0 as u32), (arg1[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x29, &mut x30, x28, (0x0 as u32), (arg1[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x31, &mut x32, x30, (0x0 as u32), (arg1[15])); + let mut x33: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x583a48f3)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0x28aa6056)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x2d82c685)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x2881ff2f)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0xe6a380e6)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0xaecda12a)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x9bc66842)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x7d4d9b00)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330871)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; } /// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. @@ -10135,3087 +10165,3180 @@ pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let x1: u32 = (arg1[0]); - let mut x2: u32 = 0; - let mut x3: u32 = 0; - fiat_bp512_mulx_u32(&mut x2, &mut x3, x1, 0x7d89efc5); - let mut x4: u32 = 0; - let mut x5: u32 = 0; - fiat_bp512_mulx_u32(&mut x4, &mut x5, x2, 0xaadd9db8); - let mut x6: u32 = 0; - let mut x7: u32 = 0; - fiat_bp512_mulx_u32(&mut x6, &mut x7, x2, 0xdbe9c48b); - let mut x8: u32 = 0; - let mut x9: u32 = 0; - fiat_bp512_mulx_u32(&mut x8, &mut x9, x2, 0x3fd4e6ae); - let mut x10: u32 = 0; - let mut x11: u32 = 0; - fiat_bp512_mulx_u32(&mut x10, &mut x11, x2, 0x33c9fc07); - let mut x12: u32 = 0; - let mut x13: u32 = 0; - fiat_bp512_mulx_u32(&mut x12, &mut x13, x2, 0xcb308db3); - let mut x14: u32 = 0; - let mut x15: u32 = 0; - fiat_bp512_mulx_u32(&mut x14, &mut x15, x2, 0xb3c9d20e); - let mut x16: u32 = 0; - let mut x17: u32 = 0; - fiat_bp512_mulx_u32(&mut x16, &mut x17, x2, 0xd6639cca); - let mut x18: u32 = 0; - let mut x19: u32 = 0; - fiat_bp512_mulx_u32(&mut x18, &mut x19, x2, 0x70330871); - let mut x20: u32 = 0; - let mut x21: u32 = 0; - fiat_bp512_mulx_u32(&mut x20, &mut x21, x2, 0x7d4d9b00); - let mut x22: u32 = 0; - let mut x23: u32 = 0; - fiat_bp512_mulx_u32(&mut x22, &mut x23, x2, 0x9bc66842); - let mut x24: u32 = 0; - let mut x25: u32 = 0; - fiat_bp512_mulx_u32(&mut x24, &mut x25, x2, 0xaecda12a); - let mut x26: u32 = 0; - let mut x27: u32 = 0; - fiat_bp512_mulx_u32(&mut x26, &mut x27, x2, 0xe6a380e6); - let mut x28: u32 = 0; - let mut x29: u32 = 0; - fiat_bp512_mulx_u32(&mut x28, &mut x29, x2, 0x2881ff2f); - let mut x30: u32 = 0; - let mut x31: u32 = 0; - fiat_bp512_mulx_u32(&mut x30, &mut x31, x2, 0x2d82c685); - let mut x32: u32 = 0; - let mut x33: u32 = 0; - fiat_bp512_mulx_u32(&mut x32, &mut x33, x2, 0x28aa6056); - let mut x34: u32 = 0; - let mut x35: u32 = 0; - fiat_bp512_mulx_u32(&mut x34, &mut x35, x2, 0x583a48f3); - let mut x36: u32 = 0; - let mut x37: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x36, &mut x37, 0x0, x35, x32); - let mut x38: u32 = 0; - let mut x39: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x33, x30); - let mut x40: u32 = 0; - let mut x41: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x31, x28); - let mut x42: u32 = 0; - let mut x43: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x29, x26); - let mut x44: u32 = 0; - let mut x45: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x27, x24); - let mut x46: u32 = 0; - let mut x47: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x25, x22); - let mut x48: u32 = 0; - let mut x49: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x23, x20); - let mut x50: u32 = 0; - let mut x51: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x21, x18); - let mut x52: u32 = 0; - let mut x53: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, x16); - let mut x54: u32 = 0; - let mut x55: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x17, x14); - let mut x56: u32 = 0; - let mut x57: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x15, x12); - let mut x58: u32 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x13, x10); - let mut x60: u32 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x11, x8); - let mut x62: u32 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x9, x6); - let mut x64: u32 = 0; - let mut x65: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x7, x4); - let mut x66: u32 = 0; - let mut x67: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x66, &mut x67, 0x0, x1, x34); - let mut x68: u32 = 0; - let mut x69: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x36); - let mut x70: u32 = 0; - let mut x71: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x38); - let mut x72: u32 = 0; - let mut x73: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x40); - let mut x74: u32 = 0; - let mut x75: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x74, &mut x75, x73, (0x0 as u32), x42); - let mut x76: u32 = 0; - let mut x77: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x76, &mut x77, x75, (0x0 as u32), x44); - let mut x78: u32 = 0; - let mut x79: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x78, &mut x79, x77, (0x0 as u32), x46); - let mut x80: u32 = 0; - let mut x81: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x80, &mut x81, x79, (0x0 as u32), x48); - let mut x82: u32 = 0; - let mut x83: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x82, &mut x83, x81, (0x0 as u32), x50); - let mut x84: u32 = 0; - let mut x85: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x84, &mut x85, x83, (0x0 as u32), x52); - let mut x86: u32 = 0; - let mut x87: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x86, &mut x87, x85, (0x0 as u32), x54); - let mut x88: u32 = 0; - let mut x89: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x88, &mut x89, x87, (0x0 as u32), x56); - let mut x90: u32 = 0; - let mut x91: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x90, &mut x91, x89, (0x0 as u32), x58); - let mut x92: u32 = 0; - let mut x93: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x92, &mut x93, x91, (0x0 as u32), x60); - let mut x94: u32 = 0; - let mut x95: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x94, &mut x95, x93, (0x0 as u32), x62); - let mut x96: u32 = 0; - let mut x97: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x96, &mut x97, x95, (0x0 as u32), x64); - let mut x98: u32 = 0; - let mut x99: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x98, &mut x99, 0x0, x68, (arg1[1])); - let mut x100: u32 = 0; - let mut x101: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x100, &mut x101, x99, x70, (0x0 as u32)); - let mut x102: u32 = 0; - let mut x103: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x102, &mut x103, x101, x72, (0x0 as u32)); - let mut x104: u32 = 0; - let mut x105: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x104, &mut x105, x103, x74, (0x0 as u32)); - let mut x106: u32 = 0; - let mut x107: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x106, &mut x107, x105, x76, (0x0 as u32)); - let mut x108: u32 = 0; - let mut x109: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x108, &mut x109, x107, x78, (0x0 as u32)); - let mut x110: u32 = 0; - let mut x111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x110, &mut x111, x109, x80, (0x0 as u32)); - let mut x112: u32 = 0; - let mut x113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x112, &mut x113, x111, x82, (0x0 as u32)); - let mut x114: u32 = 0; - let mut x115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x114, &mut x115, x113, x84, (0x0 as u32)); - let mut x116: u32 = 0; - let mut x117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x86, (0x0 as u32)); - let mut x118: u32 = 0; - let mut x119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x88, (0x0 as u32)); - let mut x120: u32 = 0; - let mut x121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x90, (0x0 as u32)); - let mut x122: u32 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x92, (0x0 as u32)); - let mut x124: u32 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x94, (0x0 as u32)); - let mut x126: u32 = 0; - let mut x127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x96, (0x0 as u32)); - let mut x128: u32 = 0; - let mut x129: u32 = 0; - fiat_bp512_mulx_u32(&mut x128, &mut x129, x98, 0x7d89efc5); - let mut x130: u32 = 0; - let mut x131: u32 = 0; - fiat_bp512_mulx_u32(&mut x130, &mut x131, x128, 0xaadd9db8); - let mut x132: u32 = 0; - let mut x133: u32 = 0; - fiat_bp512_mulx_u32(&mut x132, &mut x133, x128, 0xdbe9c48b); - let mut x134: u32 = 0; - let mut x135: u32 = 0; - fiat_bp512_mulx_u32(&mut x134, &mut x135, x128, 0x3fd4e6ae); - let mut x136: u32 = 0; - let mut x137: u32 = 0; - fiat_bp512_mulx_u32(&mut x136, &mut x137, x128, 0x33c9fc07); - let mut x138: u32 = 0; - let mut x139: u32 = 0; - fiat_bp512_mulx_u32(&mut x138, &mut x139, x128, 0xcb308db3); - let mut x140: u32 = 0; - let mut x141: u32 = 0; - fiat_bp512_mulx_u32(&mut x140, &mut x141, x128, 0xb3c9d20e); - let mut x142: u32 = 0; - let mut x143: u32 = 0; - fiat_bp512_mulx_u32(&mut x142, &mut x143, x128, 0xd6639cca); - let mut x144: u32 = 0; - let mut x145: u32 = 0; - fiat_bp512_mulx_u32(&mut x144, &mut x145, x128, 0x70330871); - let mut x146: u32 = 0; - let mut x147: u32 = 0; - fiat_bp512_mulx_u32(&mut x146, &mut x147, x128, 0x7d4d9b00); - let mut x148: u32 = 0; - let mut x149: u32 = 0; - fiat_bp512_mulx_u32(&mut x148, &mut x149, x128, 0x9bc66842); - let mut x150: u32 = 0; - let mut x151: u32 = 0; - fiat_bp512_mulx_u32(&mut x150, &mut x151, x128, 0xaecda12a); - let mut x152: u32 = 0; - let mut x153: u32 = 0; - fiat_bp512_mulx_u32(&mut x152, &mut x153, x128, 0xe6a380e6); - let mut x154: u32 = 0; - let mut x155: u32 = 0; - fiat_bp512_mulx_u32(&mut x154, &mut x155, x128, 0x2881ff2f); - let mut x156: u32 = 0; - let mut x157: u32 = 0; - fiat_bp512_mulx_u32(&mut x156, &mut x157, x128, 0x2d82c685); - let mut x158: u32 = 0; - let mut x159: u32 = 0; - fiat_bp512_mulx_u32(&mut x158, &mut x159, x128, 0x28aa6056); - let mut x160: u32 = 0; - let mut x161: u32 = 0; - fiat_bp512_mulx_u32(&mut x160, &mut x161, x128, 0x583a48f3); - let mut x162: u32 = 0; - let mut x163: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x162, &mut x163, 0x0, x161, x158); - let mut x164: u32 = 0; - let mut x165: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x164, &mut x165, x163, x159, x156); - let mut x166: u32 = 0; - let mut x167: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x166, &mut x167, x165, x157, x154); - let mut x168: u32 = 0; - let mut x169: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x168, &mut x169, x167, x155, x152); - let mut x170: u32 = 0; - let mut x171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x170, &mut x171, x169, x153, x150); - let mut x172: u32 = 0; - let mut x173: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x172, &mut x173, x171, x151, x148); - let mut x174: u32 = 0; - let mut x175: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x174, &mut x175, x173, x149, x146); - let mut x176: u32 = 0; - let mut x177: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x176, &mut x177, x175, x147, x144); - let mut x178: u32 = 0; - let mut x179: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x178, &mut x179, x177, x145, x142); - let mut x180: u32 = 0; - let mut x181: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x180, &mut x181, x179, x143, x140); - let mut x182: u32 = 0; - let mut x183: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x182, &mut x183, x181, x141, x138); - let mut x184: u32 = 0; - let mut x185: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x184, &mut x185, x183, x139, x136); - let mut x186: u32 = 0; - let mut x187: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x186, &mut x187, x185, x137, x134); - let mut x188: u32 = 0; - let mut x189: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x188, &mut x189, x187, x135, x132); - let mut x190: u32 = 0; - let mut x191: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x190, &mut x191, x189, x133, x130); - let mut x192: u32 = 0; - let mut x193: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x192, &mut x193, 0x0, x98, x160); - let mut x194: u32 = 0; - let mut x195: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x194, &mut x195, x193, x100, x162); - let mut x196: u32 = 0; - let mut x197: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x196, &mut x197, x195, x102, x164); - let mut x198: u32 = 0; - let mut x199: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x198, &mut x199, x197, x104, x166); - let mut x200: u32 = 0; - let mut x201: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x200, &mut x201, x199, x106, x168); - let mut x202: u32 = 0; - let mut x203: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x202, &mut x203, x201, x108, x170); - let mut x204: u32 = 0; - let mut x205: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x204, &mut x205, x203, x110, x172); - let mut x206: u32 = 0; - let mut x207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x206, &mut x207, x205, x112, x174); - let mut x208: u32 = 0; - let mut x209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x114, x176); - let mut x210: u32 = 0; - let mut x211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x116, x178); - let mut x212: u32 = 0; - let mut x213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x118, x180); - let mut x214: u32 = 0; - let mut x215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x120, x182); - let mut x216: u32 = 0; - let mut x217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x122, x184); - let mut x218: u32 = 0; - let mut x219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x124, x186); - let mut x220: u32 = 0; - let mut x221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x126, x188); - let mut x222: u32 = 0; - let mut x223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x222, &mut x223, x221, ((x127 as u32) + ((x97 as u32) + ((x65 as u32) + x5))), x190); - let mut x224: u32 = 0; - let mut x225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x224, &mut x225, 0x0, x194, (arg1[2])); - let mut x226: u32 = 0; - let mut x227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x196, (0x0 as u32)); - let mut x228: u32 = 0; - let mut x229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x198, (0x0 as u32)); - let mut x230: u32 = 0; - let mut x231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x200, (0x0 as u32)); - let mut x232: u32 = 0; - let mut x233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x202, (0x0 as u32)); - let mut x234: u32 = 0; - let mut x235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x204, (0x0 as u32)); - let mut x236: u32 = 0; - let mut x237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x206, (0x0 as u32)); - let mut x238: u32 = 0; - let mut x239: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x238, &mut x239, x237, x208, (0x0 as u32)); - let mut x240: u32 = 0; - let mut x241: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x240, &mut x241, x239, x210, (0x0 as u32)); - let mut x242: u32 = 0; - let mut x243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x242, &mut x243, x241, x212, (0x0 as u32)); - let mut x244: u32 = 0; - let mut x245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x214, (0x0 as u32)); - let mut x246: u32 = 0; - let mut x247: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x216, (0x0 as u32)); - let mut x248: u32 = 0; - let mut x249: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x218, (0x0 as u32)); - let mut x250: u32 = 0; - let mut x251: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x220, (0x0 as u32)); - let mut x252: u32 = 0; - let mut x253: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x222, (0x0 as u32)); - let mut x254: u32 = 0; - let mut x255: u32 = 0; - fiat_bp512_mulx_u32(&mut x254, &mut x255, x224, 0x7d89efc5); - let mut x256: u32 = 0; - let mut x257: u32 = 0; - fiat_bp512_mulx_u32(&mut x256, &mut x257, x254, 0xaadd9db8); - let mut x258: u32 = 0; - let mut x259: u32 = 0; - fiat_bp512_mulx_u32(&mut x258, &mut x259, x254, 0xdbe9c48b); - let mut x260: u32 = 0; - let mut x261: u32 = 0; - fiat_bp512_mulx_u32(&mut x260, &mut x261, x254, 0x3fd4e6ae); - let mut x262: u32 = 0; - let mut x263: u32 = 0; - fiat_bp512_mulx_u32(&mut x262, &mut x263, x254, 0x33c9fc07); - let mut x264: u32 = 0; - let mut x265: u32 = 0; - fiat_bp512_mulx_u32(&mut x264, &mut x265, x254, 0xcb308db3); - let mut x266: u32 = 0; - let mut x267: u32 = 0; - fiat_bp512_mulx_u32(&mut x266, &mut x267, x254, 0xb3c9d20e); - let mut x268: u32 = 0; - let mut x269: u32 = 0; - fiat_bp512_mulx_u32(&mut x268, &mut x269, x254, 0xd6639cca); - let mut x270: u32 = 0; - let mut x271: u32 = 0; - fiat_bp512_mulx_u32(&mut x270, &mut x271, x254, 0x70330871); - let mut x272: u32 = 0; - let mut x273: u32 = 0; - fiat_bp512_mulx_u32(&mut x272, &mut x273, x254, 0x7d4d9b00); - let mut x274: u32 = 0; - let mut x275: u32 = 0; - fiat_bp512_mulx_u32(&mut x274, &mut x275, x254, 0x9bc66842); - let mut x276: u32 = 0; - let mut x277: u32 = 0; - fiat_bp512_mulx_u32(&mut x276, &mut x277, x254, 0xaecda12a); - let mut x278: u32 = 0; - let mut x279: u32 = 0; - fiat_bp512_mulx_u32(&mut x278, &mut x279, x254, 0xe6a380e6); - let mut x280: u32 = 0; - let mut x281: u32 = 0; - fiat_bp512_mulx_u32(&mut x280, &mut x281, x254, 0x2881ff2f); - let mut x282: u32 = 0; - let mut x283: u32 = 0; - fiat_bp512_mulx_u32(&mut x282, &mut x283, x254, 0x2d82c685); - let mut x284: u32 = 0; - let mut x285: u32 = 0; - fiat_bp512_mulx_u32(&mut x284, &mut x285, x254, 0x28aa6056); - let mut x286: u32 = 0; - let mut x287: u32 = 0; - fiat_bp512_mulx_u32(&mut x286, &mut x287, x254, 0x583a48f3); - let mut x288: u32 = 0; - let mut x289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x288, &mut x289, 0x0, x287, x284); - let mut x290: u32 = 0; - let mut x291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x285, x282); - let mut x292: u32 = 0; - let mut x293: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x283, x280); - let mut x294: u32 = 0; - let mut x295: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x281, x278); - let mut x296: u32 = 0; - let mut x297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x279, x276); - let mut x298: u32 = 0; - let mut x299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x277, x274); - let mut x300: u32 = 0; - let mut x301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x275, x272); - let mut x302: u32 = 0; - let mut x303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x273, x270); - let mut x304: u32 = 0; - let mut x305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x271, x268); - let mut x306: u32 = 0; - let mut x307: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x306, &mut x307, x305, x269, x266); - let mut x308: u32 = 0; - let mut x309: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x308, &mut x309, x307, x267, x264); - let mut x310: u32 = 0; - let mut x311: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x310, &mut x311, x309, x265, x262); - let mut x312: u32 = 0; - let mut x313: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x263, x260); - let mut x314: u32 = 0; - let mut x315: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x261, x258); - let mut x316: u32 = 0; - let mut x317: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x259, x256); - let mut x318: u32 = 0; - let mut x319: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x318, &mut x319, 0x0, x224, x286); - let mut x320: u32 = 0; - let mut x321: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x226, x288); - let mut x322: u32 = 0; - let mut x323: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x228, x290); - let mut x324: u32 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x230, x292); - let mut x326: u32 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x232, x294); - let mut x328: u32 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x234, x296); - let mut x330: u32 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x236, x298); - let mut x332: u32 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x238, x300); - let mut x334: u32 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x240, x302); - let mut x336: u32 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x242, x304); - let mut x338: u32 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x244, x306); - let mut x340: u32 = 0; - let mut x341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x246, x308); - let mut x342: u32 = 0; - let mut x343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x310); - let mut x344: u32 = 0; - let mut x345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x250, x312); - let mut x346: u32 = 0; - let mut x347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x252, x314); - let mut x348: u32 = 0; - let mut x349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x348, &mut x349, x347, ((x253 as u32) + ((x223 as u32) + ((x191 as u32) + x131))), x316); - let mut x350: u32 = 0; - let mut x351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x350, &mut x351, 0x0, x320, (arg1[3])); - let mut x352: u32 = 0; - let mut x353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x322, (0x0 as u32)); - let mut x354: u32 = 0; - let mut x355: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x354, &mut x355, x353, x324, (0x0 as u32)); - let mut x356: u32 = 0; - let mut x357: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x356, &mut x357, x355, x326, (0x0 as u32)); - let mut x358: u32 = 0; - let mut x359: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x358, &mut x359, x357, x328, (0x0 as u32)); - let mut x360: u32 = 0; - let mut x361: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x360, &mut x361, x359, x330, (0x0 as u32)); - let mut x362: u32 = 0; - let mut x363: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x362, &mut x363, x361, x332, (0x0 as u32)); - let mut x364: u32 = 0; - let mut x365: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x364, &mut x365, x363, x334, (0x0 as u32)); - let mut x366: u32 = 0; - let mut x367: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x366, &mut x367, x365, x336, (0x0 as u32)); - let mut x368: u32 = 0; - let mut x369: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x368, &mut x369, x367, x338, (0x0 as u32)); - let mut x370: u32 = 0; - let mut x371: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x370, &mut x371, x369, x340, (0x0 as u32)); - let mut x372: u32 = 0; - let mut x373: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x372, &mut x373, x371, x342, (0x0 as u32)); - let mut x374: u32 = 0; - let mut x375: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x374, &mut x375, x373, x344, (0x0 as u32)); - let mut x376: u32 = 0; - let mut x377: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x376, &mut x377, x375, x346, (0x0 as u32)); - let mut x378: u32 = 0; - let mut x379: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x378, &mut x379, x377, x348, (0x0 as u32)); - let mut x380: u32 = 0; - let mut x381: u32 = 0; - fiat_bp512_mulx_u32(&mut x380, &mut x381, x350, 0x7d89efc5); - let mut x382: u32 = 0; - let mut x383: u32 = 0; - fiat_bp512_mulx_u32(&mut x382, &mut x383, x380, 0xaadd9db8); - let mut x384: u32 = 0; - let mut x385: u32 = 0; - fiat_bp512_mulx_u32(&mut x384, &mut x385, x380, 0xdbe9c48b); - let mut x386: u32 = 0; - let mut x387: u32 = 0; - fiat_bp512_mulx_u32(&mut x386, &mut x387, x380, 0x3fd4e6ae); - let mut x388: u32 = 0; - let mut x389: u32 = 0; - fiat_bp512_mulx_u32(&mut x388, &mut x389, x380, 0x33c9fc07); - let mut x390: u32 = 0; - let mut x391: u32 = 0; - fiat_bp512_mulx_u32(&mut x390, &mut x391, x380, 0xcb308db3); - let mut x392: u32 = 0; - let mut x393: u32 = 0; - fiat_bp512_mulx_u32(&mut x392, &mut x393, x380, 0xb3c9d20e); - let mut x394: u32 = 0; - let mut x395: u32 = 0; - fiat_bp512_mulx_u32(&mut x394, &mut x395, x380, 0xd6639cca); - let mut x396: u32 = 0; - let mut x397: u32 = 0; - fiat_bp512_mulx_u32(&mut x396, &mut x397, x380, 0x70330871); - let mut x398: u32 = 0; - let mut x399: u32 = 0; - fiat_bp512_mulx_u32(&mut x398, &mut x399, x380, 0x7d4d9b00); - let mut x400: u32 = 0; - let mut x401: u32 = 0; - fiat_bp512_mulx_u32(&mut x400, &mut x401, x380, 0x9bc66842); - let mut x402: u32 = 0; - let mut x403: u32 = 0; - fiat_bp512_mulx_u32(&mut x402, &mut x403, x380, 0xaecda12a); - let mut x404: u32 = 0; - let mut x405: u32 = 0; - fiat_bp512_mulx_u32(&mut x404, &mut x405, x380, 0xe6a380e6); - let mut x406: u32 = 0; - let mut x407: u32 = 0; - fiat_bp512_mulx_u32(&mut x406, &mut x407, x380, 0x2881ff2f); - let mut x408: u32 = 0; - let mut x409: u32 = 0; - fiat_bp512_mulx_u32(&mut x408, &mut x409, x380, 0x2d82c685); - let mut x410: u32 = 0; - let mut x411: u32 = 0; - fiat_bp512_mulx_u32(&mut x410, &mut x411, x380, 0x28aa6056); - let mut x412: u32 = 0; - let mut x413: u32 = 0; - fiat_bp512_mulx_u32(&mut x412, &mut x413, x380, 0x583a48f3); - let mut x414: u32 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x414, &mut x415, 0x0, x413, x410); - let mut x416: u32 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x411, x408); - let mut x418: u32 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x409, x406); - let mut x420: u32 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x407, x404); - let mut x422: u32 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x405, x402); - let mut x424: u32 = 0; - let mut x425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x403, x400); - let mut x426: u32 = 0; - let mut x427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x401, x398); - let mut x428: u32 = 0; - let mut x429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x399, x396); - let mut x430: u32 = 0; - let mut x431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x397, x394); - let mut x432: u32 = 0; - let mut x433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x395, x392); - let mut x434: u32 = 0; - let mut x435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x393, x390); - let mut x436: u32 = 0; - let mut x437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x391, x388); - let mut x438: u32 = 0; - let mut x439: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x438, &mut x439, x437, x389, x386); - let mut x440: u32 = 0; - let mut x441: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x440, &mut x441, x439, x387, x384); - let mut x442: u32 = 0; - let mut x443: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x442, &mut x443, x441, x385, x382); - let mut x444: u32 = 0; - let mut x445: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x444, &mut x445, 0x0, x350, x412); - let mut x446: u32 = 0; - let mut x447: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x446, &mut x447, x445, x352, x414); - let mut x448: u32 = 0; - let mut x449: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x448, &mut x449, x447, x354, x416); - let mut x450: u32 = 0; - let mut x451: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x450, &mut x451, x449, x356, x418); - let mut x452: u32 = 0; - let mut x453: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x452, &mut x453, x451, x358, x420); - let mut x454: u32 = 0; - let mut x455: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x454, &mut x455, x453, x360, x422); - let mut x456: u32 = 0; - let mut x457: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x456, &mut x457, x455, x362, x424); - let mut x458: u32 = 0; - let mut x459: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x458, &mut x459, x457, x364, x426); - let mut x460: u32 = 0; - let mut x461: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x460, &mut x461, x459, x366, x428); - let mut x462: u32 = 0; - let mut x463: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x462, &mut x463, x461, x368, x430); - let mut x464: u32 = 0; - let mut x465: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x464, &mut x465, x463, x370, x432); - let mut x466: u32 = 0; - let mut x467: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x466, &mut x467, x465, x372, x434); - let mut x468: u32 = 0; - let mut x469: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x468, &mut x469, x467, x374, x436); - let mut x470: u32 = 0; - let mut x471: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x470, &mut x471, x469, x376, x438); - let mut x472: u32 = 0; - let mut x473: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x472, &mut x473, x471, x378, x440); - let mut x474: u32 = 0; - let mut x475: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x474, &mut x475, x473, ((x379 as u32) + ((x349 as u32) + ((x317 as u32) + x257))), x442); - let mut x476: u32 = 0; - let mut x477: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x476, &mut x477, 0x0, x446, (arg1[4])); - let mut x478: u32 = 0; - let mut x479: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x478, &mut x479, x477, x448, (0x0 as u32)); - let mut x480: u32 = 0; - let mut x481: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x480, &mut x481, x479, x450, (0x0 as u32)); - let mut x482: u32 = 0; - let mut x483: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x482, &mut x483, x481, x452, (0x0 as u32)); - let mut x484: u32 = 0; - let mut x485: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x484, &mut x485, x483, x454, (0x0 as u32)); - let mut x486: u32 = 0; - let mut x487: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x486, &mut x487, x485, x456, (0x0 as u32)); - let mut x488: u32 = 0; - let mut x489: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x488, &mut x489, x487, x458, (0x0 as u32)); - let mut x490: u32 = 0; - let mut x491: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x490, &mut x491, x489, x460, (0x0 as u32)); - let mut x492: u32 = 0; - let mut x493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x492, &mut x493, x491, x462, (0x0 as u32)); - let mut x494: u32 = 0; - let mut x495: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x494, &mut x495, x493, x464, (0x0 as u32)); - let mut x496: u32 = 0; - let mut x497: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x496, &mut x497, x495, x466, (0x0 as u32)); - let mut x498: u32 = 0; - let mut x499: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x498, &mut x499, x497, x468, (0x0 as u32)); - let mut x500: u32 = 0; - let mut x501: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x500, &mut x501, x499, x470, (0x0 as u32)); - let mut x502: u32 = 0; - let mut x503: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x502, &mut x503, x501, x472, (0x0 as u32)); - let mut x504: u32 = 0; - let mut x505: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x504, &mut x505, x503, x474, (0x0 as u32)); - let mut x506: u32 = 0; - let mut x507: u32 = 0; - fiat_bp512_mulx_u32(&mut x506, &mut x507, x476, 0x7d89efc5); - let mut x508: u32 = 0; - let mut x509: u32 = 0; - fiat_bp512_mulx_u32(&mut x508, &mut x509, x506, 0xaadd9db8); - let mut x510: u32 = 0; - let mut x511: u32 = 0; - fiat_bp512_mulx_u32(&mut x510, &mut x511, x506, 0xdbe9c48b); - let mut x512: u32 = 0; - let mut x513: u32 = 0; - fiat_bp512_mulx_u32(&mut x512, &mut x513, x506, 0x3fd4e6ae); - let mut x514: u32 = 0; - let mut x515: u32 = 0; - fiat_bp512_mulx_u32(&mut x514, &mut x515, x506, 0x33c9fc07); - let mut x516: u32 = 0; - let mut x517: u32 = 0; - fiat_bp512_mulx_u32(&mut x516, &mut x517, x506, 0xcb308db3); - let mut x518: u32 = 0; - let mut x519: u32 = 0; - fiat_bp512_mulx_u32(&mut x518, &mut x519, x506, 0xb3c9d20e); - let mut x520: u32 = 0; - let mut x521: u32 = 0; - fiat_bp512_mulx_u32(&mut x520, &mut x521, x506, 0xd6639cca); - let mut x522: u32 = 0; - let mut x523: u32 = 0; - fiat_bp512_mulx_u32(&mut x522, &mut x523, x506, 0x70330871); - let mut x524: u32 = 0; - let mut x525: u32 = 0; - fiat_bp512_mulx_u32(&mut x524, &mut x525, x506, 0x7d4d9b00); - let mut x526: u32 = 0; - let mut x527: u32 = 0; - fiat_bp512_mulx_u32(&mut x526, &mut x527, x506, 0x9bc66842); - let mut x528: u32 = 0; - let mut x529: u32 = 0; - fiat_bp512_mulx_u32(&mut x528, &mut x529, x506, 0xaecda12a); - let mut x530: u32 = 0; - let mut x531: u32 = 0; - fiat_bp512_mulx_u32(&mut x530, &mut x531, x506, 0xe6a380e6); - let mut x532: u32 = 0; - let mut x533: u32 = 0; - fiat_bp512_mulx_u32(&mut x532, &mut x533, x506, 0x2881ff2f); - let mut x534: u32 = 0; - let mut x535: u32 = 0; - fiat_bp512_mulx_u32(&mut x534, &mut x535, x506, 0x2d82c685); - let mut x536: u32 = 0; - let mut x537: u32 = 0; - fiat_bp512_mulx_u32(&mut x536, &mut x537, x506, 0x28aa6056); - let mut x538: u32 = 0; - let mut x539: u32 = 0; - fiat_bp512_mulx_u32(&mut x538, &mut x539, x506, 0x583a48f3); - let mut x540: u32 = 0; - let mut x541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x540, &mut x541, 0x0, x539, x536); - let mut x542: u32 = 0; - let mut x543: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x537, x534); - let mut x544: u32 = 0; - let mut x545: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x535, x532); - let mut x546: u32 = 0; - let mut x547: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x533, x530); - let mut x548: u32 = 0; - let mut x549: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x531, x528); - let mut x550: u32 = 0; - let mut x551: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x529, x526); - let mut x552: u32 = 0; - let mut x553: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x527, x524); - let mut x554: u32 = 0; - let mut x555: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x525, x522); - let mut x556: u32 = 0; - let mut x557: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x523, x520); - let mut x558: u32 = 0; - let mut x559: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x521, x518); - let mut x560: u32 = 0; - let mut x561: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x519, x516); - let mut x562: u32 = 0; - let mut x563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x517, x514); - let mut x564: u32 = 0; - let mut x565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x515, x512); - let mut x566: u32 = 0; - let mut x567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x513, x510); - let mut x568: u32 = 0; - let mut x569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x511, x508); - let mut x570: u32 = 0; - let mut x571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x570, &mut x571, 0x0, x476, x538); - let mut x572: u32 = 0; - let mut x573: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x572, &mut x573, x571, x478, x540); - let mut x574: u32 = 0; - let mut x575: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x574, &mut x575, x573, x480, x542); - let mut x576: u32 = 0; - let mut x577: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x576, &mut x577, x575, x482, x544); - let mut x578: u32 = 0; - let mut x579: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x578, &mut x579, x577, x484, x546); - let mut x580: u32 = 0; - let mut x581: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x580, &mut x581, x579, x486, x548); - let mut x582: u32 = 0; - let mut x583: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x582, &mut x583, x581, x488, x550); - let mut x584: u32 = 0; - let mut x585: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x584, &mut x585, x583, x490, x552); - let mut x586: u32 = 0; - let mut x587: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x586, &mut x587, x585, x492, x554); - let mut x588: u32 = 0; - let mut x589: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x588, &mut x589, x587, x494, x556); - let mut x590: u32 = 0; - let mut x591: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x590, &mut x591, x589, x496, x558); - let mut x592: u32 = 0; - let mut x593: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x592, &mut x593, x591, x498, x560); - let mut x594: u32 = 0; - let mut x595: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x594, &mut x595, x593, x500, x562); - let mut x596: u32 = 0; - let mut x597: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x596, &mut x597, x595, x502, x564); - let mut x598: u32 = 0; - let mut x599: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x598, &mut x599, x597, x504, x566); - let mut x600: u32 = 0; - let mut x601: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x600, &mut x601, x599, ((x505 as u32) + ((x475 as u32) + ((x443 as u32) + x383))), x568); - let mut x602: u32 = 0; - let mut x603: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x602, &mut x603, 0x0, x572, (arg1[5])); - let mut x604: u32 = 0; - let mut x605: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x604, &mut x605, x603, x574, (0x0 as u32)); - let mut x606: u32 = 0; - let mut x607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x606, &mut x607, x605, x576, (0x0 as u32)); - let mut x608: u32 = 0; - let mut x609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x608, &mut x609, x607, x578, (0x0 as u32)); - let mut x610: u32 = 0; - let mut x611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x610, &mut x611, x609, x580, (0x0 as u32)); - let mut x612: u32 = 0; - let mut x613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x612, &mut x613, x611, x582, (0x0 as u32)); - let mut x614: u32 = 0; - let mut x615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x614, &mut x615, x613, x584, (0x0 as u32)); - let mut x616: u32 = 0; - let mut x617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x616, &mut x617, x615, x586, (0x0 as u32)); - let mut x618: u32 = 0; - let mut x619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x618, &mut x619, x617, x588, (0x0 as u32)); - let mut x620: u32 = 0; - let mut x621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x620, &mut x621, x619, x590, (0x0 as u32)); - let mut x622: u32 = 0; - let mut x623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x622, &mut x623, x621, x592, (0x0 as u32)); - let mut x624: u32 = 0; - let mut x625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x624, &mut x625, x623, x594, (0x0 as u32)); - let mut x626: u32 = 0; - let mut x627: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x626, &mut x627, x625, x596, (0x0 as u32)); - let mut x628: u32 = 0; - let mut x629: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x628, &mut x629, x627, x598, (0x0 as u32)); - let mut x630: u32 = 0; - let mut x631: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x630, &mut x631, x629, x600, (0x0 as u32)); - let mut x632: u32 = 0; - let mut x633: u32 = 0; - fiat_bp512_mulx_u32(&mut x632, &mut x633, x602, 0x7d89efc5); - let mut x634: u32 = 0; - let mut x635: u32 = 0; - fiat_bp512_mulx_u32(&mut x634, &mut x635, x632, 0xaadd9db8); - let mut x636: u32 = 0; - let mut x637: u32 = 0; - fiat_bp512_mulx_u32(&mut x636, &mut x637, x632, 0xdbe9c48b); - let mut x638: u32 = 0; - let mut x639: u32 = 0; - fiat_bp512_mulx_u32(&mut x638, &mut x639, x632, 0x3fd4e6ae); - let mut x640: u32 = 0; - let mut x641: u32 = 0; - fiat_bp512_mulx_u32(&mut x640, &mut x641, x632, 0x33c9fc07); - let mut x642: u32 = 0; - let mut x643: u32 = 0; - fiat_bp512_mulx_u32(&mut x642, &mut x643, x632, 0xcb308db3); - let mut x644: u32 = 0; - let mut x645: u32 = 0; - fiat_bp512_mulx_u32(&mut x644, &mut x645, x632, 0xb3c9d20e); - let mut x646: u32 = 0; - let mut x647: u32 = 0; - fiat_bp512_mulx_u32(&mut x646, &mut x647, x632, 0xd6639cca); - let mut x648: u32 = 0; - let mut x649: u32 = 0; - fiat_bp512_mulx_u32(&mut x648, &mut x649, x632, 0x70330871); - let mut x650: u32 = 0; - let mut x651: u32 = 0; - fiat_bp512_mulx_u32(&mut x650, &mut x651, x632, 0x7d4d9b00); - let mut x652: u32 = 0; - let mut x653: u32 = 0; - fiat_bp512_mulx_u32(&mut x652, &mut x653, x632, 0x9bc66842); - let mut x654: u32 = 0; - let mut x655: u32 = 0; - fiat_bp512_mulx_u32(&mut x654, &mut x655, x632, 0xaecda12a); - let mut x656: u32 = 0; - let mut x657: u32 = 0; - fiat_bp512_mulx_u32(&mut x656, &mut x657, x632, 0xe6a380e6); - let mut x658: u32 = 0; - let mut x659: u32 = 0; - fiat_bp512_mulx_u32(&mut x658, &mut x659, x632, 0x2881ff2f); - let mut x660: u32 = 0; - let mut x661: u32 = 0; - fiat_bp512_mulx_u32(&mut x660, &mut x661, x632, 0x2d82c685); - let mut x662: u32 = 0; - let mut x663: u32 = 0; - fiat_bp512_mulx_u32(&mut x662, &mut x663, x632, 0x28aa6056); - let mut x664: u32 = 0; - let mut x665: u32 = 0; - fiat_bp512_mulx_u32(&mut x664, &mut x665, x632, 0x583a48f3); - let mut x666: u32 = 0; - let mut x667: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x666, &mut x667, 0x0, x665, x662); - let mut x668: u32 = 0; - let mut x669: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x663, x660); - let mut x670: u32 = 0; - let mut x671: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x670, &mut x671, x669, x661, x658); - let mut x672: u32 = 0; - let mut x673: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x672, &mut x673, x671, x659, x656); - let mut x674: u32 = 0; - let mut x675: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x674, &mut x675, x673, x657, x654); - let mut x676: u32 = 0; - let mut x677: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x676, &mut x677, x675, x655, x652); - let mut x678: u32 = 0; - let mut x679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x678, &mut x679, x677, x653, x650); - let mut x680: u32 = 0; - let mut x681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x680, &mut x681, x679, x651, x648); - let mut x682: u32 = 0; - let mut x683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x682, &mut x683, x681, x649, x646); - let mut x684: u32 = 0; - let mut x685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x684, &mut x685, x683, x647, x644); - let mut x686: u32 = 0; - let mut x687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x686, &mut x687, x685, x645, x642); - let mut x688: u32 = 0; - let mut x689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x688, &mut x689, x687, x643, x640); - let mut x690: u32 = 0; - let mut x691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x690, &mut x691, x689, x641, x638); - let mut x692: u32 = 0; - let mut x693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x692, &mut x693, x691, x639, x636); - let mut x694: u32 = 0; - let mut x695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x694, &mut x695, x693, x637, x634); - let mut x696: u32 = 0; - let mut x697: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x696, &mut x697, 0x0, x602, x664); - let mut x698: u32 = 0; - let mut x699: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x698, &mut x699, x697, x604, x666); - let mut x700: u32 = 0; - let mut x701: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x700, &mut x701, x699, x606, x668); - let mut x702: u32 = 0; - let mut x703: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x702, &mut x703, x701, x608, x670); - let mut x704: u32 = 0; - let mut x705: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x704, &mut x705, x703, x610, x672); - let mut x706: u32 = 0; - let mut x707: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x612, x674); - let mut x708: u32 = 0; - let mut x709: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x614, x676); - let mut x710: u32 = 0; - let mut x711: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x616, x678); - let mut x712: u32 = 0; - let mut x713: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x618, x680); - let mut x714: u32 = 0; - let mut x715: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x620, x682); - let mut x716: u32 = 0; - let mut x717: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x622, x684); - let mut x718: u32 = 0; - let mut x719: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x624, x686); - let mut x720: u32 = 0; - let mut x721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x626, x688); - let mut x722: u32 = 0; - let mut x723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x628, x690); - let mut x724: u32 = 0; - let mut x725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x630, x692); - let mut x726: u32 = 0; - let mut x727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x726, &mut x727, x725, ((x631 as u32) + ((x601 as u32) + ((x569 as u32) + x509))), x694); - let mut x728: u32 = 0; - let mut x729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x728, &mut x729, 0x0, x698, (arg1[6])); - let mut x730: u32 = 0; - let mut x731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x700, (0x0 as u32)); - let mut x732: u32 = 0; - let mut x733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x702, (0x0 as u32)); - let mut x734: u32 = 0; - let mut x735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x734, &mut x735, x733, x704, (0x0 as u32)); - let mut x736: u32 = 0; - let mut x737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x736, &mut x737, x735, x706, (0x0 as u32)); - let mut x738: u32 = 0; - let mut x739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x738, &mut x739, x737, x708, (0x0 as u32)); - let mut x740: u32 = 0; - let mut x741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x740, &mut x741, x739, x710, (0x0 as u32)); - let mut x742: u32 = 0; - let mut x743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x742, &mut x743, x741, x712, (0x0 as u32)); - let mut x744: u32 = 0; - let mut x745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x744, &mut x745, x743, x714, (0x0 as u32)); - let mut x746: u32 = 0; - let mut x747: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x746, &mut x747, x745, x716, (0x0 as u32)); - let mut x748: u32 = 0; - let mut x749: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x748, &mut x749, x747, x718, (0x0 as u32)); - let mut x750: u32 = 0; - let mut x751: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x750, &mut x751, x749, x720, (0x0 as u32)); - let mut x752: u32 = 0; - let mut x753: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x752, &mut x753, x751, x722, (0x0 as u32)); - let mut x754: u32 = 0; - let mut x755: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x754, &mut x755, x753, x724, (0x0 as u32)); - let mut x756: u32 = 0; - let mut x757: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x756, &mut x757, x755, x726, (0x0 as u32)); - let mut x758: u32 = 0; - let mut x759: u32 = 0; - fiat_bp512_mulx_u32(&mut x758, &mut x759, x728, 0x7d89efc5); - let mut x760: u32 = 0; - let mut x761: u32 = 0; - fiat_bp512_mulx_u32(&mut x760, &mut x761, x758, 0xaadd9db8); - let mut x762: u32 = 0; - let mut x763: u32 = 0; - fiat_bp512_mulx_u32(&mut x762, &mut x763, x758, 0xdbe9c48b); - let mut x764: u32 = 0; - let mut x765: u32 = 0; - fiat_bp512_mulx_u32(&mut x764, &mut x765, x758, 0x3fd4e6ae); - let mut x766: u32 = 0; - let mut x767: u32 = 0; - fiat_bp512_mulx_u32(&mut x766, &mut x767, x758, 0x33c9fc07); - let mut x768: u32 = 0; - let mut x769: u32 = 0; - fiat_bp512_mulx_u32(&mut x768, &mut x769, x758, 0xcb308db3); - let mut x770: u32 = 0; - let mut x771: u32 = 0; - fiat_bp512_mulx_u32(&mut x770, &mut x771, x758, 0xb3c9d20e); - let mut x772: u32 = 0; - let mut x773: u32 = 0; - fiat_bp512_mulx_u32(&mut x772, &mut x773, x758, 0xd6639cca); - let mut x774: u32 = 0; - let mut x775: u32 = 0; - fiat_bp512_mulx_u32(&mut x774, &mut x775, x758, 0x70330871); - let mut x776: u32 = 0; - let mut x777: u32 = 0; - fiat_bp512_mulx_u32(&mut x776, &mut x777, x758, 0x7d4d9b00); - let mut x778: u32 = 0; - let mut x779: u32 = 0; - fiat_bp512_mulx_u32(&mut x778, &mut x779, x758, 0x9bc66842); - let mut x780: u32 = 0; - let mut x781: u32 = 0; - fiat_bp512_mulx_u32(&mut x780, &mut x781, x758, 0xaecda12a); - let mut x782: u32 = 0; - let mut x783: u32 = 0; - fiat_bp512_mulx_u32(&mut x782, &mut x783, x758, 0xe6a380e6); - let mut x784: u32 = 0; - let mut x785: u32 = 0; - fiat_bp512_mulx_u32(&mut x784, &mut x785, x758, 0x2881ff2f); - let mut x786: u32 = 0; - let mut x787: u32 = 0; - fiat_bp512_mulx_u32(&mut x786, &mut x787, x758, 0x2d82c685); - let mut x788: u32 = 0; - let mut x789: u32 = 0; - fiat_bp512_mulx_u32(&mut x788, &mut x789, x758, 0x28aa6056); - let mut x790: u32 = 0; - let mut x791: u32 = 0; - fiat_bp512_mulx_u32(&mut x790, &mut x791, x758, 0x583a48f3); - let mut x792: u32 = 0; - let mut x793: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x792, &mut x793, 0x0, x791, x788); - let mut x794: u32 = 0; - let mut x795: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x794, &mut x795, x793, x789, x786); - let mut x796: u32 = 0; - let mut x797: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x796, &mut x797, x795, x787, x784); - let mut x798: u32 = 0; - let mut x799: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x798, &mut x799, x797, x785, x782); - let mut x800: u32 = 0; - let mut x801: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x800, &mut x801, x799, x783, x780); - let mut x802: u32 = 0; - let mut x803: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x802, &mut x803, x801, x781, x778); - let mut x804: u32 = 0; - let mut x805: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x779, x776); - let mut x806: u32 = 0; - let mut x807: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x777, x774); - let mut x808: u32 = 0; - let mut x809: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x775, x772); - let mut x810: u32 = 0; - let mut x811: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x773, x770); - let mut x812: u32 = 0; - let mut x813: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x771, x768); - let mut x814: u32 = 0; - let mut x815: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x769, x766); - let mut x816: u32 = 0; - let mut x817: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x767, x764); - let mut x818: u32 = 0; - let mut x819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x765, x762); - let mut x820: u32 = 0; - let mut x821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x763, x760); - let mut x822: u32 = 0; - let mut x823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x822, &mut x823, 0x0, x728, x790); - let mut x824: u32 = 0; - let mut x825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x730, x792); - let mut x826: u32 = 0; - let mut x827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x732, x794); - let mut x828: u32 = 0; - let mut x829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x734, x796); - let mut x830: u32 = 0; - let mut x831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x736, x798); - let mut x832: u32 = 0; - let mut x833: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x832, &mut x833, x831, x738, x800); - let mut x834: u32 = 0; - let mut x835: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x834, &mut x835, x833, x740, x802); - let mut x836: u32 = 0; - let mut x837: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x836, &mut x837, x835, x742, x804); - let mut x838: u32 = 0; - let mut x839: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x838, &mut x839, x837, x744, x806); - let mut x840: u32 = 0; - let mut x841: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x840, &mut x841, x839, x746, x808); - let mut x842: u32 = 0; - let mut x843: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x842, &mut x843, x841, x748, x810); - let mut x844: u32 = 0; - let mut x845: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x844, &mut x845, x843, x750, x812); - let mut x846: u32 = 0; - let mut x847: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x846, &mut x847, x845, x752, x814); - let mut x848: u32 = 0; - let mut x849: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x848, &mut x849, x847, x754, x816); - let mut x850: u32 = 0; - let mut x851: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x850, &mut x851, x849, x756, x818); - let mut x852: u32 = 0; - let mut x853: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x852, &mut x853, x851, ((x757 as u32) + ((x727 as u32) + ((x695 as u32) + x635))), x820); - let mut x854: u32 = 0; - let mut x855: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x854, &mut x855, 0x0, x824, (arg1[7])); - let mut x856: u32 = 0; - let mut x857: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x856, &mut x857, x855, x826, (0x0 as u32)); - let mut x858: u32 = 0; - let mut x859: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x858, &mut x859, x857, x828, (0x0 as u32)); - let mut x860: u32 = 0; - let mut x861: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x860, &mut x861, x859, x830, (0x0 as u32)); - let mut x862: u32 = 0; - let mut x863: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x862, &mut x863, x861, x832, (0x0 as u32)); - let mut x864: u32 = 0; - let mut x865: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x864, &mut x865, x863, x834, (0x0 as u32)); - let mut x866: u32 = 0; - let mut x867: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x866, &mut x867, x865, x836, (0x0 as u32)); - let mut x868: u32 = 0; - let mut x869: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x868, &mut x869, x867, x838, (0x0 as u32)); - let mut x870: u32 = 0; - let mut x871: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x870, &mut x871, x869, x840, (0x0 as u32)); - let mut x872: u32 = 0; - let mut x873: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x872, &mut x873, x871, x842, (0x0 as u32)); - let mut x874: u32 = 0; - let mut x875: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x874, &mut x875, x873, x844, (0x0 as u32)); - let mut x876: u32 = 0; - let mut x877: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x876, &mut x877, x875, x846, (0x0 as u32)); - let mut x878: u32 = 0; - let mut x879: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x878, &mut x879, x877, x848, (0x0 as u32)); - let mut x880: u32 = 0; - let mut x881: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x880, &mut x881, x879, x850, (0x0 as u32)); - let mut x882: u32 = 0; - let mut x883: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x882, &mut x883, x881, x852, (0x0 as u32)); - let mut x884: u32 = 0; - let mut x885: u32 = 0; - fiat_bp512_mulx_u32(&mut x884, &mut x885, x854, 0x7d89efc5); - let mut x886: u32 = 0; - let mut x887: u32 = 0; - fiat_bp512_mulx_u32(&mut x886, &mut x887, x884, 0xaadd9db8); - let mut x888: u32 = 0; - let mut x889: u32 = 0; - fiat_bp512_mulx_u32(&mut x888, &mut x889, x884, 0xdbe9c48b); - let mut x890: u32 = 0; - let mut x891: u32 = 0; - fiat_bp512_mulx_u32(&mut x890, &mut x891, x884, 0x3fd4e6ae); - let mut x892: u32 = 0; - let mut x893: u32 = 0; - fiat_bp512_mulx_u32(&mut x892, &mut x893, x884, 0x33c9fc07); - let mut x894: u32 = 0; - let mut x895: u32 = 0; - fiat_bp512_mulx_u32(&mut x894, &mut x895, x884, 0xcb308db3); - let mut x896: u32 = 0; - let mut x897: u32 = 0; - fiat_bp512_mulx_u32(&mut x896, &mut x897, x884, 0xb3c9d20e); - let mut x898: u32 = 0; - let mut x899: u32 = 0; - fiat_bp512_mulx_u32(&mut x898, &mut x899, x884, 0xd6639cca); - let mut x900: u32 = 0; - let mut x901: u32 = 0; - fiat_bp512_mulx_u32(&mut x900, &mut x901, x884, 0x70330871); - let mut x902: u32 = 0; - let mut x903: u32 = 0; - fiat_bp512_mulx_u32(&mut x902, &mut x903, x884, 0x7d4d9b00); - let mut x904: u32 = 0; - let mut x905: u32 = 0; - fiat_bp512_mulx_u32(&mut x904, &mut x905, x884, 0x9bc66842); - let mut x906: u32 = 0; - let mut x907: u32 = 0; - fiat_bp512_mulx_u32(&mut x906, &mut x907, x884, 0xaecda12a); - let mut x908: u32 = 0; - let mut x909: u32 = 0; - fiat_bp512_mulx_u32(&mut x908, &mut x909, x884, 0xe6a380e6); - let mut x910: u32 = 0; - let mut x911: u32 = 0; - fiat_bp512_mulx_u32(&mut x910, &mut x911, x884, 0x2881ff2f); - let mut x912: u32 = 0; - let mut x913: u32 = 0; - fiat_bp512_mulx_u32(&mut x912, &mut x913, x884, 0x2d82c685); - let mut x914: u32 = 0; - let mut x915: u32 = 0; - fiat_bp512_mulx_u32(&mut x914, &mut x915, x884, 0x28aa6056); - let mut x916: u32 = 0; - let mut x917: u32 = 0; - fiat_bp512_mulx_u32(&mut x916, &mut x917, x884, 0x583a48f3); - let mut x918: u32 = 0; - let mut x919: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x918, &mut x919, 0x0, x917, x914); - let mut x920: u32 = 0; - let mut x921: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x920, &mut x921, x919, x915, x912); - let mut x922: u32 = 0; - let mut x923: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x922, &mut x923, x921, x913, x910); - let mut x924: u32 = 0; - let mut x925: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x924, &mut x925, x923, x911, x908); - let mut x926: u32 = 0; - let mut x927: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x926, &mut x927, x925, x909, x906); - let mut x928: u32 = 0; - let mut x929: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x928, &mut x929, x927, x907, x904); - let mut x930: u32 = 0; - let mut x931: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x930, &mut x931, x929, x905, x902); - let mut x932: u32 = 0; - let mut x933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x932, &mut x933, x931, x903, x900); - let mut x934: u32 = 0; - let mut x935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x901, x898); - let mut x936: u32 = 0; - let mut x937: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x899, x896); - let mut x938: u32 = 0; - let mut x939: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x897, x894); - let mut x940: u32 = 0; - let mut x941: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x895, x892); - let mut x942: u32 = 0; - let mut x943: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x893, x890); - let mut x944: u32 = 0; - let mut x945: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x891, x888); - let mut x946: u32 = 0; - let mut x947: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x889, x886); - let mut x948: u32 = 0; - let mut x949: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x948, &mut x949, 0x0, x854, x916); - let mut x950: u32 = 0; - let mut x951: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x856, x918); - let mut x952: u32 = 0; - let mut x953: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x858, x920); - let mut x954: u32 = 0; - let mut x955: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x860, x922); - let mut x956: u32 = 0; - let mut x957: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x862, x924); - let mut x958: u32 = 0; - let mut x959: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x864, x926); - let mut x960: u32 = 0; - let mut x961: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x866, x928); - let mut x962: u32 = 0; - let mut x963: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x868, x930); - let mut x964: u32 = 0; - let mut x965: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x870, x932); - let mut x966: u32 = 0; - let mut x967: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x966, &mut x967, x965, x872, x934); - let mut x968: u32 = 0; - let mut x969: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x968, &mut x969, x967, x874, x936); - let mut x970: u32 = 0; - let mut x971: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x970, &mut x971, x969, x876, x938); - let mut x972: u32 = 0; - let mut x973: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x972, &mut x973, x971, x878, x940); - let mut x974: u32 = 0; - let mut x975: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x974, &mut x975, x973, x880, x942); - let mut x976: u32 = 0; - let mut x977: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x976, &mut x977, x975, x882, x944); - let mut x978: u32 = 0; - let mut x979: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x978, &mut x979, x977, ((x883 as u32) + ((x853 as u32) + ((x821 as u32) + x761))), x946); - let mut x980: u32 = 0; - let mut x981: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x980, &mut x981, 0x0, x950, (arg1[8])); - let mut x982: u32 = 0; - let mut x983: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x982, &mut x983, x981, x952, (0x0 as u32)); - let mut x984: u32 = 0; - let mut x985: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x984, &mut x985, x983, x954, (0x0 as u32)); - let mut x986: u32 = 0; - let mut x987: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x986, &mut x987, x985, x956, (0x0 as u32)); - let mut x988: u32 = 0; - let mut x989: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x988, &mut x989, x987, x958, (0x0 as u32)); - let mut x990: u32 = 0; - let mut x991: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x990, &mut x991, x989, x960, (0x0 as u32)); - let mut x992: u32 = 0; - let mut x993: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x992, &mut x993, x991, x962, (0x0 as u32)); - let mut x994: u32 = 0; - let mut x995: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x994, &mut x995, x993, x964, (0x0 as u32)); - let mut x996: u32 = 0; - let mut x997: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x996, &mut x997, x995, x966, (0x0 as u32)); - let mut x998: u32 = 0; - let mut x999: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x998, &mut x999, x997, x968, (0x0 as u32)); - let mut x1000: u32 = 0; - let mut x1001: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1000, &mut x1001, x999, x970, (0x0 as u32)); - let mut x1002: u32 = 0; - let mut x1003: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1002, &mut x1003, x1001, x972, (0x0 as u32)); - let mut x1004: u32 = 0; - let mut x1005: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1004, &mut x1005, x1003, x974, (0x0 as u32)); - let mut x1006: u32 = 0; - let mut x1007: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1006, &mut x1007, x1005, x976, (0x0 as u32)); - let mut x1008: u32 = 0; - let mut x1009: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1008, &mut x1009, x1007, x978, (0x0 as u32)); - let mut x1010: u32 = 0; - let mut x1011: u32 = 0; - fiat_bp512_mulx_u32(&mut x1010, &mut x1011, x980, 0x7d89efc5); - let mut x1012: u32 = 0; - let mut x1013: u32 = 0; - fiat_bp512_mulx_u32(&mut x1012, &mut x1013, x1010, 0xaadd9db8); - let mut x1014: u32 = 0; - let mut x1015: u32 = 0; - fiat_bp512_mulx_u32(&mut x1014, &mut x1015, x1010, 0xdbe9c48b); - let mut x1016: u32 = 0; - let mut x1017: u32 = 0; - fiat_bp512_mulx_u32(&mut x1016, &mut x1017, x1010, 0x3fd4e6ae); - let mut x1018: u32 = 0; - let mut x1019: u32 = 0; - fiat_bp512_mulx_u32(&mut x1018, &mut x1019, x1010, 0x33c9fc07); - let mut x1020: u32 = 0; - let mut x1021: u32 = 0; - fiat_bp512_mulx_u32(&mut x1020, &mut x1021, x1010, 0xcb308db3); - let mut x1022: u32 = 0; - let mut x1023: u32 = 0; - fiat_bp512_mulx_u32(&mut x1022, &mut x1023, x1010, 0xb3c9d20e); - let mut x1024: u32 = 0; - let mut x1025: u32 = 0; - fiat_bp512_mulx_u32(&mut x1024, &mut x1025, x1010, 0xd6639cca); - let mut x1026: u32 = 0; - let mut x1027: u32 = 0; - fiat_bp512_mulx_u32(&mut x1026, &mut x1027, x1010, 0x70330871); - let mut x1028: u32 = 0; - let mut x1029: u32 = 0; - fiat_bp512_mulx_u32(&mut x1028, &mut x1029, x1010, 0x7d4d9b00); - let mut x1030: u32 = 0; - let mut x1031: u32 = 0; - fiat_bp512_mulx_u32(&mut x1030, &mut x1031, x1010, 0x9bc66842); - let mut x1032: u32 = 0; - let mut x1033: u32 = 0; - fiat_bp512_mulx_u32(&mut x1032, &mut x1033, x1010, 0xaecda12a); - let mut x1034: u32 = 0; - let mut x1035: u32 = 0; - fiat_bp512_mulx_u32(&mut x1034, &mut x1035, x1010, 0xe6a380e6); - let mut x1036: u32 = 0; - let mut x1037: u32 = 0; - fiat_bp512_mulx_u32(&mut x1036, &mut x1037, x1010, 0x2881ff2f); - let mut x1038: u32 = 0; - let mut x1039: u32 = 0; - fiat_bp512_mulx_u32(&mut x1038, &mut x1039, x1010, 0x2d82c685); - let mut x1040: u32 = 0; - let mut x1041: u32 = 0; - fiat_bp512_mulx_u32(&mut x1040, &mut x1041, x1010, 0x28aa6056); - let mut x1042: u32 = 0; - let mut x1043: u32 = 0; - fiat_bp512_mulx_u32(&mut x1042, &mut x1043, x1010, 0x583a48f3); - let mut x1044: u32 = 0; - let mut x1045: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, 0x0, x1043, x1040); - let mut x1046: u32 = 0; - let mut x1047: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x1041, x1038); - let mut x1048: u32 = 0; - let mut x1049: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x1039, x1036); - let mut x1050: u32 = 0; - let mut x1051: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x1037, x1034); - let mut x1052: u32 = 0; - let mut x1053: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x1035, x1032); - let mut x1054: u32 = 0; - let mut x1055: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x1033, x1030); - let mut x1056: u32 = 0; - let mut x1057: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x1031, x1028); - let mut x1058: u32 = 0; - let mut x1059: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x1029, x1026); - let mut x1060: u32 = 0; - let mut x1061: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x1027, x1024); - let mut x1062: u32 = 0; - let mut x1063: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x1025, x1022); - let mut x1064: u32 = 0; - let mut x1065: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1023, x1020); - let mut x1066: u32 = 0; - let mut x1067: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1021, x1018); - let mut x1068: u32 = 0; - let mut x1069: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1019, x1016); - let mut x1070: u32 = 0; - let mut x1071: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1017, x1014); - let mut x1072: u32 = 0; - let mut x1073: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1015, x1012); - let mut x1074: u32 = 0; - let mut x1075: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1074, &mut x1075, 0x0, x980, x1042); - let mut x1076: u32 = 0; - let mut x1077: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1076, &mut x1077, x1075, x982, x1044); - let mut x1078: u32 = 0; - let mut x1079: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1078, &mut x1079, x1077, x984, x1046); - let mut x1080: u32 = 0; - let mut x1081: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1080, &mut x1081, x1079, x986, x1048); - let mut x1082: u32 = 0; - let mut x1083: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1082, &mut x1083, x1081, x988, x1050); - let mut x1084: u32 = 0; - let mut x1085: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1084, &mut x1085, x1083, x990, x1052); - let mut x1086: u32 = 0; - let mut x1087: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1086, &mut x1087, x1085, x992, x1054); - let mut x1088: u32 = 0; - let mut x1089: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1088, &mut x1089, x1087, x994, x1056); - let mut x1090: u32 = 0; - let mut x1091: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1090, &mut x1091, x1089, x996, x1058); - let mut x1092: u32 = 0; - let mut x1093: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1092, &mut x1093, x1091, x998, x1060); - let mut x1094: u32 = 0; - let mut x1095: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1000, x1062); - let mut x1096: u32 = 0; - let mut x1097: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1002, x1064); - let mut x1098: u32 = 0; - let mut x1099: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1004, x1066); - let mut x1100: u32 = 0; - let mut x1101: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1006, x1068); - let mut x1102: u32 = 0; - let mut x1103: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1008, x1070); - let mut x1104: u32 = 0; - let mut x1105: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1104, &mut x1105, x1103, ((x1009 as u32) + ((x979 as u32) + ((x947 as u32) + x887))), x1072); - let mut x1106: u32 = 0; - let mut x1107: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, 0x0, x1076, (arg1[9])); - let mut x1108: u32 = 0; - let mut x1109: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1078, (0x0 as u32)); - let mut x1110: u32 = 0; - let mut x1111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1080, (0x0 as u32)); - let mut x1112: u32 = 0; - let mut x1113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1082, (0x0 as u32)); - let mut x1114: u32 = 0; - let mut x1115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1084, (0x0 as u32)); - let mut x1116: u32 = 0; - let mut x1117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1086, (0x0 as u32)); - let mut x1118: u32 = 0; - let mut x1119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1088, (0x0 as u32)); - let mut x1120: u32 = 0; - let mut x1121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1090, (0x0 as u32)); - let mut x1122: u32 = 0; - let mut x1123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1092, (0x0 as u32)); - let mut x1124: u32 = 0; - let mut x1125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1094, (0x0 as u32)); - let mut x1126: u32 = 0; - let mut x1127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1096, (0x0 as u32)); - let mut x1128: u32 = 0; - let mut x1129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1128, &mut x1129, x1127, x1098, (0x0 as u32)); - let mut x1130: u32 = 0; - let mut x1131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1100, (0x0 as u32)); - let mut x1132: u32 = 0; - let mut x1133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1102, (0x0 as u32)); - let mut x1134: u32 = 0; - let mut x1135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1104, (0x0 as u32)); - let mut x1136: u32 = 0; - let mut x1137: u32 = 0; - fiat_bp512_mulx_u32(&mut x1136, &mut x1137, x1106, 0x7d89efc5); - let mut x1138: u32 = 0; - let mut x1139: u32 = 0; - fiat_bp512_mulx_u32(&mut x1138, &mut x1139, x1136, 0xaadd9db8); - let mut x1140: u32 = 0; - let mut x1141: u32 = 0; - fiat_bp512_mulx_u32(&mut x1140, &mut x1141, x1136, 0xdbe9c48b); - let mut x1142: u32 = 0; - let mut x1143: u32 = 0; - fiat_bp512_mulx_u32(&mut x1142, &mut x1143, x1136, 0x3fd4e6ae); - let mut x1144: u32 = 0; - let mut x1145: u32 = 0; - fiat_bp512_mulx_u32(&mut x1144, &mut x1145, x1136, 0x33c9fc07); - let mut x1146: u32 = 0; - let mut x1147: u32 = 0; - fiat_bp512_mulx_u32(&mut x1146, &mut x1147, x1136, 0xcb308db3); - let mut x1148: u32 = 0; - let mut x1149: u32 = 0; - fiat_bp512_mulx_u32(&mut x1148, &mut x1149, x1136, 0xb3c9d20e); - let mut x1150: u32 = 0; - let mut x1151: u32 = 0; - fiat_bp512_mulx_u32(&mut x1150, &mut x1151, x1136, 0xd6639cca); - let mut x1152: u32 = 0; - let mut x1153: u32 = 0; - fiat_bp512_mulx_u32(&mut x1152, &mut x1153, x1136, 0x70330871); - let mut x1154: u32 = 0; - let mut x1155: u32 = 0; - fiat_bp512_mulx_u32(&mut x1154, &mut x1155, x1136, 0x7d4d9b00); - let mut x1156: u32 = 0; - let mut x1157: u32 = 0; - fiat_bp512_mulx_u32(&mut x1156, &mut x1157, x1136, 0x9bc66842); - let mut x1158: u32 = 0; - let mut x1159: u32 = 0; - fiat_bp512_mulx_u32(&mut x1158, &mut x1159, x1136, 0xaecda12a); - let mut x1160: u32 = 0; - let mut x1161: u32 = 0; - fiat_bp512_mulx_u32(&mut x1160, &mut x1161, x1136, 0xe6a380e6); - let mut x1162: u32 = 0; - let mut x1163: u32 = 0; - fiat_bp512_mulx_u32(&mut x1162, &mut x1163, x1136, 0x2881ff2f); - let mut x1164: u32 = 0; - let mut x1165: u32 = 0; - fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x1136, 0x2d82c685); - let mut x1166: u32 = 0; - let mut x1167: u32 = 0; - fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x1136, 0x28aa6056); - let mut x1168: u32 = 0; - let mut x1169: u32 = 0; - fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x1136, 0x583a48f3); - let mut x1170: u32 = 0; - let mut x1171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1170, &mut x1171, 0x0, x1169, x1166); - let mut x1172: u32 = 0; - let mut x1173: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1172, &mut x1173, x1171, x1167, x1164); - let mut x1174: u32 = 0; - let mut x1175: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1174, &mut x1175, x1173, x1165, x1162); - let mut x1176: u32 = 0; - let mut x1177: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1176, &mut x1177, x1175, x1163, x1160); - let mut x1178: u32 = 0; - let mut x1179: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1178, &mut x1179, x1177, x1161, x1158); - let mut x1180: u32 = 0; - let mut x1181: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1180, &mut x1181, x1179, x1159, x1156); - let mut x1182: u32 = 0; - let mut x1183: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1182, &mut x1183, x1181, x1157, x1154); - let mut x1184: u32 = 0; - let mut x1185: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1184, &mut x1185, x1183, x1155, x1152); - let mut x1186: u32 = 0; - let mut x1187: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1186, &mut x1187, x1185, x1153, x1150); - let mut x1188: u32 = 0; - let mut x1189: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1188, &mut x1189, x1187, x1151, x1148); - let mut x1190: u32 = 0; - let mut x1191: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1190, &mut x1191, x1189, x1149, x1146); - let mut x1192: u32 = 0; - let mut x1193: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1192, &mut x1193, x1191, x1147, x1144); - let mut x1194: u32 = 0; - let mut x1195: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1194, &mut x1195, x1193, x1145, x1142); - let mut x1196: u32 = 0; - let mut x1197: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, x1195, x1143, x1140); - let mut x1198: u32 = 0; - let mut x1199: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1141, x1138); - let mut x1200: u32 = 0; - let mut x1201: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, 0x0, x1106, x1168); - let mut x1202: u32 = 0; - let mut x1203: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1108, x1170); - let mut x1204: u32 = 0; - let mut x1205: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1110, x1172); - let mut x1206: u32 = 0; - let mut x1207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1112, x1174); - let mut x1208: u32 = 0; - let mut x1209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1114, x1176); - let mut x1210: u32 = 0; - let mut x1211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1116, x1178); - let mut x1212: u32 = 0; - let mut x1213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1118, x1180); - let mut x1214: u32 = 0; - let mut x1215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1120, x1182); - let mut x1216: u32 = 0; - let mut x1217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1122, x1184); - let mut x1218: u32 = 0; - let mut x1219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1124, x1186); - let mut x1220: u32 = 0; - let mut x1221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1126, x1188); - let mut x1222: u32 = 0; - let mut x1223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1128, x1190); - let mut x1224: u32 = 0; - let mut x1225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1130, x1192); - let mut x1226: u32 = 0; - let mut x1227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1226, &mut x1227, x1225, x1132, x1194); - let mut x1228: u32 = 0; - let mut x1229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1228, &mut x1229, x1227, x1134, x1196); - let mut x1230: u32 = 0; - let mut x1231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1230, &mut x1231, x1229, ((x1135 as u32) + ((x1105 as u32) + ((x1073 as u32) + x1013))), x1198); - let mut x1232: u32 = 0; - let mut x1233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1232, &mut x1233, 0x0, x1202, (arg1[10])); - let mut x1234: u32 = 0; - let mut x1235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1234, &mut x1235, x1233, x1204, (0x0 as u32)); - let mut x1236: u32 = 0; - let mut x1237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1236, &mut x1237, x1235, x1206, (0x0 as u32)); - let mut x1238: u32 = 0; - let mut x1239: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1238, &mut x1239, x1237, x1208, (0x0 as u32)); - let mut x1240: u32 = 0; - let mut x1241: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1240, &mut x1241, x1239, x1210, (0x0 as u32)); - let mut x1242: u32 = 0; - let mut x1243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1242, &mut x1243, x1241, x1212, (0x0 as u32)); - let mut x1244: u32 = 0; - let mut x1245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1244, &mut x1245, x1243, x1214, (0x0 as u32)); - let mut x1246: u32 = 0; - let mut x1247: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1246, &mut x1247, x1245, x1216, (0x0 as u32)); - let mut x1248: u32 = 0; - let mut x1249: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1248, &mut x1249, x1247, x1218, (0x0 as u32)); - let mut x1250: u32 = 0; - let mut x1251: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1250, &mut x1251, x1249, x1220, (0x0 as u32)); - let mut x1252: u32 = 0; - let mut x1253: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1252, &mut x1253, x1251, x1222, (0x0 as u32)); - let mut x1254: u32 = 0; - let mut x1255: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1254, &mut x1255, x1253, x1224, (0x0 as u32)); - let mut x1256: u32 = 0; - let mut x1257: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1256, &mut x1257, x1255, x1226, (0x0 as u32)); - let mut x1258: u32 = 0; - let mut x1259: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1258, &mut x1259, x1257, x1228, (0x0 as u32)); - let mut x1260: u32 = 0; - let mut x1261: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1260, &mut x1261, x1259, x1230, (0x0 as u32)); - let mut x1262: u32 = 0; - let mut x1263: u32 = 0; - fiat_bp512_mulx_u32(&mut x1262, &mut x1263, x1232, 0x7d89efc5); - let mut x1264: u32 = 0; - let mut x1265: u32 = 0; - fiat_bp512_mulx_u32(&mut x1264, &mut x1265, x1262, 0xaadd9db8); - let mut x1266: u32 = 0; - let mut x1267: u32 = 0; - fiat_bp512_mulx_u32(&mut x1266, &mut x1267, x1262, 0xdbe9c48b); - let mut x1268: u32 = 0; - let mut x1269: u32 = 0; - fiat_bp512_mulx_u32(&mut x1268, &mut x1269, x1262, 0x3fd4e6ae); - let mut x1270: u32 = 0; - let mut x1271: u32 = 0; - fiat_bp512_mulx_u32(&mut x1270, &mut x1271, x1262, 0x33c9fc07); - let mut x1272: u32 = 0; - let mut x1273: u32 = 0; - fiat_bp512_mulx_u32(&mut x1272, &mut x1273, x1262, 0xcb308db3); - let mut x1274: u32 = 0; - let mut x1275: u32 = 0; - fiat_bp512_mulx_u32(&mut x1274, &mut x1275, x1262, 0xb3c9d20e); - let mut x1276: u32 = 0; - let mut x1277: u32 = 0; - fiat_bp512_mulx_u32(&mut x1276, &mut x1277, x1262, 0xd6639cca); - let mut x1278: u32 = 0; - let mut x1279: u32 = 0; - fiat_bp512_mulx_u32(&mut x1278, &mut x1279, x1262, 0x70330871); - let mut x1280: u32 = 0; - let mut x1281: u32 = 0; - fiat_bp512_mulx_u32(&mut x1280, &mut x1281, x1262, 0x7d4d9b00); - let mut x1282: u32 = 0; - let mut x1283: u32 = 0; - fiat_bp512_mulx_u32(&mut x1282, &mut x1283, x1262, 0x9bc66842); - let mut x1284: u32 = 0; - let mut x1285: u32 = 0; - fiat_bp512_mulx_u32(&mut x1284, &mut x1285, x1262, 0xaecda12a); - let mut x1286: u32 = 0; - let mut x1287: u32 = 0; - fiat_bp512_mulx_u32(&mut x1286, &mut x1287, x1262, 0xe6a380e6); - let mut x1288: u32 = 0; - let mut x1289: u32 = 0; - fiat_bp512_mulx_u32(&mut x1288, &mut x1289, x1262, 0x2881ff2f); - let mut x1290: u32 = 0; - let mut x1291: u32 = 0; - fiat_bp512_mulx_u32(&mut x1290, &mut x1291, x1262, 0x2d82c685); - let mut x1292: u32 = 0; - let mut x1293: u32 = 0; - fiat_bp512_mulx_u32(&mut x1292, &mut x1293, x1262, 0x28aa6056); - let mut x1294: u32 = 0; - let mut x1295: u32 = 0; - fiat_bp512_mulx_u32(&mut x1294, &mut x1295, x1262, 0x583a48f3); - let mut x1296: u32 = 0; - let mut x1297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1296, &mut x1297, 0x0, x1295, x1292); - let mut x1298: u32 = 0; - let mut x1299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1298, &mut x1299, x1297, x1293, x1290); - let mut x1300: u32 = 0; - let mut x1301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1300, &mut x1301, x1299, x1291, x1288); - let mut x1302: u32 = 0; - let mut x1303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1289, x1286); - let mut x1304: u32 = 0; - let mut x1305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1287, x1284); - let mut x1306: u32 = 0; - let mut x1307: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1285, x1282); - let mut x1308: u32 = 0; - let mut x1309: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1283, x1280); - let mut x1310: u32 = 0; - let mut x1311: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1281, x1278); - let mut x1312: u32 = 0; - let mut x1313: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1279, x1276); - let mut x1314: u32 = 0; - let mut x1315: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1277, x1274); - let mut x1316: u32 = 0; - let mut x1317: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1275, x1272); - let mut x1318: u32 = 0; - let mut x1319: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1273, x1270); - let mut x1320: u32 = 0; - let mut x1321: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1271, x1268); - let mut x1322: u32 = 0; - let mut x1323: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1269, x1266); - let mut x1324: u32 = 0; - let mut x1325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1267, x1264); - let mut x1326: u32 = 0; - let mut x1327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1232, x1294); - let mut x1328: u32 = 0; - let mut x1329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1234, x1296); - let mut x1330: u32 = 0; - let mut x1331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1236, x1298); - let mut x1332: u32 = 0; - let mut x1333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1238, x1300); - let mut x1334: u32 = 0; - let mut x1335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1240, x1302); - let mut x1336: u32 = 0; - let mut x1337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1242, x1304); - let mut x1338: u32 = 0; - let mut x1339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1244, x1306); - let mut x1340: u32 = 0; - let mut x1341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1246, x1308); - let mut x1342: u32 = 0; - let mut x1343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1248, x1310); - let mut x1344: u32 = 0; - let mut x1345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1250, x1312); - let mut x1346: u32 = 0; - let mut x1347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1252, x1314); - let mut x1348: u32 = 0; - let mut x1349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1254, x1316); - let mut x1350: u32 = 0; - let mut x1351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1256, x1318); - let mut x1352: u32 = 0; - let mut x1353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1258, x1320); - let mut x1354: u32 = 0; - let mut x1355: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1260, x1322); - let mut x1356: u32 = 0; - let mut x1357: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1356, &mut x1357, x1355, ((x1261 as u32) + ((x1231 as u32) + ((x1199 as u32) + x1139))), x1324); - let mut x1358: u32 = 0; - let mut x1359: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, 0x0, x1328, (arg1[11])); - let mut x1360: u32 = 0; - let mut x1361: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1360, &mut x1361, x1359, x1330, (0x0 as u32)); - let mut x1362: u32 = 0; - let mut x1363: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1362, &mut x1363, x1361, x1332, (0x0 as u32)); - let mut x1364: u32 = 0; - let mut x1365: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1364, &mut x1365, x1363, x1334, (0x0 as u32)); - let mut x1366: u32 = 0; - let mut x1367: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1366, &mut x1367, x1365, x1336, (0x0 as u32)); - let mut x1368: u32 = 0; - let mut x1369: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1368, &mut x1369, x1367, x1338, (0x0 as u32)); - let mut x1370: u32 = 0; - let mut x1371: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1370, &mut x1371, x1369, x1340, (0x0 as u32)); - let mut x1372: u32 = 0; - let mut x1373: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1372, &mut x1373, x1371, x1342, (0x0 as u32)); - let mut x1374: u32 = 0; - let mut x1375: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1374, &mut x1375, x1373, x1344, (0x0 as u32)); - let mut x1376: u32 = 0; - let mut x1377: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1346, (0x0 as u32)); - let mut x1378: u32 = 0; - let mut x1379: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1348, (0x0 as u32)); - let mut x1380: u32 = 0; - let mut x1381: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1350, (0x0 as u32)); - let mut x1382: u32 = 0; - let mut x1383: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1352, (0x0 as u32)); - let mut x1384: u32 = 0; - let mut x1385: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1354, (0x0 as u32)); - let mut x1386: u32 = 0; - let mut x1387: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1356, (0x0 as u32)); - let mut x1388: u32 = 0; - let mut x1389: u32 = 0; - fiat_bp512_mulx_u32(&mut x1388, &mut x1389, x1358, 0x7d89efc5); - let mut x1390: u32 = 0; - let mut x1391: u32 = 0; - fiat_bp512_mulx_u32(&mut x1390, &mut x1391, x1388, 0xaadd9db8); - let mut x1392: u32 = 0; - let mut x1393: u32 = 0; - fiat_bp512_mulx_u32(&mut x1392, &mut x1393, x1388, 0xdbe9c48b); - let mut x1394: u32 = 0; - let mut x1395: u32 = 0; - fiat_bp512_mulx_u32(&mut x1394, &mut x1395, x1388, 0x3fd4e6ae); - let mut x1396: u32 = 0; - let mut x1397: u32 = 0; - fiat_bp512_mulx_u32(&mut x1396, &mut x1397, x1388, 0x33c9fc07); - let mut x1398: u32 = 0; - let mut x1399: u32 = 0; - fiat_bp512_mulx_u32(&mut x1398, &mut x1399, x1388, 0xcb308db3); - let mut x1400: u32 = 0; - let mut x1401: u32 = 0; - fiat_bp512_mulx_u32(&mut x1400, &mut x1401, x1388, 0xb3c9d20e); - let mut x1402: u32 = 0; - let mut x1403: u32 = 0; - fiat_bp512_mulx_u32(&mut x1402, &mut x1403, x1388, 0xd6639cca); - let mut x1404: u32 = 0; - let mut x1405: u32 = 0; - fiat_bp512_mulx_u32(&mut x1404, &mut x1405, x1388, 0x70330871); - let mut x1406: u32 = 0; - let mut x1407: u32 = 0; - fiat_bp512_mulx_u32(&mut x1406, &mut x1407, x1388, 0x7d4d9b00); - let mut x1408: u32 = 0; - let mut x1409: u32 = 0; - fiat_bp512_mulx_u32(&mut x1408, &mut x1409, x1388, 0x9bc66842); - let mut x1410: u32 = 0; - let mut x1411: u32 = 0; - fiat_bp512_mulx_u32(&mut x1410, &mut x1411, x1388, 0xaecda12a); - let mut x1412: u32 = 0; - let mut x1413: u32 = 0; - fiat_bp512_mulx_u32(&mut x1412, &mut x1413, x1388, 0xe6a380e6); - let mut x1414: u32 = 0; - let mut x1415: u32 = 0; - fiat_bp512_mulx_u32(&mut x1414, &mut x1415, x1388, 0x2881ff2f); - let mut x1416: u32 = 0; - let mut x1417: u32 = 0; - fiat_bp512_mulx_u32(&mut x1416, &mut x1417, x1388, 0x2d82c685); - let mut x1418: u32 = 0; - let mut x1419: u32 = 0; - fiat_bp512_mulx_u32(&mut x1418, &mut x1419, x1388, 0x28aa6056); - let mut x1420: u32 = 0; - let mut x1421: u32 = 0; - fiat_bp512_mulx_u32(&mut x1420, &mut x1421, x1388, 0x583a48f3); - let mut x1422: u32 = 0; - let mut x1423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1422, &mut x1423, 0x0, x1421, x1418); - let mut x1424: u32 = 0; - let mut x1425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, x1423, x1419, x1416); - let mut x1426: u32 = 0; - let mut x1427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1417, x1414); - let mut x1428: u32 = 0; - let mut x1429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1415, x1412); - let mut x1430: u32 = 0; - let mut x1431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1413, x1410); - let mut x1432: u32 = 0; - let mut x1433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1411, x1408); - let mut x1434: u32 = 0; - let mut x1435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1409, x1406); - let mut x1436: u32 = 0; - let mut x1437: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1407, x1404); - let mut x1438: u32 = 0; - let mut x1439: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1405, x1402); - let mut x1440: u32 = 0; - let mut x1441: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1403, x1400); - let mut x1442: u32 = 0; - let mut x1443: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1401, x1398); - let mut x1444: u32 = 0; - let mut x1445: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1399, x1396); - let mut x1446: u32 = 0; - let mut x1447: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1397, x1394); - let mut x1448: u32 = 0; - let mut x1449: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1395, x1392); - let mut x1450: u32 = 0; - let mut x1451: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1393, x1390); - let mut x1452: u32 = 0; - let mut x1453: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, 0x0, x1358, x1420); - let mut x1454: u32 = 0; - let mut x1455: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1360, x1422); - let mut x1456: u32 = 0; - let mut x1457: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1362, x1424); - let mut x1458: u32 = 0; - let mut x1459: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1458, &mut x1459, x1457, x1364, x1426); - let mut x1460: u32 = 0; - let mut x1461: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1460, &mut x1461, x1459, x1366, x1428); - let mut x1462: u32 = 0; - let mut x1463: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1462, &mut x1463, x1461, x1368, x1430); - let mut x1464: u32 = 0; - let mut x1465: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1464, &mut x1465, x1463, x1370, x1432); - let mut x1466: u32 = 0; - let mut x1467: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1466, &mut x1467, x1465, x1372, x1434); - let mut x1468: u32 = 0; - let mut x1469: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1468, &mut x1469, x1467, x1374, x1436); - let mut x1470: u32 = 0; - let mut x1471: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1470, &mut x1471, x1469, x1376, x1438); - let mut x1472: u32 = 0; - let mut x1473: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1472, &mut x1473, x1471, x1378, x1440); - let mut x1474: u32 = 0; - let mut x1475: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1474, &mut x1475, x1473, x1380, x1442); - let mut x1476: u32 = 0; - let mut x1477: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1476, &mut x1477, x1475, x1382, x1444); - let mut x1478: u32 = 0; - let mut x1479: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1478, &mut x1479, x1477, x1384, x1446); - let mut x1480: u32 = 0; - let mut x1481: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1480, &mut x1481, x1479, x1386, x1448); - let mut x1482: u32 = 0; - let mut x1483: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1482, &mut x1483, x1481, ((x1387 as u32) + ((x1357 as u32) + ((x1325 as u32) + x1265))), x1450); - let mut x1484: u32 = 0; - let mut x1485: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1484, &mut x1485, 0x0, x1454, (arg1[12])); - let mut x1486: u32 = 0; - let mut x1487: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1486, &mut x1487, x1485, x1456, (0x0 as u32)); - let mut x1488: u32 = 0; - let mut x1489: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1488, &mut x1489, x1487, x1458, (0x0 as u32)); - let mut x1490: u32 = 0; - let mut x1491: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1490, &mut x1491, x1489, x1460, (0x0 as u32)); - let mut x1492: u32 = 0; - let mut x1493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, x1491, x1462, (0x0 as u32)); - let mut x1494: u32 = 0; - let mut x1495: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1464, (0x0 as u32)); - let mut x1496: u32 = 0; - let mut x1497: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1466, (0x0 as u32)); - let mut x1498: u32 = 0; - let mut x1499: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1468, (0x0 as u32)); - let mut x1500: u32 = 0; - let mut x1501: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1470, (0x0 as u32)); - let mut x1502: u32 = 0; - let mut x1503: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1472, (0x0 as u32)); - let mut x1504: u32 = 0; - let mut x1505: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1474, (0x0 as u32)); - let mut x1506: u32 = 0; - let mut x1507: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1476, (0x0 as u32)); - let mut x1508: u32 = 0; - let mut x1509: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1478, (0x0 as u32)); - let mut x1510: u32 = 0; - let mut x1511: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1480, (0x0 as u32)); - let mut x1512: u32 = 0; - let mut x1513: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1482, (0x0 as u32)); - let mut x1514: u32 = 0; - let mut x1515: u32 = 0; - fiat_bp512_mulx_u32(&mut x1514, &mut x1515, x1484, 0x7d89efc5); - let mut x1516: u32 = 0; - let mut x1517: u32 = 0; - fiat_bp512_mulx_u32(&mut x1516, &mut x1517, x1514, 0xaadd9db8); - let mut x1518: u32 = 0; - let mut x1519: u32 = 0; - fiat_bp512_mulx_u32(&mut x1518, &mut x1519, x1514, 0xdbe9c48b); - let mut x1520: u32 = 0; - let mut x1521: u32 = 0; - fiat_bp512_mulx_u32(&mut x1520, &mut x1521, x1514, 0x3fd4e6ae); - let mut x1522: u32 = 0; - let mut x1523: u32 = 0; - fiat_bp512_mulx_u32(&mut x1522, &mut x1523, x1514, 0x33c9fc07); - let mut x1524: u32 = 0; - let mut x1525: u32 = 0; - fiat_bp512_mulx_u32(&mut x1524, &mut x1525, x1514, 0xcb308db3); - let mut x1526: u32 = 0; - let mut x1527: u32 = 0; - fiat_bp512_mulx_u32(&mut x1526, &mut x1527, x1514, 0xb3c9d20e); - let mut x1528: u32 = 0; - let mut x1529: u32 = 0; - fiat_bp512_mulx_u32(&mut x1528, &mut x1529, x1514, 0xd6639cca); - let mut x1530: u32 = 0; - let mut x1531: u32 = 0; - fiat_bp512_mulx_u32(&mut x1530, &mut x1531, x1514, 0x70330871); - let mut x1532: u32 = 0; - let mut x1533: u32 = 0; - fiat_bp512_mulx_u32(&mut x1532, &mut x1533, x1514, 0x7d4d9b00); - let mut x1534: u32 = 0; - let mut x1535: u32 = 0; - fiat_bp512_mulx_u32(&mut x1534, &mut x1535, x1514, 0x9bc66842); - let mut x1536: u32 = 0; - let mut x1537: u32 = 0; - fiat_bp512_mulx_u32(&mut x1536, &mut x1537, x1514, 0xaecda12a); - let mut x1538: u32 = 0; - let mut x1539: u32 = 0; - fiat_bp512_mulx_u32(&mut x1538, &mut x1539, x1514, 0xe6a380e6); - let mut x1540: u32 = 0; - let mut x1541: u32 = 0; - fiat_bp512_mulx_u32(&mut x1540, &mut x1541, x1514, 0x2881ff2f); - let mut x1542: u32 = 0; - let mut x1543: u32 = 0; - fiat_bp512_mulx_u32(&mut x1542, &mut x1543, x1514, 0x2d82c685); - let mut x1544: u32 = 0; - let mut x1545: u32 = 0; - fiat_bp512_mulx_u32(&mut x1544, &mut x1545, x1514, 0x28aa6056); - let mut x1546: u32 = 0; - let mut x1547: u32 = 0; - fiat_bp512_mulx_u32(&mut x1546, &mut x1547, x1514, 0x583a48f3); - let mut x1548: u32 = 0; - let mut x1549: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1548, &mut x1549, 0x0, x1547, x1544); - let mut x1550: u32 = 0; - let mut x1551: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1550, &mut x1551, x1549, x1545, x1542); - let mut x1552: u32 = 0; - let mut x1553: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1552, &mut x1553, x1551, x1543, x1540); - let mut x1554: u32 = 0; - let mut x1555: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1554, &mut x1555, x1553, x1541, x1538); - let mut x1556: u32 = 0; - let mut x1557: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1556, &mut x1557, x1555, x1539, x1536); - let mut x1558: u32 = 0; - let mut x1559: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1558, &mut x1559, x1557, x1537, x1534); - let mut x1560: u32 = 0; - let mut x1561: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1560, &mut x1561, x1559, x1535, x1532); - let mut x1562: u32 = 0; - let mut x1563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1562, &mut x1563, x1561, x1533, x1530); - let mut x1564: u32 = 0; - let mut x1565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1564, &mut x1565, x1563, x1531, x1528); - let mut x1566: u32 = 0; - let mut x1567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1566, &mut x1567, x1565, x1529, x1526); - let mut x1568: u32 = 0; - let mut x1569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1568, &mut x1569, x1567, x1527, x1524); - let mut x1570: u32 = 0; - let mut x1571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1570, &mut x1571, x1569, x1525, x1522); - let mut x1572: u32 = 0; - let mut x1573: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1572, &mut x1573, x1571, x1523, x1520); - let mut x1574: u32 = 0; - let mut x1575: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1574, &mut x1575, x1573, x1521, x1518); - let mut x1576: u32 = 0; - let mut x1577: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1576, &mut x1577, x1575, x1519, x1516); - let mut x1578: u32 = 0; - let mut x1579: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1578, &mut x1579, 0x0, x1484, x1546); - let mut x1580: u32 = 0; - let mut x1581: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1580, &mut x1581, x1579, x1486, x1548); - let mut x1582: u32 = 0; - let mut x1583: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1582, &mut x1583, x1581, x1488, x1550); - let mut x1584: u32 = 0; - let mut x1585: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1584, &mut x1585, x1583, x1490, x1552); - let mut x1586: u32 = 0; - let mut x1587: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1586, &mut x1587, x1585, x1492, x1554); - let mut x1588: u32 = 0; - let mut x1589: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1588, &mut x1589, x1587, x1494, x1556); - let mut x1590: u32 = 0; - let mut x1591: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, x1589, x1496, x1558); - let mut x1592: u32 = 0; - let mut x1593: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1498, x1560); - let mut x1594: u32 = 0; - let mut x1595: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1500, x1562); - let mut x1596: u32 = 0; - let mut x1597: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1502, x1564); - let mut x1598: u32 = 0; - let mut x1599: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1504, x1566); - let mut x1600: u32 = 0; - let mut x1601: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1506, x1568); - let mut x1602: u32 = 0; - let mut x1603: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1508, x1570); - let mut x1604: u32 = 0; - let mut x1605: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1510, x1572); - let mut x1606: u32 = 0; - let mut x1607: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1512, x1574); - let mut x1608: u32 = 0; - let mut x1609: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1608, &mut x1609, x1607, ((x1513 as u32) + ((x1483 as u32) + ((x1451 as u32) + x1391))), x1576); - let mut x1610: u32 = 0; - let mut x1611: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, 0x0, x1580, (arg1[13])); - let mut x1612: u32 = 0; - let mut x1613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1582, (0x0 as u32)); - let mut x1614: u32 = 0; - let mut x1615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1584, (0x0 as u32)); - let mut x1616: u32 = 0; - let mut x1617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1586, (0x0 as u32)); - let mut x1618: u32 = 0; - let mut x1619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1588, (0x0 as u32)); - let mut x1620: u32 = 0; - let mut x1621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1590, (0x0 as u32)); - let mut x1622: u32 = 0; - let mut x1623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1592, (0x0 as u32)); - let mut x1624: u32 = 0; - let mut x1625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1624, &mut x1625, x1623, x1594, (0x0 as u32)); - let mut x1626: u32 = 0; - let mut x1627: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1626, &mut x1627, x1625, x1596, (0x0 as u32)); - let mut x1628: u32 = 0; - let mut x1629: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1628, &mut x1629, x1627, x1598, (0x0 as u32)); - let mut x1630: u32 = 0; - let mut x1631: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1630, &mut x1631, x1629, x1600, (0x0 as u32)); - let mut x1632: u32 = 0; - let mut x1633: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1632, &mut x1633, x1631, x1602, (0x0 as u32)); - let mut x1634: u32 = 0; - let mut x1635: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1634, &mut x1635, x1633, x1604, (0x0 as u32)); - let mut x1636: u32 = 0; - let mut x1637: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1636, &mut x1637, x1635, x1606, (0x0 as u32)); - let mut x1638: u32 = 0; - let mut x1639: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1638, &mut x1639, x1637, x1608, (0x0 as u32)); - let mut x1640: u32 = 0; - let mut x1641: u32 = 0; - fiat_bp512_mulx_u32(&mut x1640, &mut x1641, x1610, 0x7d89efc5); - let mut x1642: u32 = 0; - let mut x1643: u32 = 0; - fiat_bp512_mulx_u32(&mut x1642, &mut x1643, x1640, 0xaadd9db8); - let mut x1644: u32 = 0; - let mut x1645: u32 = 0; - fiat_bp512_mulx_u32(&mut x1644, &mut x1645, x1640, 0xdbe9c48b); - let mut x1646: u32 = 0; - let mut x1647: u32 = 0; - fiat_bp512_mulx_u32(&mut x1646, &mut x1647, x1640, 0x3fd4e6ae); - let mut x1648: u32 = 0; - let mut x1649: u32 = 0; - fiat_bp512_mulx_u32(&mut x1648, &mut x1649, x1640, 0x33c9fc07); - let mut x1650: u32 = 0; - let mut x1651: u32 = 0; - fiat_bp512_mulx_u32(&mut x1650, &mut x1651, x1640, 0xcb308db3); - let mut x1652: u32 = 0; - let mut x1653: u32 = 0; - fiat_bp512_mulx_u32(&mut x1652, &mut x1653, x1640, 0xb3c9d20e); - let mut x1654: u32 = 0; - let mut x1655: u32 = 0; - fiat_bp512_mulx_u32(&mut x1654, &mut x1655, x1640, 0xd6639cca); - let mut x1656: u32 = 0; - let mut x1657: u32 = 0; - fiat_bp512_mulx_u32(&mut x1656, &mut x1657, x1640, 0x70330871); - let mut x1658: u32 = 0; - let mut x1659: u32 = 0; - fiat_bp512_mulx_u32(&mut x1658, &mut x1659, x1640, 0x7d4d9b00); - let mut x1660: u32 = 0; - let mut x1661: u32 = 0; - fiat_bp512_mulx_u32(&mut x1660, &mut x1661, x1640, 0x9bc66842); - let mut x1662: u32 = 0; - let mut x1663: u32 = 0; - fiat_bp512_mulx_u32(&mut x1662, &mut x1663, x1640, 0xaecda12a); - let mut x1664: u32 = 0; - let mut x1665: u32 = 0; - fiat_bp512_mulx_u32(&mut x1664, &mut x1665, x1640, 0xe6a380e6); - let mut x1666: u32 = 0; - let mut x1667: u32 = 0; - fiat_bp512_mulx_u32(&mut x1666, &mut x1667, x1640, 0x2881ff2f); - let mut x1668: u32 = 0; - let mut x1669: u32 = 0; - fiat_bp512_mulx_u32(&mut x1668, &mut x1669, x1640, 0x2d82c685); - let mut x1670: u32 = 0; - let mut x1671: u32 = 0; - fiat_bp512_mulx_u32(&mut x1670, &mut x1671, x1640, 0x28aa6056); - let mut x1672: u32 = 0; - let mut x1673: u32 = 0; - fiat_bp512_mulx_u32(&mut x1672, &mut x1673, x1640, 0x583a48f3); - let mut x1674: u32 = 0; - let mut x1675: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1674, &mut x1675, 0x0, x1673, x1670); - let mut x1676: u32 = 0; - let mut x1677: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1671, x1668); - let mut x1678: u32 = 0; - let mut x1679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1669, x1666); - let mut x1680: u32 = 0; - let mut x1681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1667, x1664); - let mut x1682: u32 = 0; - let mut x1683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1665, x1662); - let mut x1684: u32 = 0; - let mut x1685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1663, x1660); - let mut x1686: u32 = 0; - let mut x1687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1661, x1658); - let mut x1688: u32 = 0; - let mut x1689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1659, x1656); - let mut x1690: u32 = 0; - let mut x1691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1657, x1654); - let mut x1692: u32 = 0; - let mut x1693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1655, x1652); - let mut x1694: u32 = 0; - let mut x1695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1653, x1650); - let mut x1696: u32 = 0; - let mut x1697: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1651, x1648); - let mut x1698: u32 = 0; - let mut x1699: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1698, &mut x1699, x1697, x1649, x1646); - let mut x1700: u32 = 0; - let mut x1701: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1700, &mut x1701, x1699, x1647, x1644); - let mut x1702: u32 = 0; - let mut x1703: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1702, &mut x1703, x1701, x1645, x1642); - let mut x1704: u32 = 0; - let mut x1705: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1704, &mut x1705, 0x0, x1610, x1672); - let mut x1706: u32 = 0; - let mut x1707: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1706, &mut x1707, x1705, x1612, x1674); - let mut x1708: u32 = 0; - let mut x1709: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1708, &mut x1709, x1707, x1614, x1676); - let mut x1710: u32 = 0; - let mut x1711: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1710, &mut x1711, x1709, x1616, x1678); - let mut x1712: u32 = 0; - let mut x1713: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1712, &mut x1713, x1711, x1618, x1680); - let mut x1714: u32 = 0; - let mut x1715: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1714, &mut x1715, x1713, x1620, x1682); - let mut x1716: u32 = 0; - let mut x1717: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1716, &mut x1717, x1715, x1622, x1684); - let mut x1718: u32 = 0; - let mut x1719: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1718, &mut x1719, x1717, x1624, x1686); - let mut x1720: u32 = 0; - let mut x1721: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, x1719, x1626, x1688); - let mut x1722: u32 = 0; - let mut x1723: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1628, x1690); - let mut x1724: u32 = 0; - let mut x1725: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1630, x1692); - let mut x1726: u32 = 0; - let mut x1727: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1632, x1694); - let mut x1728: u32 = 0; - let mut x1729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1634, x1696); - let mut x1730: u32 = 0; - let mut x1731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1636, x1698); - let mut x1732: u32 = 0; - let mut x1733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1638, x1700); - let mut x1734: u32 = 0; - let mut x1735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1734, &mut x1735, x1733, ((x1639 as u32) + ((x1609 as u32) + ((x1577 as u32) + x1517))), x1702); - let mut x1736: u32 = 0; - let mut x1737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, 0x0, x1706, (arg1[14])); - let mut x1738: u32 = 0; - let mut x1739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1708, (0x0 as u32)); - let mut x1740: u32 = 0; - let mut x1741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1710, (0x0 as u32)); - let mut x1742: u32 = 0; - let mut x1743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1712, (0x0 as u32)); - let mut x1744: u32 = 0; - let mut x1745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1714, (0x0 as u32)); - let mut x1746: u32 = 0; - let mut x1747: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1716, (0x0 as u32)); - let mut x1748: u32 = 0; - let mut x1749: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1718, (0x0 as u32)); - let mut x1750: u32 = 0; - let mut x1751: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1720, (0x0 as u32)); - let mut x1752: u32 = 0; - let mut x1753: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1722, (0x0 as u32)); - let mut x1754: u32 = 0; - let mut x1755: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1754, &mut x1755, x1753, x1724, (0x0 as u32)); - let mut x1756: u32 = 0; - let mut x1757: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1756, &mut x1757, x1755, x1726, (0x0 as u32)); - let mut x1758: u32 = 0; - let mut x1759: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1758, &mut x1759, x1757, x1728, (0x0 as u32)); - let mut x1760: u32 = 0; - let mut x1761: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1760, &mut x1761, x1759, x1730, (0x0 as u32)); - let mut x1762: u32 = 0; - let mut x1763: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1762, &mut x1763, x1761, x1732, (0x0 as u32)); - let mut x1764: u32 = 0; - let mut x1765: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1764, &mut x1765, x1763, x1734, (0x0 as u32)); - let mut x1766: u32 = 0; - let mut x1767: u32 = 0; - fiat_bp512_mulx_u32(&mut x1766, &mut x1767, x1736, 0x7d89efc5); - let mut x1768: u32 = 0; - let mut x1769: u32 = 0; - fiat_bp512_mulx_u32(&mut x1768, &mut x1769, x1766, 0xaadd9db8); - let mut x1770: u32 = 0; - let mut x1771: u32 = 0; - fiat_bp512_mulx_u32(&mut x1770, &mut x1771, x1766, 0xdbe9c48b); - let mut x1772: u32 = 0; - let mut x1773: u32 = 0; - fiat_bp512_mulx_u32(&mut x1772, &mut x1773, x1766, 0x3fd4e6ae); - let mut x1774: u32 = 0; - let mut x1775: u32 = 0; - fiat_bp512_mulx_u32(&mut x1774, &mut x1775, x1766, 0x33c9fc07); - let mut x1776: u32 = 0; - let mut x1777: u32 = 0; - fiat_bp512_mulx_u32(&mut x1776, &mut x1777, x1766, 0xcb308db3); - let mut x1778: u32 = 0; - let mut x1779: u32 = 0; - fiat_bp512_mulx_u32(&mut x1778, &mut x1779, x1766, 0xb3c9d20e); - let mut x1780: u32 = 0; - let mut x1781: u32 = 0; - fiat_bp512_mulx_u32(&mut x1780, &mut x1781, x1766, 0xd6639cca); - let mut x1782: u32 = 0; - let mut x1783: u32 = 0; - fiat_bp512_mulx_u32(&mut x1782, &mut x1783, x1766, 0x70330871); - let mut x1784: u32 = 0; - let mut x1785: u32 = 0; - fiat_bp512_mulx_u32(&mut x1784, &mut x1785, x1766, 0x7d4d9b00); - let mut x1786: u32 = 0; - let mut x1787: u32 = 0; - fiat_bp512_mulx_u32(&mut x1786, &mut x1787, x1766, 0x9bc66842); - let mut x1788: u32 = 0; - let mut x1789: u32 = 0; - fiat_bp512_mulx_u32(&mut x1788, &mut x1789, x1766, 0xaecda12a); - let mut x1790: u32 = 0; - let mut x1791: u32 = 0; - fiat_bp512_mulx_u32(&mut x1790, &mut x1791, x1766, 0xe6a380e6); - let mut x1792: u32 = 0; - let mut x1793: u32 = 0; - fiat_bp512_mulx_u32(&mut x1792, &mut x1793, x1766, 0x2881ff2f); - let mut x1794: u32 = 0; - let mut x1795: u32 = 0; - fiat_bp512_mulx_u32(&mut x1794, &mut x1795, x1766, 0x2d82c685); - let mut x1796: u32 = 0; - let mut x1797: u32 = 0; - fiat_bp512_mulx_u32(&mut x1796, &mut x1797, x1766, 0x28aa6056); - let mut x1798: u32 = 0; - let mut x1799: u32 = 0; - fiat_bp512_mulx_u32(&mut x1798, &mut x1799, x1766, 0x583a48f3); - let mut x1800: u32 = 0; - let mut x1801: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1800, &mut x1801, 0x0, x1799, x1796); - let mut x1802: u32 = 0; - let mut x1803: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1802, &mut x1803, x1801, x1797, x1794); - let mut x1804: u32 = 0; - let mut x1805: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1804, &mut x1805, x1803, x1795, x1792); - let mut x1806: u32 = 0; - let mut x1807: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1806, &mut x1807, x1805, x1793, x1790); - let mut x1808: u32 = 0; - let mut x1809: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1808, &mut x1809, x1807, x1791, x1788); - let mut x1810: u32 = 0; - let mut x1811: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1810, &mut x1811, x1809, x1789, x1786); - let mut x1812: u32 = 0; - let mut x1813: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1812, &mut x1813, x1811, x1787, x1784); - let mut x1814: u32 = 0; - let mut x1815: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1814, &mut x1815, x1813, x1785, x1782); - let mut x1816: u32 = 0; - let mut x1817: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1816, &mut x1817, x1815, x1783, x1780); - let mut x1818: u32 = 0; - let mut x1819: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, x1817, x1781, x1778); - let mut x1820: u32 = 0; - let mut x1821: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1779, x1776); - let mut x1822: u32 = 0; - let mut x1823: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1777, x1774); - let mut x1824: u32 = 0; - let mut x1825: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1775, x1772); - let mut x1826: u32 = 0; - let mut x1827: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1773, x1770); - let mut x1828: u32 = 0; - let mut x1829: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1771, x1768); - let mut x1830: u32 = 0; - let mut x1831: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, 0x0, x1736, x1798); - let mut x1832: u32 = 0; - let mut x1833: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1738, x1800); - let mut x1834: u32 = 0; - let mut x1835: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1740, x1802); - let mut x1836: u32 = 0; - let mut x1837: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1742, x1804); - let mut x1838: u32 = 0; - let mut x1839: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1744, x1806); - let mut x1840: u32 = 0; - let mut x1841: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1746, x1808); - let mut x1842: u32 = 0; - let mut x1843: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1748, x1810); - let mut x1844: u32 = 0; - let mut x1845: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1750, x1812); - let mut x1846: u32 = 0; - let mut x1847: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1752, x1814); - let mut x1848: u32 = 0; - let mut x1849: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1754, x1816); - let mut x1850: u32 = 0; - let mut x1851: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1756, x1818); - let mut x1852: u32 = 0; - let mut x1853: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1852, &mut x1853, x1851, x1758, x1820); - let mut x1854: u32 = 0; - let mut x1855: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1854, &mut x1855, x1853, x1760, x1822); - let mut x1856: u32 = 0; - let mut x1857: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1856, &mut x1857, x1855, x1762, x1824); - let mut x1858: u32 = 0; - let mut x1859: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1858, &mut x1859, x1857, x1764, x1826); - let mut x1860: u32 = 0; - let mut x1861: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1860, &mut x1861, x1859, ((x1765 as u32) + ((x1735 as u32) + ((x1703 as u32) + x1643))), x1828); - let mut x1862: u32 = 0; - let mut x1863: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1862, &mut x1863, 0x0, x1832, (arg1[15])); - let mut x1864: u32 = 0; - let mut x1865: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1864, &mut x1865, x1863, x1834, (0x0 as u32)); - let mut x1866: u32 = 0; - let mut x1867: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1866, &mut x1867, x1865, x1836, (0x0 as u32)); - let mut x1868: u32 = 0; - let mut x1869: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1868, &mut x1869, x1867, x1838, (0x0 as u32)); - let mut x1870: u32 = 0; - let mut x1871: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1870, &mut x1871, x1869, x1840, (0x0 as u32)); - let mut x1872: u32 = 0; - let mut x1873: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1872, &mut x1873, x1871, x1842, (0x0 as u32)); - let mut x1874: u32 = 0; - let mut x1875: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1874, &mut x1875, x1873, x1844, (0x0 as u32)); - let mut x1876: u32 = 0; - let mut x1877: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1876, &mut x1877, x1875, x1846, (0x0 as u32)); - let mut x1878: u32 = 0; - let mut x1879: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1878, &mut x1879, x1877, x1848, (0x0 as u32)); - let mut x1880: u32 = 0; - let mut x1881: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1880, &mut x1881, x1879, x1850, (0x0 as u32)); - let mut x1882: u32 = 0; - let mut x1883: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1882, &mut x1883, x1881, x1852, (0x0 as u32)); - let mut x1884: u32 = 0; - let mut x1885: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1884, &mut x1885, x1883, x1854, (0x0 as u32)); - let mut x1886: u32 = 0; - let mut x1887: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, x1885, x1856, (0x0 as u32)); - let mut x1888: u32 = 0; - let mut x1889: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1858, (0x0 as u32)); - let mut x1890: u32 = 0; - let mut x1891: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1860, (0x0 as u32)); - let mut x1892: u32 = 0; - let mut x1893: u32 = 0; - fiat_bp512_mulx_u32(&mut x1892, &mut x1893, x1862, 0x7d89efc5); - let mut x1894: u32 = 0; - let mut x1895: u32 = 0; - fiat_bp512_mulx_u32(&mut x1894, &mut x1895, x1892, 0xaadd9db8); - let mut x1896: u32 = 0; - let mut x1897: u32 = 0; - fiat_bp512_mulx_u32(&mut x1896, &mut x1897, x1892, 0xdbe9c48b); - let mut x1898: u32 = 0; - let mut x1899: u32 = 0; - fiat_bp512_mulx_u32(&mut x1898, &mut x1899, x1892, 0x3fd4e6ae); - let mut x1900: u32 = 0; - let mut x1901: u32 = 0; - fiat_bp512_mulx_u32(&mut x1900, &mut x1901, x1892, 0x33c9fc07); - let mut x1902: u32 = 0; - let mut x1903: u32 = 0; - fiat_bp512_mulx_u32(&mut x1902, &mut x1903, x1892, 0xcb308db3); - let mut x1904: u32 = 0; - let mut x1905: u32 = 0; - fiat_bp512_mulx_u32(&mut x1904, &mut x1905, x1892, 0xb3c9d20e); - let mut x1906: u32 = 0; - let mut x1907: u32 = 0; - fiat_bp512_mulx_u32(&mut x1906, &mut x1907, x1892, 0xd6639cca); - let mut x1908: u32 = 0; - let mut x1909: u32 = 0; - fiat_bp512_mulx_u32(&mut x1908, &mut x1909, x1892, 0x70330871); - let mut x1910: u32 = 0; - let mut x1911: u32 = 0; - fiat_bp512_mulx_u32(&mut x1910, &mut x1911, x1892, 0x7d4d9b00); - let mut x1912: u32 = 0; - let mut x1913: u32 = 0; - fiat_bp512_mulx_u32(&mut x1912, &mut x1913, x1892, 0x9bc66842); - let mut x1914: u32 = 0; - let mut x1915: u32 = 0; - fiat_bp512_mulx_u32(&mut x1914, &mut x1915, x1892, 0xaecda12a); - let mut x1916: u32 = 0; - let mut x1917: u32 = 0; - fiat_bp512_mulx_u32(&mut x1916, &mut x1917, x1892, 0xe6a380e6); - let mut x1918: u32 = 0; - let mut x1919: u32 = 0; - fiat_bp512_mulx_u32(&mut x1918, &mut x1919, x1892, 0x2881ff2f); - let mut x1920: u32 = 0; - let mut x1921: u32 = 0; - fiat_bp512_mulx_u32(&mut x1920, &mut x1921, x1892, 0x2d82c685); - let mut x1922: u32 = 0; - let mut x1923: u32 = 0; - fiat_bp512_mulx_u32(&mut x1922, &mut x1923, x1892, 0x28aa6056); - let mut x1924: u32 = 0; - let mut x1925: u32 = 0; - fiat_bp512_mulx_u32(&mut x1924, &mut x1925, x1892, 0x583a48f3); - let mut x1926: u32 = 0; - let mut x1927: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1926, &mut x1927, 0x0, x1925, x1922); - let mut x1928: u32 = 0; - let mut x1929: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1928, &mut x1929, x1927, x1923, x1920); - let mut x1930: u32 = 0; - let mut x1931: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1930, &mut x1931, x1929, x1921, x1918); - let mut x1932: u32 = 0; - let mut x1933: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1932, &mut x1933, x1931, x1919, x1916); - let mut x1934: u32 = 0; - let mut x1935: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1934, &mut x1935, x1933, x1917, x1914); - let mut x1936: u32 = 0; - let mut x1937: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1936, &mut x1937, x1935, x1915, x1912); - let mut x1938: u32 = 0; - let mut x1939: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1938, &mut x1939, x1937, x1913, x1910); - let mut x1940: u32 = 0; - let mut x1941: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1940, &mut x1941, x1939, x1911, x1908); - let mut x1942: u32 = 0; - let mut x1943: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1942, &mut x1943, x1941, x1909, x1906); - let mut x1944: u32 = 0; - let mut x1945: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1944, &mut x1945, x1943, x1907, x1904); - let mut x1946: u32 = 0; - let mut x1947: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1946, &mut x1947, x1945, x1905, x1902); - let mut x1948: u32 = 0; - let mut x1949: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1948, &mut x1949, x1947, x1903, x1900); - let mut x1950: u32 = 0; - let mut x1951: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1950, &mut x1951, x1949, x1901, x1898); - let mut x1952: u32 = 0; - let mut x1953: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1952, &mut x1953, x1951, x1899, x1896); - let mut x1954: u32 = 0; - let mut x1955: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1954, &mut x1955, x1953, x1897, x1894); - let mut x1956: u32 = 0; - let mut x1957: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1956, &mut x1957, 0x0, x1862, x1924); - let mut x1958: u32 = 0; - let mut x1959: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1958, &mut x1959, x1957, x1864, x1926); - let mut x1960: u32 = 0; - let mut x1961: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1960, &mut x1961, x1959, x1866, x1928); - let mut x1962: u32 = 0; - let mut x1963: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1962, &mut x1963, x1961, x1868, x1930); - let mut x1964: u32 = 0; - let mut x1965: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1964, &mut x1965, x1963, x1870, x1932); - let mut x1966: u32 = 0; - let mut x1967: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1966, &mut x1967, x1965, x1872, x1934); - let mut x1968: u32 = 0; - let mut x1969: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1968, &mut x1969, x1967, x1874, x1936); - let mut x1970: u32 = 0; - let mut x1971: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1970, &mut x1971, x1969, x1876, x1938); - let mut x1972: u32 = 0; - let mut x1973: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1972, &mut x1973, x1971, x1878, x1940); - let mut x1974: u32 = 0; - let mut x1975: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1974, &mut x1975, x1973, x1880, x1942); - let mut x1976: u32 = 0; - let mut x1977: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1976, &mut x1977, x1975, x1882, x1944); - let mut x1978: u32 = 0; - let mut x1979: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1978, &mut x1979, x1977, x1884, x1946); - let mut x1980: u32 = 0; - let mut x1981: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1980, &mut x1981, x1979, x1886, x1948); - let mut x1982: u32 = 0; - let mut x1983: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1982, &mut x1983, x1981, x1888, x1950); - let mut x1984: u32 = 0; - let mut x1985: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, x1983, x1890, x1952); - let mut x1986: u32 = 0; - let mut x1987: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1986, &mut x1987, x1985, ((x1891 as u32) + ((x1861 as u32) + ((x1829 as u32) + x1769))), x1954); - let x1988: u32 = ((x1987 as u32) + ((x1955 as u32) + x1895)); - let mut x1989: u32 = 0; - let mut x1990: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1989, &mut x1990, 0x0, x1958, 0x583a48f3); - let mut x1991: u32 = 0; - let mut x1992: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1991, &mut x1992, x1990, x1960, 0x28aa6056); - let mut x1993: u32 = 0; - let mut x1994: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1993, &mut x1994, x1992, x1962, 0x2d82c685); - let mut x1995: u32 = 0; - let mut x1996: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1995, &mut x1996, x1994, x1964, 0x2881ff2f); - let mut x1997: u32 = 0; - let mut x1998: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1997, &mut x1998, x1996, x1966, 0xe6a380e6); - let mut x1999: u32 = 0; - let mut x2000: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x1999, &mut x2000, x1998, x1968, 0xaecda12a); - let mut x2001: u32 = 0; - let mut x2002: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2001, &mut x2002, x2000, x1970, 0x9bc66842); - let mut x2003: u32 = 0; - let mut x2004: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2003, &mut x2004, x2002, x1972, 0x7d4d9b00); - let mut x2005: u32 = 0; - let mut x2006: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2005, &mut x2006, x2004, x1974, 0x70330871); - let mut x2007: u32 = 0; - let mut x2008: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2007, &mut x2008, x2006, x1976, 0xd6639cca); - let mut x2009: u32 = 0; - let mut x2010: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2009, &mut x2010, x2008, x1978, 0xb3c9d20e); - let mut x2011: u32 = 0; - let mut x2012: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2011, &mut x2012, x2010, x1980, 0xcb308db3); - let mut x2013: u32 = 0; - let mut x2014: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2013, &mut x2014, x2012, x1982, 0x33c9fc07); - let mut x2015: u32 = 0; - let mut x2016: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2015, &mut x2016, x2014, x1984, 0x3fd4e6ae); - let mut x2017: u32 = 0; - let mut x2018: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2017, &mut x2018, x2016, x1986, 0xdbe9c48b); - let mut x2019: u32 = 0; - let mut x2020: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2019, &mut x2020, x2018, x1988, 0xaadd9db8); - let mut x2021: u32 = 0; - let mut x2022: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x2021, &mut x2022, x2020, (0x0 as u32), (0x0 as u32)); - let mut x2023: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2023, x2022, x1989, x1958); - let mut x2024: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2024, x2022, x1991, x1960); - let mut x2025: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2025, x2022, x1993, x1962); - let mut x2026: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2026, x2022, x1995, x1964); - let mut x2027: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2027, x2022, x1997, x1966); - let mut x2028: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2028, x2022, x1999, x1968); - let mut x2029: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2029, x2022, x2001, x1970); - let mut x2030: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2030, x2022, x2003, x1972); - let mut x2031: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2031, x2022, x2005, x1974); - let mut x2032: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2032, x2022, x2007, x1976); - let mut x2033: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2033, x2022, x2009, x1978); - let mut x2034: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2034, x2022, x2011, x1980); - let mut x2035: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2035, x2022, x2013, x1982); - let mut x2036: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2036, x2022, x2015, x1984); - let mut x2037: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2037, x2022, x2017, x1986); - let mut x2038: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2038, x2022, x2019, x1988); - out1[0] = x2023; - out1[1] = x2024; - out1[2] = x2025; - out1[3] = x2026; - out1[4] = x2027; - out1[5] = x2028; - out1[6] = x2029; - out1[7] = x2030; - out1[8] = x2031; - out1[9] = x2032; - out1[10] = x2033; - out1[11] = x2034; - out1[12] = x2035; - out1[13] = x2036; - out1[14] = x2037; - out1[15] = x2038; +pub fn fiat_bp512_from_montgomery( + out1: &mut fiat_bp512_non_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[0]); + let mut x2: u32 = 0; + let mut x3: u32 = 0; + fiat_bp512_mulx_u32(&mut x2, &mut x3, x1, 0x7d89efc5); + let mut x4: u32 = 0; + let mut x5: u32 = 0; + fiat_bp512_mulx_u32(&mut x4, &mut x5, x2, 0xaadd9db8); + let mut x6: u32 = 0; + let mut x7: u32 = 0; + fiat_bp512_mulx_u32(&mut x6, &mut x7, x2, 0xdbe9c48b); + let mut x8: u32 = 0; + let mut x9: u32 = 0; + fiat_bp512_mulx_u32(&mut x8, &mut x9, x2, 0x3fd4e6ae); + let mut x10: u32 = 0; + let mut x11: u32 = 0; + fiat_bp512_mulx_u32(&mut x10, &mut x11, x2, 0x33c9fc07); + let mut x12: u32 = 0; + let mut x13: u32 = 0; + fiat_bp512_mulx_u32(&mut x12, &mut x13, x2, 0xcb308db3); + let mut x14: u32 = 0; + let mut x15: u32 = 0; + fiat_bp512_mulx_u32(&mut x14, &mut x15, x2, 0xb3c9d20e); + let mut x16: u32 = 0; + let mut x17: u32 = 0; + fiat_bp512_mulx_u32(&mut x16, &mut x17, x2, 0xd6639cca); + let mut x18: u32 = 0; + let mut x19: u32 = 0; + fiat_bp512_mulx_u32(&mut x18, &mut x19, x2, 0x70330871); + let mut x20: u32 = 0; + let mut x21: u32 = 0; + fiat_bp512_mulx_u32(&mut x20, &mut x21, x2, 0x7d4d9b00); + let mut x22: u32 = 0; + let mut x23: u32 = 0; + fiat_bp512_mulx_u32(&mut x22, &mut x23, x2, 0x9bc66842); + let mut x24: u32 = 0; + let mut x25: u32 = 0; + fiat_bp512_mulx_u32(&mut x24, &mut x25, x2, 0xaecda12a); + let mut x26: u32 = 0; + let mut x27: u32 = 0; + fiat_bp512_mulx_u32(&mut x26, &mut x27, x2, 0xe6a380e6); + let mut x28: u32 = 0; + let mut x29: u32 = 0; + fiat_bp512_mulx_u32(&mut x28, &mut x29, x2, 0x2881ff2f); + let mut x30: u32 = 0; + let mut x31: u32 = 0; + fiat_bp512_mulx_u32(&mut x30, &mut x31, x2, 0x2d82c685); + let mut x32: u32 = 0; + let mut x33: u32 = 0; + fiat_bp512_mulx_u32(&mut x32, &mut x33, x2, 0x28aa6056); + let mut x34: u32 = 0; + let mut x35: u32 = 0; + fiat_bp512_mulx_u32(&mut x34, &mut x35, x2, 0x583a48f3); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, 0x0, x35, x32); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, x33, x30); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, x31, x28); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, x29, x26); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, x27, x24); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, x25, x22); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, x23, x20); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, x21, x18); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, x19, x16); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, x17, x14); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, x15, x12); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x58, &mut x59, x57, x13, x10); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x60, &mut x61, x59, x11, x8); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x62, &mut x63, x61, x9, x6); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x64, &mut x65, x63, x7, x4); + let mut x66: u32 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x66, &mut x67, 0x0, x1, x34); + let mut x68: u32 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x36); + let mut x70: u32 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x38); + let mut x72: u32 = 0; + let mut x73: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x40); + let mut x74: u32 = 0; + let mut x75: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x74, &mut x75, x73, (0x0 as u32), x42); + let mut x76: u32 = 0; + let mut x77: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x76, &mut x77, x75, (0x0 as u32), x44); + let mut x78: u32 = 0; + let mut x79: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x78, &mut x79, x77, (0x0 as u32), x46); + let mut x80: u32 = 0; + let mut x81: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x80, &mut x81, x79, (0x0 as u32), x48); + let mut x82: u32 = 0; + let mut x83: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x82, &mut x83, x81, (0x0 as u32), x50); + let mut x84: u32 = 0; + let mut x85: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x84, &mut x85, x83, (0x0 as u32), x52); + let mut x86: u32 = 0; + let mut x87: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x86, &mut x87, x85, (0x0 as u32), x54); + let mut x88: u32 = 0; + let mut x89: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x88, &mut x89, x87, (0x0 as u32), x56); + let mut x90: u32 = 0; + let mut x91: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x90, &mut x91, x89, (0x0 as u32), x58); + let mut x92: u32 = 0; + let mut x93: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x92, &mut x93, x91, (0x0 as u32), x60); + let mut x94: u32 = 0; + let mut x95: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x94, &mut x95, x93, (0x0 as u32), x62); + let mut x96: u32 = 0; + let mut x97: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x96, &mut x97, x95, (0x0 as u32), x64); + let mut x98: u32 = 0; + let mut x99: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x98, &mut x99, 0x0, x68, (arg1[1])); + let mut x100: u32 = 0; + let mut x101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x100, &mut x101, x99, x70, (0x0 as u32)); + let mut x102: u32 = 0; + let mut x103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x102, &mut x103, x101, x72, (0x0 as u32)); + let mut x104: u32 = 0; + let mut x105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x104, &mut x105, x103, x74, (0x0 as u32)); + let mut x106: u32 = 0; + let mut x107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x106, &mut x107, x105, x76, (0x0 as u32)); + let mut x108: u32 = 0; + let mut x109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x108, &mut x109, x107, x78, (0x0 as u32)); + let mut x110: u32 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x110, &mut x111, x109, x80, (0x0 as u32)); + let mut x112: u32 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x112, &mut x113, x111, x82, (0x0 as u32)); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x114, &mut x115, x113, x84, (0x0 as u32)); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x116, &mut x117, x115, x86, (0x0 as u32)); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x118, &mut x119, x117, x88, (0x0 as u32)); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x120, &mut x121, x119, x90, (0x0 as u32)); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x122, &mut x123, x121, x92, (0x0 as u32)); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x124, &mut x125, x123, x94, (0x0 as u32)); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x126, &mut x127, x125, x96, (0x0 as u32)); + let mut x128: u32 = 0; + let mut x129: u32 = 0; + fiat_bp512_mulx_u32(&mut x128, &mut x129, x98, 0x7d89efc5); + let mut x130: u32 = 0; + let mut x131: u32 = 0; + fiat_bp512_mulx_u32(&mut x130, &mut x131, x128, 0xaadd9db8); + let mut x132: u32 = 0; + let mut x133: u32 = 0; + fiat_bp512_mulx_u32(&mut x132, &mut x133, x128, 0xdbe9c48b); + let mut x134: u32 = 0; + let mut x135: u32 = 0; + fiat_bp512_mulx_u32(&mut x134, &mut x135, x128, 0x3fd4e6ae); + let mut x136: u32 = 0; + let mut x137: u32 = 0; + fiat_bp512_mulx_u32(&mut x136, &mut x137, x128, 0x33c9fc07); + let mut x138: u32 = 0; + let mut x139: u32 = 0; + fiat_bp512_mulx_u32(&mut x138, &mut x139, x128, 0xcb308db3); + let mut x140: u32 = 0; + let mut x141: u32 = 0; + fiat_bp512_mulx_u32(&mut x140, &mut x141, x128, 0xb3c9d20e); + let mut x142: u32 = 0; + let mut x143: u32 = 0; + fiat_bp512_mulx_u32(&mut x142, &mut x143, x128, 0xd6639cca); + let mut x144: u32 = 0; + let mut x145: u32 = 0; + fiat_bp512_mulx_u32(&mut x144, &mut x145, x128, 0x70330871); + let mut x146: u32 = 0; + let mut x147: u32 = 0; + fiat_bp512_mulx_u32(&mut x146, &mut x147, x128, 0x7d4d9b00); + let mut x148: u32 = 0; + let mut x149: u32 = 0; + fiat_bp512_mulx_u32(&mut x148, &mut x149, x128, 0x9bc66842); + let mut x150: u32 = 0; + let mut x151: u32 = 0; + fiat_bp512_mulx_u32(&mut x150, &mut x151, x128, 0xaecda12a); + let mut x152: u32 = 0; + let mut x153: u32 = 0; + fiat_bp512_mulx_u32(&mut x152, &mut x153, x128, 0xe6a380e6); + let mut x154: u32 = 0; + let mut x155: u32 = 0; + fiat_bp512_mulx_u32(&mut x154, &mut x155, x128, 0x2881ff2f); + let mut x156: u32 = 0; + let mut x157: u32 = 0; + fiat_bp512_mulx_u32(&mut x156, &mut x157, x128, 0x2d82c685); + let mut x158: u32 = 0; + let mut x159: u32 = 0; + fiat_bp512_mulx_u32(&mut x158, &mut x159, x128, 0x28aa6056); + let mut x160: u32 = 0; + let mut x161: u32 = 0; + fiat_bp512_mulx_u32(&mut x160, &mut x161, x128, 0x583a48f3); + let mut x162: u32 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x162, &mut x163, 0x0, x161, x158); + let mut x164: u32 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x164, &mut x165, x163, x159, x156); + let mut x166: u32 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x166, &mut x167, x165, x157, x154); + let mut x168: u32 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x168, &mut x169, x167, x155, x152); + let mut x170: u32 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x170, &mut x171, x169, x153, x150); + let mut x172: u32 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x172, &mut x173, x171, x151, x148); + let mut x174: u32 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x174, &mut x175, x173, x149, x146); + let mut x176: u32 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x176, &mut x177, x175, x147, x144); + let mut x178: u32 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x178, &mut x179, x177, x145, x142); + let mut x180: u32 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x180, &mut x181, x179, x143, x140); + let mut x182: u32 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x182, &mut x183, x181, x141, x138); + let mut x184: u32 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x184, &mut x185, x183, x139, x136); + let mut x186: u32 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x186, &mut x187, x185, x137, x134); + let mut x188: u32 = 0; + let mut x189: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x188, &mut x189, x187, x135, x132); + let mut x190: u32 = 0; + let mut x191: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x190, &mut x191, x189, x133, x130); + let mut x192: u32 = 0; + let mut x193: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x192, &mut x193, 0x0, x98, x160); + let mut x194: u32 = 0; + let mut x195: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x194, &mut x195, x193, x100, x162); + let mut x196: u32 = 0; + let mut x197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x196, &mut x197, x195, x102, x164); + let mut x198: u32 = 0; + let mut x199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x198, &mut x199, x197, x104, x166); + let mut x200: u32 = 0; + let mut x201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x200, &mut x201, x199, x106, x168); + let mut x202: u32 = 0; + let mut x203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x202, &mut x203, x201, x108, x170); + let mut x204: u32 = 0; + let mut x205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x204, &mut x205, x203, x110, x172); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x206, &mut x207, x205, x112, x174); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x114, x176); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x116, x178); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x118, x180); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x120, x182); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x122, x184); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x124, x186); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x126, x188); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x222, + &mut x223, + x221, + ((x127 as u32) + ((x97 as u32) + ((x65 as u32) + x5))), + x190, + ); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x224, &mut x225, 0x0, x194, (arg1[2])); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x196, (0x0 as u32)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x198, (0x0 as u32)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x200, (0x0 as u32)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x202, (0x0 as u32)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x204, (0x0 as u32)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x206, (0x0 as u32)); + let mut x238: u32 = 0; + let mut x239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x238, &mut x239, x237, x208, (0x0 as u32)); + let mut x240: u32 = 0; + let mut x241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x240, &mut x241, x239, x210, (0x0 as u32)); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x242, &mut x243, x241, x212, (0x0 as u32)); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x244, &mut x245, x243, x214, (0x0 as u32)); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x246, &mut x247, x245, x216, (0x0 as u32)); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x248, &mut x249, x247, x218, (0x0 as u32)); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x250, &mut x251, x249, x220, (0x0 as u32)); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x252, &mut x253, x251, x222, (0x0 as u32)); + let mut x254: u32 = 0; + let mut x255: u32 = 0; + fiat_bp512_mulx_u32(&mut x254, &mut x255, x224, 0x7d89efc5); + let mut x256: u32 = 0; + let mut x257: u32 = 0; + fiat_bp512_mulx_u32(&mut x256, &mut x257, x254, 0xaadd9db8); + let mut x258: u32 = 0; + let mut x259: u32 = 0; + fiat_bp512_mulx_u32(&mut x258, &mut x259, x254, 0xdbe9c48b); + let mut x260: u32 = 0; + let mut x261: u32 = 0; + fiat_bp512_mulx_u32(&mut x260, &mut x261, x254, 0x3fd4e6ae); + let mut x262: u32 = 0; + let mut x263: u32 = 0; + fiat_bp512_mulx_u32(&mut x262, &mut x263, x254, 0x33c9fc07); + let mut x264: u32 = 0; + let mut x265: u32 = 0; + fiat_bp512_mulx_u32(&mut x264, &mut x265, x254, 0xcb308db3); + let mut x266: u32 = 0; + let mut x267: u32 = 0; + fiat_bp512_mulx_u32(&mut x266, &mut x267, x254, 0xb3c9d20e); + let mut x268: u32 = 0; + let mut x269: u32 = 0; + fiat_bp512_mulx_u32(&mut x268, &mut x269, x254, 0xd6639cca); + let mut x270: u32 = 0; + let mut x271: u32 = 0; + fiat_bp512_mulx_u32(&mut x270, &mut x271, x254, 0x70330871); + let mut x272: u32 = 0; + let mut x273: u32 = 0; + fiat_bp512_mulx_u32(&mut x272, &mut x273, x254, 0x7d4d9b00); + let mut x274: u32 = 0; + let mut x275: u32 = 0; + fiat_bp512_mulx_u32(&mut x274, &mut x275, x254, 0x9bc66842); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_mulx_u32(&mut x276, &mut x277, x254, 0xaecda12a); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_mulx_u32(&mut x278, &mut x279, x254, 0xe6a380e6); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_mulx_u32(&mut x280, &mut x281, x254, 0x2881ff2f); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_mulx_u32(&mut x282, &mut x283, x254, 0x2d82c685); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_mulx_u32(&mut x284, &mut x285, x254, 0x28aa6056); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_mulx_u32(&mut x286, &mut x287, x254, 0x583a48f3); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x288, &mut x289, 0x0, x287, x284); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x285, x282); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x283, x280); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x281, x278); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x279, x276); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x277, x274); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x275, x272); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x273, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x271, x268); + let mut x306: u32 = 0; + let mut x307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x306, &mut x307, x305, x269, x266); + let mut x308: u32 = 0; + let mut x309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x308, &mut x309, x307, x267, x264); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x310, &mut x311, x309, x265, x262); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x312, &mut x313, x311, x263, x260); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x314, &mut x315, x313, x261, x258); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x316, &mut x317, x315, x259, x256); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x318, &mut x319, 0x0, x224, x286); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x320, &mut x321, x319, x226, x288); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, x321, x228, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x230, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x232, x294); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x234, x296); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x236, x298); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x238, x300); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x240, x302); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x242, x304); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x244, x306); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x246, x308); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x310); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x250, x312); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x252, x314); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x348, + &mut x349, + x347, + ((x253 as u32) + ((x223 as u32) + ((x191 as u32) + x131))), + x316, + ); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x350, &mut x351, 0x0, x320, (arg1[3])); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x322, (0x0 as u32)); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x354, &mut x355, x353, x324, (0x0 as u32)); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x356, &mut x357, x355, x326, (0x0 as u32)); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x358, &mut x359, x357, x328, (0x0 as u32)); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x360, &mut x361, x359, x330, (0x0 as u32)); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x362, &mut x363, x361, x332, (0x0 as u32)); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x364, &mut x365, x363, x334, (0x0 as u32)); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x366, &mut x367, x365, x336, (0x0 as u32)); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x368, &mut x369, x367, x338, (0x0 as u32)); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x370, &mut x371, x369, x340, (0x0 as u32)); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x372, &mut x373, x371, x342, (0x0 as u32)); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x374, &mut x375, x373, x344, (0x0 as u32)); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x376, &mut x377, x375, x346, (0x0 as u32)); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x378, &mut x379, x377, x348, (0x0 as u32)); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_mulx_u32(&mut x380, &mut x381, x350, 0x7d89efc5); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_mulx_u32(&mut x382, &mut x383, x380, 0xaadd9db8); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_mulx_u32(&mut x384, &mut x385, x380, 0xdbe9c48b); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_mulx_u32(&mut x386, &mut x387, x380, 0x3fd4e6ae); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_mulx_u32(&mut x388, &mut x389, x380, 0x33c9fc07); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_mulx_u32(&mut x390, &mut x391, x380, 0xcb308db3); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_mulx_u32(&mut x392, &mut x393, x380, 0xb3c9d20e); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_mulx_u32(&mut x394, &mut x395, x380, 0xd6639cca); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_mulx_u32(&mut x396, &mut x397, x380, 0x70330871); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_mulx_u32(&mut x398, &mut x399, x380, 0x7d4d9b00); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_mulx_u32(&mut x400, &mut x401, x380, 0x9bc66842); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_mulx_u32(&mut x402, &mut x403, x380, 0xaecda12a); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_mulx_u32(&mut x404, &mut x405, x380, 0xe6a380e6); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_mulx_u32(&mut x406, &mut x407, x380, 0x2881ff2f); + let mut x408: u32 = 0; + let mut x409: u32 = 0; + fiat_bp512_mulx_u32(&mut x408, &mut x409, x380, 0x2d82c685); + let mut x410: u32 = 0; + let mut x411: u32 = 0; + fiat_bp512_mulx_u32(&mut x410, &mut x411, x380, 0x28aa6056); + let mut x412: u32 = 0; + let mut x413: u32 = 0; + fiat_bp512_mulx_u32(&mut x412, &mut x413, x380, 0x583a48f3); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x414, &mut x415, 0x0, x413, x410); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x416, &mut x417, x415, x411, x408); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x418, &mut x419, x417, x409, x406); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x420, &mut x421, x419, x407, x404); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x422, &mut x423, x421, x405, x402); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x424, &mut x425, x423, x403, x400); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x426, &mut x427, x425, x401, x398); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x428, &mut x429, x427, x399, x396); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x430, &mut x431, x429, x397, x394); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x432, &mut x433, x431, x395, x392); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x434, &mut x435, x433, x393, x390); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x436, &mut x437, x435, x391, x388); + let mut x438: u32 = 0; + let mut x439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x438, &mut x439, x437, x389, x386); + let mut x440: u32 = 0; + let mut x441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x440, &mut x441, x439, x387, x384); + let mut x442: u32 = 0; + let mut x443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x442, &mut x443, x441, x385, x382); + let mut x444: u32 = 0; + let mut x445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x444, &mut x445, 0x0, x350, x412); + let mut x446: u32 = 0; + let mut x447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x446, &mut x447, x445, x352, x414); + let mut x448: u32 = 0; + let mut x449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x448, &mut x449, x447, x354, x416); + let mut x450: u32 = 0; + let mut x451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x450, &mut x451, x449, x356, x418); + let mut x452: u32 = 0; + let mut x453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x452, &mut x453, x451, x358, x420); + let mut x454: u32 = 0; + let mut x455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x454, &mut x455, x453, x360, x422); + let mut x456: u32 = 0; + let mut x457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x456, &mut x457, x455, x362, x424); + let mut x458: u32 = 0; + let mut x459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x458, &mut x459, x457, x364, x426); + let mut x460: u32 = 0; + let mut x461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x460, &mut x461, x459, x366, x428); + let mut x462: u32 = 0; + let mut x463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x462, &mut x463, x461, x368, x430); + let mut x464: u32 = 0; + let mut x465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x464, &mut x465, x463, x370, x432); + let mut x466: u32 = 0; + let mut x467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x466, &mut x467, x465, x372, x434); + let mut x468: u32 = 0; + let mut x469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x468, &mut x469, x467, x374, x436); + let mut x470: u32 = 0; + let mut x471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x470, &mut x471, x469, x376, x438); + let mut x472: u32 = 0; + let mut x473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x472, &mut x473, x471, x378, x440); + let mut x474: u32 = 0; + let mut x475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x474, + &mut x475, + x473, + ((x379 as u32) + ((x349 as u32) + ((x317 as u32) + x257))), + x442, + ); + let mut x476: u32 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x476, &mut x477, 0x0, x446, (arg1[4])); + let mut x478: u32 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x478, &mut x479, x477, x448, (0x0 as u32)); + let mut x480: u32 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x480, &mut x481, x479, x450, (0x0 as u32)); + let mut x482: u32 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x482, &mut x483, x481, x452, (0x0 as u32)); + let mut x484: u32 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x484, &mut x485, x483, x454, (0x0 as u32)); + let mut x486: u32 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x486, &mut x487, x485, x456, (0x0 as u32)); + let mut x488: u32 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x488, &mut x489, x487, x458, (0x0 as u32)); + let mut x490: u32 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x490, &mut x491, x489, x460, (0x0 as u32)); + let mut x492: u32 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x492, &mut x493, x491, x462, (0x0 as u32)); + let mut x494: u32 = 0; + let mut x495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x494, &mut x495, x493, x464, (0x0 as u32)); + let mut x496: u32 = 0; + let mut x497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x496, &mut x497, x495, x466, (0x0 as u32)); + let mut x498: u32 = 0; + let mut x499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x498, &mut x499, x497, x468, (0x0 as u32)); + let mut x500: u32 = 0; + let mut x501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x500, &mut x501, x499, x470, (0x0 as u32)); + let mut x502: u32 = 0; + let mut x503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x502, &mut x503, x501, x472, (0x0 as u32)); + let mut x504: u32 = 0; + let mut x505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x504, &mut x505, x503, x474, (0x0 as u32)); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp512_mulx_u32(&mut x506, &mut x507, x476, 0x7d89efc5); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp512_mulx_u32(&mut x508, &mut x509, x506, 0xaadd9db8); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp512_mulx_u32(&mut x510, &mut x511, x506, 0xdbe9c48b); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp512_mulx_u32(&mut x512, &mut x513, x506, 0x3fd4e6ae); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp512_mulx_u32(&mut x514, &mut x515, x506, 0x33c9fc07); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp512_mulx_u32(&mut x516, &mut x517, x506, 0xcb308db3); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp512_mulx_u32(&mut x518, &mut x519, x506, 0xb3c9d20e); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp512_mulx_u32(&mut x520, &mut x521, x506, 0xd6639cca); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp512_mulx_u32(&mut x522, &mut x523, x506, 0x70330871); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp512_mulx_u32(&mut x524, &mut x525, x506, 0x7d4d9b00); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp512_mulx_u32(&mut x526, &mut x527, x506, 0x9bc66842); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp512_mulx_u32(&mut x528, &mut x529, x506, 0xaecda12a); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp512_mulx_u32(&mut x530, &mut x531, x506, 0xe6a380e6); + let mut x532: u32 = 0; + let mut x533: u32 = 0; + fiat_bp512_mulx_u32(&mut x532, &mut x533, x506, 0x2881ff2f); + let mut x534: u32 = 0; + let mut x535: u32 = 0; + fiat_bp512_mulx_u32(&mut x534, &mut x535, x506, 0x2d82c685); + let mut x536: u32 = 0; + let mut x537: u32 = 0; + fiat_bp512_mulx_u32(&mut x536, &mut x537, x506, 0x28aa6056); + let mut x538: u32 = 0; + let mut x539: u32 = 0; + fiat_bp512_mulx_u32(&mut x538, &mut x539, x506, 0x583a48f3); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x540, &mut x541, 0x0, x539, x536); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x542, &mut x543, x541, x537, x534); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x544, &mut x545, x543, x535, x532); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x546, &mut x547, x545, x533, x530); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x548, &mut x549, x547, x531, x528); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x550, &mut x551, x549, x529, x526); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x552, &mut x553, x551, x527, x524); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x554, &mut x555, x553, x525, x522); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x556, &mut x557, x555, x523, x520); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x558, &mut x559, x557, x521, x518); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x560, &mut x561, x559, x519, x516); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x562, &mut x563, x561, x517, x514); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x564, &mut x565, x563, x515, x512); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x566, &mut x567, x565, x513, x510); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x568, &mut x569, x567, x511, x508); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x570, &mut x571, 0x0, x476, x538); + let mut x572: u32 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x572, &mut x573, x571, x478, x540); + let mut x574: u32 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x574, &mut x575, x573, x480, x542); + let mut x576: u32 = 0; + let mut x577: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x576, &mut x577, x575, x482, x544); + let mut x578: u32 = 0; + let mut x579: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x578, &mut x579, x577, x484, x546); + let mut x580: u32 = 0; + let mut x581: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x580, &mut x581, x579, x486, x548); + let mut x582: u32 = 0; + let mut x583: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x582, &mut x583, x581, x488, x550); + let mut x584: u32 = 0; + let mut x585: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x584, &mut x585, x583, x490, x552); + let mut x586: u32 = 0; + let mut x587: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x586, &mut x587, x585, x492, x554); + let mut x588: u32 = 0; + let mut x589: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x588, &mut x589, x587, x494, x556); + let mut x590: u32 = 0; + let mut x591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x590, &mut x591, x589, x496, x558); + let mut x592: u32 = 0; + let mut x593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x592, &mut x593, x591, x498, x560); + let mut x594: u32 = 0; + let mut x595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x594, &mut x595, x593, x500, x562); + let mut x596: u32 = 0; + let mut x597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x596, &mut x597, x595, x502, x564); + let mut x598: u32 = 0; + let mut x599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x598, &mut x599, x597, x504, x566); + let mut x600: u32 = 0; + let mut x601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x600, + &mut x601, + x599, + ((x505 as u32) + ((x475 as u32) + ((x443 as u32) + x383))), + x568, + ); + let mut x602: u32 = 0; + let mut x603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x602, &mut x603, 0x0, x572, (arg1[5])); + let mut x604: u32 = 0; + let mut x605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x604, &mut x605, x603, x574, (0x0 as u32)); + let mut x606: u32 = 0; + let mut x607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x606, &mut x607, x605, x576, (0x0 as u32)); + let mut x608: u32 = 0; + let mut x609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x608, &mut x609, x607, x578, (0x0 as u32)); + let mut x610: u32 = 0; + let mut x611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x610, &mut x611, x609, x580, (0x0 as u32)); + let mut x612: u32 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x612, &mut x613, x611, x582, (0x0 as u32)); + let mut x614: u32 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x614, &mut x615, x613, x584, (0x0 as u32)); + let mut x616: u32 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x616, &mut x617, x615, x586, (0x0 as u32)); + let mut x618: u32 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x618, &mut x619, x617, x588, (0x0 as u32)); + let mut x620: u32 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x620, &mut x621, x619, x590, (0x0 as u32)); + let mut x622: u32 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x622, &mut x623, x621, x592, (0x0 as u32)); + let mut x624: u32 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x624, &mut x625, x623, x594, (0x0 as u32)); + let mut x626: u32 = 0; + let mut x627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x626, &mut x627, x625, x596, (0x0 as u32)); + let mut x628: u32 = 0; + let mut x629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x628, &mut x629, x627, x598, (0x0 as u32)); + let mut x630: u32 = 0; + let mut x631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x630, &mut x631, x629, x600, (0x0 as u32)); + let mut x632: u32 = 0; + let mut x633: u32 = 0; + fiat_bp512_mulx_u32(&mut x632, &mut x633, x602, 0x7d89efc5); + let mut x634: u32 = 0; + let mut x635: u32 = 0; + fiat_bp512_mulx_u32(&mut x634, &mut x635, x632, 0xaadd9db8); + let mut x636: u32 = 0; + let mut x637: u32 = 0; + fiat_bp512_mulx_u32(&mut x636, &mut x637, x632, 0xdbe9c48b); + let mut x638: u32 = 0; + let mut x639: u32 = 0; + fiat_bp512_mulx_u32(&mut x638, &mut x639, x632, 0x3fd4e6ae); + let mut x640: u32 = 0; + let mut x641: u32 = 0; + fiat_bp512_mulx_u32(&mut x640, &mut x641, x632, 0x33c9fc07); + let mut x642: u32 = 0; + let mut x643: u32 = 0; + fiat_bp512_mulx_u32(&mut x642, &mut x643, x632, 0xcb308db3); + let mut x644: u32 = 0; + let mut x645: u32 = 0; + fiat_bp512_mulx_u32(&mut x644, &mut x645, x632, 0xb3c9d20e); + let mut x646: u32 = 0; + let mut x647: u32 = 0; + fiat_bp512_mulx_u32(&mut x646, &mut x647, x632, 0xd6639cca); + let mut x648: u32 = 0; + let mut x649: u32 = 0; + fiat_bp512_mulx_u32(&mut x648, &mut x649, x632, 0x70330871); + let mut x650: u32 = 0; + let mut x651: u32 = 0; + fiat_bp512_mulx_u32(&mut x650, &mut x651, x632, 0x7d4d9b00); + let mut x652: u32 = 0; + let mut x653: u32 = 0; + fiat_bp512_mulx_u32(&mut x652, &mut x653, x632, 0x9bc66842); + let mut x654: u32 = 0; + let mut x655: u32 = 0; + fiat_bp512_mulx_u32(&mut x654, &mut x655, x632, 0xaecda12a); + let mut x656: u32 = 0; + let mut x657: u32 = 0; + fiat_bp512_mulx_u32(&mut x656, &mut x657, x632, 0xe6a380e6); + let mut x658: u32 = 0; + let mut x659: u32 = 0; + fiat_bp512_mulx_u32(&mut x658, &mut x659, x632, 0x2881ff2f); + let mut x660: u32 = 0; + let mut x661: u32 = 0; + fiat_bp512_mulx_u32(&mut x660, &mut x661, x632, 0x2d82c685); + let mut x662: u32 = 0; + let mut x663: u32 = 0; + fiat_bp512_mulx_u32(&mut x662, &mut x663, x632, 0x28aa6056); + let mut x664: u32 = 0; + let mut x665: u32 = 0; + fiat_bp512_mulx_u32(&mut x664, &mut x665, x632, 0x583a48f3); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x666, &mut x667, 0x0, x665, x662); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x668, &mut x669, x667, x663, x660); + let mut x670: u32 = 0; + let mut x671: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x670, &mut x671, x669, x661, x658); + let mut x672: u32 = 0; + let mut x673: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x672, &mut x673, x671, x659, x656); + let mut x674: u32 = 0; + let mut x675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x674, &mut x675, x673, x657, x654); + let mut x676: u32 = 0; + let mut x677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x676, &mut x677, x675, x655, x652); + let mut x678: u32 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x678, &mut x679, x677, x653, x650); + let mut x680: u32 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x680, &mut x681, x679, x651, x648); + let mut x682: u32 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x682, &mut x683, x681, x649, x646); + let mut x684: u32 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x684, &mut x685, x683, x647, x644); + let mut x686: u32 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x686, &mut x687, x685, x645, x642); + let mut x688: u32 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x688, &mut x689, x687, x643, x640); + let mut x690: u32 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x690, &mut x691, x689, x641, x638); + let mut x692: u32 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x692, &mut x693, x691, x639, x636); + let mut x694: u32 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x694, &mut x695, x693, x637, x634); + let mut x696: u32 = 0; + let mut x697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x696, &mut x697, 0x0, x602, x664); + let mut x698: u32 = 0; + let mut x699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x698, &mut x699, x697, x604, x666); + let mut x700: u32 = 0; + let mut x701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x700, &mut x701, x699, x606, x668); + let mut x702: u32 = 0; + let mut x703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x702, &mut x703, x701, x608, x670); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x704, &mut x705, x703, x610, x672); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x706, &mut x707, x705, x612, x674); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x708, &mut x709, x707, x614, x676); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x710, &mut x711, x709, x616, x678); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x712, &mut x713, x711, x618, x680); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x714, &mut x715, x713, x620, x682); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x716, &mut x717, x715, x622, x684); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x718, &mut x719, x717, x624, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x720, &mut x721, x719, x626, x688); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x722, &mut x723, x721, x628, x690); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x724, &mut x725, x723, x630, x692); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x726, + &mut x727, + x725, + ((x631 as u32) + ((x601 as u32) + ((x569 as u32) + x509))), + x694, + ); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x728, &mut x729, 0x0, x698, (arg1[6])); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x730, &mut x731, x729, x700, (0x0 as u32)); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x732, &mut x733, x731, x702, (0x0 as u32)); + let mut x734: u32 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x734, &mut x735, x733, x704, (0x0 as u32)); + let mut x736: u32 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x736, &mut x737, x735, x706, (0x0 as u32)); + let mut x738: u32 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x738, &mut x739, x737, x708, (0x0 as u32)); + let mut x740: u32 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x740, &mut x741, x739, x710, (0x0 as u32)); + let mut x742: u32 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x742, &mut x743, x741, x712, (0x0 as u32)); + let mut x744: u32 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x744, &mut x745, x743, x714, (0x0 as u32)); + let mut x746: u32 = 0; + let mut x747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x746, &mut x747, x745, x716, (0x0 as u32)); + let mut x748: u32 = 0; + let mut x749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x748, &mut x749, x747, x718, (0x0 as u32)); + let mut x750: u32 = 0; + let mut x751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x750, &mut x751, x749, x720, (0x0 as u32)); + let mut x752: u32 = 0; + let mut x753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x752, &mut x753, x751, x722, (0x0 as u32)); + let mut x754: u32 = 0; + let mut x755: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x754, &mut x755, x753, x724, (0x0 as u32)); + let mut x756: u32 = 0; + let mut x757: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x756, &mut x757, x755, x726, (0x0 as u32)); + let mut x758: u32 = 0; + let mut x759: u32 = 0; + fiat_bp512_mulx_u32(&mut x758, &mut x759, x728, 0x7d89efc5); + let mut x760: u32 = 0; + let mut x761: u32 = 0; + fiat_bp512_mulx_u32(&mut x760, &mut x761, x758, 0xaadd9db8); + let mut x762: u32 = 0; + let mut x763: u32 = 0; + fiat_bp512_mulx_u32(&mut x762, &mut x763, x758, 0xdbe9c48b); + let mut x764: u32 = 0; + let mut x765: u32 = 0; + fiat_bp512_mulx_u32(&mut x764, &mut x765, x758, 0x3fd4e6ae); + let mut x766: u32 = 0; + let mut x767: u32 = 0; + fiat_bp512_mulx_u32(&mut x766, &mut x767, x758, 0x33c9fc07); + let mut x768: u32 = 0; + let mut x769: u32 = 0; + fiat_bp512_mulx_u32(&mut x768, &mut x769, x758, 0xcb308db3); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_mulx_u32(&mut x770, &mut x771, x758, 0xb3c9d20e); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_mulx_u32(&mut x772, &mut x773, x758, 0xd6639cca); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_mulx_u32(&mut x774, &mut x775, x758, 0x70330871); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_mulx_u32(&mut x776, &mut x777, x758, 0x7d4d9b00); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_mulx_u32(&mut x778, &mut x779, x758, 0x9bc66842); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_mulx_u32(&mut x780, &mut x781, x758, 0xaecda12a); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_mulx_u32(&mut x782, &mut x783, x758, 0xe6a380e6); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_mulx_u32(&mut x784, &mut x785, x758, 0x2881ff2f); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_mulx_u32(&mut x786, &mut x787, x758, 0x2d82c685); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_mulx_u32(&mut x788, &mut x789, x758, 0x28aa6056); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_mulx_u32(&mut x790, &mut x791, x758, 0x583a48f3); + let mut x792: u32 = 0; + let mut x793: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x792, &mut x793, 0x0, x791, x788); + let mut x794: u32 = 0; + let mut x795: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x794, &mut x795, x793, x789, x786); + let mut x796: u32 = 0; + let mut x797: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x796, &mut x797, x795, x787, x784); + let mut x798: u32 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x798, &mut x799, x797, x785, x782); + let mut x800: u32 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x800, &mut x801, x799, x783, x780); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x802, &mut x803, x801, x781, x778); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x804, &mut x805, x803, x779, x776); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x806, &mut x807, x805, x777, x774); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x808, &mut x809, x807, x775, x772); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x810, &mut x811, x809, x773, x770); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x812, &mut x813, x811, x771, x768); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x814, &mut x815, x813, x769, x766); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x816, &mut x817, x815, x767, x764); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x818, &mut x819, x817, x765, x762); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x820, &mut x821, x819, x763, x760); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x822, &mut x823, 0x0, x728, x790); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x824, &mut x825, x823, x730, x792); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x826, &mut x827, x825, x732, x794); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x828, &mut x829, x827, x734, x796); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x830, &mut x831, x829, x736, x798); + let mut x832: u32 = 0; + let mut x833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x832, &mut x833, x831, x738, x800); + let mut x834: u32 = 0; + let mut x835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x834, &mut x835, x833, x740, x802); + let mut x836: u32 = 0; + let mut x837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x836, &mut x837, x835, x742, x804); + let mut x838: u32 = 0; + let mut x839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x838, &mut x839, x837, x744, x806); + let mut x840: u32 = 0; + let mut x841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x840, &mut x841, x839, x746, x808); + let mut x842: u32 = 0; + let mut x843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x842, &mut x843, x841, x748, x810); + let mut x844: u32 = 0; + let mut x845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x844, &mut x845, x843, x750, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x846, &mut x847, x845, x752, x814); + let mut x848: u32 = 0; + let mut x849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x848, &mut x849, x847, x754, x816); + let mut x850: u32 = 0; + let mut x851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x850, &mut x851, x849, x756, x818); + let mut x852: u32 = 0; + let mut x853: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x852, + &mut x853, + x851, + ((x757 as u32) + ((x727 as u32) + ((x695 as u32) + x635))), + x820, + ); + let mut x854: u32 = 0; + let mut x855: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x854, &mut x855, 0x0, x824, (arg1[7])); + let mut x856: u32 = 0; + let mut x857: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x856, &mut x857, x855, x826, (0x0 as u32)); + let mut x858: u32 = 0; + let mut x859: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x858, &mut x859, x857, x828, (0x0 as u32)); + let mut x860: u32 = 0; + let mut x861: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x860, &mut x861, x859, x830, (0x0 as u32)); + let mut x862: u32 = 0; + let mut x863: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x862, &mut x863, x861, x832, (0x0 as u32)); + let mut x864: u32 = 0; + let mut x865: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x864, &mut x865, x863, x834, (0x0 as u32)); + let mut x866: u32 = 0; + let mut x867: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x866, &mut x867, x865, x836, (0x0 as u32)); + let mut x868: u32 = 0; + let mut x869: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x868, &mut x869, x867, x838, (0x0 as u32)); + let mut x870: u32 = 0; + let mut x871: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x870, &mut x871, x869, x840, (0x0 as u32)); + let mut x872: u32 = 0; + let mut x873: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x872, &mut x873, x871, x842, (0x0 as u32)); + let mut x874: u32 = 0; + let mut x875: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x874, &mut x875, x873, x844, (0x0 as u32)); + let mut x876: u32 = 0; + let mut x877: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x876, &mut x877, x875, x846, (0x0 as u32)); + let mut x878: u32 = 0; + let mut x879: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x878, &mut x879, x877, x848, (0x0 as u32)); + let mut x880: u32 = 0; + let mut x881: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x880, &mut x881, x879, x850, (0x0 as u32)); + let mut x882: u32 = 0; + let mut x883: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x882, &mut x883, x881, x852, (0x0 as u32)); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp512_mulx_u32(&mut x884, &mut x885, x854, 0x7d89efc5); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp512_mulx_u32(&mut x886, &mut x887, x884, 0xaadd9db8); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp512_mulx_u32(&mut x888, &mut x889, x884, 0xdbe9c48b); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp512_mulx_u32(&mut x890, &mut x891, x884, 0x3fd4e6ae); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp512_mulx_u32(&mut x892, &mut x893, x884, 0x33c9fc07); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp512_mulx_u32(&mut x894, &mut x895, x884, 0xcb308db3); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp512_mulx_u32(&mut x896, &mut x897, x884, 0xb3c9d20e); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp512_mulx_u32(&mut x898, &mut x899, x884, 0xd6639cca); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp512_mulx_u32(&mut x900, &mut x901, x884, 0x70330871); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp512_mulx_u32(&mut x902, &mut x903, x884, 0x7d4d9b00); + let mut x904: u32 = 0; + let mut x905: u32 = 0; + fiat_bp512_mulx_u32(&mut x904, &mut x905, x884, 0x9bc66842); + let mut x906: u32 = 0; + let mut x907: u32 = 0; + fiat_bp512_mulx_u32(&mut x906, &mut x907, x884, 0xaecda12a); + let mut x908: u32 = 0; + let mut x909: u32 = 0; + fiat_bp512_mulx_u32(&mut x908, &mut x909, x884, 0xe6a380e6); + let mut x910: u32 = 0; + let mut x911: u32 = 0; + fiat_bp512_mulx_u32(&mut x910, &mut x911, x884, 0x2881ff2f); + let mut x912: u32 = 0; + let mut x913: u32 = 0; + fiat_bp512_mulx_u32(&mut x912, &mut x913, x884, 0x2d82c685); + let mut x914: u32 = 0; + let mut x915: u32 = 0; + fiat_bp512_mulx_u32(&mut x914, &mut x915, x884, 0x28aa6056); + let mut x916: u32 = 0; + let mut x917: u32 = 0; + fiat_bp512_mulx_u32(&mut x916, &mut x917, x884, 0x583a48f3); + let mut x918: u32 = 0; + let mut x919: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x918, &mut x919, 0x0, x917, x914); + let mut x920: u32 = 0; + let mut x921: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x920, &mut x921, x919, x915, x912); + let mut x922: u32 = 0; + let mut x923: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x922, &mut x923, x921, x913, x910); + let mut x924: u32 = 0; + let mut x925: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x924, &mut x925, x923, x911, x908); + let mut x926: u32 = 0; + let mut x927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x926, &mut x927, x925, x909, x906); + let mut x928: u32 = 0; + let mut x929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x928, &mut x929, x927, x907, x904); + let mut x930: u32 = 0; + let mut x931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x930, &mut x931, x929, x905, x902); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x932, &mut x933, x931, x903, x900); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x934, &mut x935, x933, x901, x898); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x936, &mut x937, x935, x899, x896); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x938, &mut x939, x937, x897, x894); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x940, &mut x941, x939, x895, x892); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x942, &mut x943, x941, x893, x890); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x944, &mut x945, x943, x891, x888); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x946, &mut x947, x945, x889, x886); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x948, &mut x949, 0x0, x854, x916); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x950, &mut x951, x949, x856, x918); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x952, &mut x953, x951, x858, x920); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x954, &mut x955, x953, x860, x922); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x956, &mut x957, x955, x862, x924); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x958, &mut x959, x957, x864, x926); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x960, &mut x961, x959, x866, x928); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x962, &mut x963, x961, x868, x930); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x964, &mut x965, x963, x870, x932); + let mut x966: u32 = 0; + let mut x967: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x966, &mut x967, x965, x872, x934); + let mut x968: u32 = 0; + let mut x969: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x968, &mut x969, x967, x874, x936); + let mut x970: u32 = 0; + let mut x971: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x970, &mut x971, x969, x876, x938); + let mut x972: u32 = 0; + let mut x973: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x972, &mut x973, x971, x878, x940); + let mut x974: u32 = 0; + let mut x975: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x974, &mut x975, x973, x880, x942); + let mut x976: u32 = 0; + let mut x977: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x976, &mut x977, x975, x882, x944); + let mut x978: u32 = 0; + let mut x979: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x978, + &mut x979, + x977, + ((x883 as u32) + ((x853 as u32) + ((x821 as u32) + x761))), + x946, + ); + let mut x980: u32 = 0; + let mut x981: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x980, &mut x981, 0x0, x950, (arg1[8])); + let mut x982: u32 = 0; + let mut x983: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x982, &mut x983, x981, x952, (0x0 as u32)); + let mut x984: u32 = 0; + let mut x985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x984, &mut x985, x983, x954, (0x0 as u32)); + let mut x986: u32 = 0; + let mut x987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x986, &mut x987, x985, x956, (0x0 as u32)); + let mut x988: u32 = 0; + let mut x989: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x988, &mut x989, x987, x958, (0x0 as u32)); + let mut x990: u32 = 0; + let mut x991: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x990, &mut x991, x989, x960, (0x0 as u32)); + let mut x992: u32 = 0; + let mut x993: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x992, &mut x993, x991, x962, (0x0 as u32)); + let mut x994: u32 = 0; + let mut x995: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x994, &mut x995, x993, x964, (0x0 as u32)); + let mut x996: u32 = 0; + let mut x997: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x996, &mut x997, x995, x966, (0x0 as u32)); + let mut x998: u32 = 0; + let mut x999: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x998, &mut x999, x997, x968, (0x0 as u32)); + let mut x1000: u32 = 0; + let mut x1001: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1000, &mut x1001, x999, x970, (0x0 as u32)); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1002, &mut x1003, x1001, x972, (0x0 as u32)); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1004, &mut x1005, x1003, x974, (0x0 as u32)); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1006, &mut x1007, x1005, x976, (0x0 as u32)); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1008, &mut x1009, x1007, x978, (0x0 as u32)); + let mut x1010: u32 = 0; + let mut x1011: u32 = 0; + fiat_bp512_mulx_u32(&mut x1010, &mut x1011, x980, 0x7d89efc5); + let mut x1012: u32 = 0; + let mut x1013: u32 = 0; + fiat_bp512_mulx_u32(&mut x1012, &mut x1013, x1010, 0xaadd9db8); + let mut x1014: u32 = 0; + let mut x1015: u32 = 0; + fiat_bp512_mulx_u32(&mut x1014, &mut x1015, x1010, 0xdbe9c48b); + let mut x1016: u32 = 0; + let mut x1017: u32 = 0; + fiat_bp512_mulx_u32(&mut x1016, &mut x1017, x1010, 0x3fd4e6ae); + let mut x1018: u32 = 0; + let mut x1019: u32 = 0; + fiat_bp512_mulx_u32(&mut x1018, &mut x1019, x1010, 0x33c9fc07); + let mut x1020: u32 = 0; + let mut x1021: u32 = 0; + fiat_bp512_mulx_u32(&mut x1020, &mut x1021, x1010, 0xcb308db3); + let mut x1022: u32 = 0; + let mut x1023: u32 = 0; + fiat_bp512_mulx_u32(&mut x1022, &mut x1023, x1010, 0xb3c9d20e); + let mut x1024: u32 = 0; + let mut x1025: u32 = 0; + fiat_bp512_mulx_u32(&mut x1024, &mut x1025, x1010, 0xd6639cca); + let mut x1026: u32 = 0; + let mut x1027: u32 = 0; + fiat_bp512_mulx_u32(&mut x1026, &mut x1027, x1010, 0x70330871); + let mut x1028: u32 = 0; + let mut x1029: u32 = 0; + fiat_bp512_mulx_u32(&mut x1028, &mut x1029, x1010, 0x7d4d9b00); + let mut x1030: u32 = 0; + let mut x1031: u32 = 0; + fiat_bp512_mulx_u32(&mut x1030, &mut x1031, x1010, 0x9bc66842); + let mut x1032: u32 = 0; + let mut x1033: u32 = 0; + fiat_bp512_mulx_u32(&mut x1032, &mut x1033, x1010, 0xaecda12a); + let mut x1034: u32 = 0; + let mut x1035: u32 = 0; + fiat_bp512_mulx_u32(&mut x1034, &mut x1035, x1010, 0xe6a380e6); + let mut x1036: u32 = 0; + let mut x1037: u32 = 0; + fiat_bp512_mulx_u32(&mut x1036, &mut x1037, x1010, 0x2881ff2f); + let mut x1038: u32 = 0; + let mut x1039: u32 = 0; + fiat_bp512_mulx_u32(&mut x1038, &mut x1039, x1010, 0x2d82c685); + let mut x1040: u32 = 0; + let mut x1041: u32 = 0; + fiat_bp512_mulx_u32(&mut x1040, &mut x1041, x1010, 0x28aa6056); + let mut x1042: u32 = 0; + let mut x1043: u32 = 0; + fiat_bp512_mulx_u32(&mut x1042, &mut x1043, x1010, 0x583a48f3); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1044, &mut x1045, 0x0, x1043, x1040); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1046, &mut x1047, x1045, x1041, x1038); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1048, &mut x1049, x1047, x1039, x1036); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1050, &mut x1051, x1049, x1037, x1034); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1052, &mut x1053, x1051, x1035, x1032); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1054, &mut x1055, x1053, x1033, x1030); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1056, &mut x1057, x1055, x1031, x1028); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1058, &mut x1059, x1057, x1029, x1026); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1060, &mut x1061, x1059, x1027, x1024); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1062, &mut x1063, x1061, x1025, x1022); + let mut x1064: u32 = 0; + let mut x1065: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1023, x1020); + let mut x1066: u32 = 0; + let mut x1067: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1021, x1018); + let mut x1068: u32 = 0; + let mut x1069: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1019, x1016); + let mut x1070: u32 = 0; + let mut x1071: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1017, x1014); + let mut x1072: u32 = 0; + let mut x1073: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1015, x1012); + let mut x1074: u32 = 0; + let mut x1075: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1074, &mut x1075, 0x0, x980, x1042); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1076, &mut x1077, x1075, x982, x1044); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1078, &mut x1079, x1077, x984, x1046); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1080, &mut x1081, x1079, x986, x1048); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1082, &mut x1083, x1081, x988, x1050); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1084, &mut x1085, x1083, x990, x1052); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1086, &mut x1087, x1085, x992, x1054); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1088, &mut x1089, x1087, x994, x1056); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1090, &mut x1091, x1089, x996, x1058); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1092, &mut x1093, x1091, x998, x1060); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1000, x1062); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1002, x1064); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1004, x1066); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1006, x1068); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1008, x1070); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1104, + &mut x1105, + x1103, + ((x1009 as u32) + ((x979 as u32) + ((x947 as u32) + x887))), + x1072, + ); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1106, &mut x1107, 0x0, x1076, (arg1[9])); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1078, (0x0 as u32)); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1080, (0x0 as u32)); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1082, (0x0 as u32)); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1084, (0x0 as u32)); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1086, (0x0 as u32)); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1088, (0x0 as u32)); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1090, (0x0 as u32)); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1092, (0x0 as u32)); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1094, (0x0 as u32)); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1096, (0x0 as u32)); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1128, &mut x1129, x1127, x1098, (0x0 as u32)); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1100, (0x0 as u32)); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1102, (0x0 as u32)); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1104, (0x0 as u32)); + let mut x1136: u32 = 0; + let mut x1137: u32 = 0; + fiat_bp512_mulx_u32(&mut x1136, &mut x1137, x1106, 0x7d89efc5); + let mut x1138: u32 = 0; + let mut x1139: u32 = 0; + fiat_bp512_mulx_u32(&mut x1138, &mut x1139, x1136, 0xaadd9db8); + let mut x1140: u32 = 0; + let mut x1141: u32 = 0; + fiat_bp512_mulx_u32(&mut x1140, &mut x1141, x1136, 0xdbe9c48b); + let mut x1142: u32 = 0; + let mut x1143: u32 = 0; + fiat_bp512_mulx_u32(&mut x1142, &mut x1143, x1136, 0x3fd4e6ae); + let mut x1144: u32 = 0; + let mut x1145: u32 = 0; + fiat_bp512_mulx_u32(&mut x1144, &mut x1145, x1136, 0x33c9fc07); + let mut x1146: u32 = 0; + let mut x1147: u32 = 0; + fiat_bp512_mulx_u32(&mut x1146, &mut x1147, x1136, 0xcb308db3); + let mut x1148: u32 = 0; + let mut x1149: u32 = 0; + fiat_bp512_mulx_u32(&mut x1148, &mut x1149, x1136, 0xb3c9d20e); + let mut x1150: u32 = 0; + let mut x1151: u32 = 0; + fiat_bp512_mulx_u32(&mut x1150, &mut x1151, x1136, 0xd6639cca); + let mut x1152: u32 = 0; + let mut x1153: u32 = 0; + fiat_bp512_mulx_u32(&mut x1152, &mut x1153, x1136, 0x70330871); + let mut x1154: u32 = 0; + let mut x1155: u32 = 0; + fiat_bp512_mulx_u32(&mut x1154, &mut x1155, x1136, 0x7d4d9b00); + let mut x1156: u32 = 0; + let mut x1157: u32 = 0; + fiat_bp512_mulx_u32(&mut x1156, &mut x1157, x1136, 0x9bc66842); + let mut x1158: u32 = 0; + let mut x1159: u32 = 0; + fiat_bp512_mulx_u32(&mut x1158, &mut x1159, x1136, 0xaecda12a); + let mut x1160: u32 = 0; + let mut x1161: u32 = 0; + fiat_bp512_mulx_u32(&mut x1160, &mut x1161, x1136, 0xe6a380e6); + let mut x1162: u32 = 0; + let mut x1163: u32 = 0; + fiat_bp512_mulx_u32(&mut x1162, &mut x1163, x1136, 0x2881ff2f); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_mulx_u32(&mut x1164, &mut x1165, x1136, 0x2d82c685); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_mulx_u32(&mut x1166, &mut x1167, x1136, 0x28aa6056); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_mulx_u32(&mut x1168, &mut x1169, x1136, 0x583a48f3); + let mut x1170: u32 = 0; + let mut x1171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1170, &mut x1171, 0x0, x1169, x1166); + let mut x1172: u32 = 0; + let mut x1173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1172, &mut x1173, x1171, x1167, x1164); + let mut x1174: u32 = 0; + let mut x1175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1174, &mut x1175, x1173, x1165, x1162); + let mut x1176: u32 = 0; + let mut x1177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1176, &mut x1177, x1175, x1163, x1160); + let mut x1178: u32 = 0; + let mut x1179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1178, &mut x1179, x1177, x1161, x1158); + let mut x1180: u32 = 0; + let mut x1181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1180, &mut x1181, x1179, x1159, x1156); + let mut x1182: u32 = 0; + let mut x1183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1182, &mut x1183, x1181, x1157, x1154); + let mut x1184: u32 = 0; + let mut x1185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1184, &mut x1185, x1183, x1155, x1152); + let mut x1186: u32 = 0; + let mut x1187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1186, &mut x1187, x1185, x1153, x1150); + let mut x1188: u32 = 0; + let mut x1189: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1188, &mut x1189, x1187, x1151, x1148); + let mut x1190: u32 = 0; + let mut x1191: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1190, &mut x1191, x1189, x1149, x1146); + let mut x1192: u32 = 0; + let mut x1193: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1192, &mut x1193, x1191, x1147, x1144); + let mut x1194: u32 = 0; + let mut x1195: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1194, &mut x1195, x1193, x1145, x1142); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1196, &mut x1197, x1195, x1143, x1140); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1141, x1138); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1200, &mut x1201, 0x0, x1106, x1168); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1108, x1170); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1110, x1172); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1112, x1174); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1114, x1176); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1116, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1118, x1180); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1120, x1182); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1122, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1124, x1186); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1126, x1188); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1128, x1190); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1130, x1192); + let mut x1226: u32 = 0; + let mut x1227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1226, &mut x1227, x1225, x1132, x1194); + let mut x1228: u32 = 0; + let mut x1229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1228, &mut x1229, x1227, x1134, x1196); + let mut x1230: u32 = 0; + let mut x1231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1230, + &mut x1231, + x1229, + ((x1135 as u32) + ((x1105 as u32) + ((x1073 as u32) + x1013))), + x1198, + ); + let mut x1232: u32 = 0; + let mut x1233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1232, &mut x1233, 0x0, x1202, (arg1[10])); + let mut x1234: u32 = 0; + let mut x1235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1234, &mut x1235, x1233, x1204, (0x0 as u32)); + let mut x1236: u32 = 0; + let mut x1237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1236, &mut x1237, x1235, x1206, (0x0 as u32)); + let mut x1238: u32 = 0; + let mut x1239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1238, &mut x1239, x1237, x1208, (0x0 as u32)); + let mut x1240: u32 = 0; + let mut x1241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1240, &mut x1241, x1239, x1210, (0x0 as u32)); + let mut x1242: u32 = 0; + let mut x1243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1242, &mut x1243, x1241, x1212, (0x0 as u32)); + let mut x1244: u32 = 0; + let mut x1245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1244, &mut x1245, x1243, x1214, (0x0 as u32)); + let mut x1246: u32 = 0; + let mut x1247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1246, &mut x1247, x1245, x1216, (0x0 as u32)); + let mut x1248: u32 = 0; + let mut x1249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1248, &mut x1249, x1247, x1218, (0x0 as u32)); + let mut x1250: u32 = 0; + let mut x1251: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1250, &mut x1251, x1249, x1220, (0x0 as u32)); + let mut x1252: u32 = 0; + let mut x1253: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1252, &mut x1253, x1251, x1222, (0x0 as u32)); + let mut x1254: u32 = 0; + let mut x1255: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1254, &mut x1255, x1253, x1224, (0x0 as u32)); + let mut x1256: u32 = 0; + let mut x1257: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1256, &mut x1257, x1255, x1226, (0x0 as u32)); + let mut x1258: u32 = 0; + let mut x1259: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1258, &mut x1259, x1257, x1228, (0x0 as u32)); + let mut x1260: u32 = 0; + let mut x1261: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1260, &mut x1261, x1259, x1230, (0x0 as u32)); + let mut x1262: u32 = 0; + let mut x1263: u32 = 0; + fiat_bp512_mulx_u32(&mut x1262, &mut x1263, x1232, 0x7d89efc5); + let mut x1264: u32 = 0; + let mut x1265: u32 = 0; + fiat_bp512_mulx_u32(&mut x1264, &mut x1265, x1262, 0xaadd9db8); + let mut x1266: u32 = 0; + let mut x1267: u32 = 0; + fiat_bp512_mulx_u32(&mut x1266, &mut x1267, x1262, 0xdbe9c48b); + let mut x1268: u32 = 0; + let mut x1269: u32 = 0; + fiat_bp512_mulx_u32(&mut x1268, &mut x1269, x1262, 0x3fd4e6ae); + let mut x1270: u32 = 0; + let mut x1271: u32 = 0; + fiat_bp512_mulx_u32(&mut x1270, &mut x1271, x1262, 0x33c9fc07); + let mut x1272: u32 = 0; + let mut x1273: u32 = 0; + fiat_bp512_mulx_u32(&mut x1272, &mut x1273, x1262, 0xcb308db3); + let mut x1274: u32 = 0; + let mut x1275: u32 = 0; + fiat_bp512_mulx_u32(&mut x1274, &mut x1275, x1262, 0xb3c9d20e); + let mut x1276: u32 = 0; + let mut x1277: u32 = 0; + fiat_bp512_mulx_u32(&mut x1276, &mut x1277, x1262, 0xd6639cca); + let mut x1278: u32 = 0; + let mut x1279: u32 = 0; + fiat_bp512_mulx_u32(&mut x1278, &mut x1279, x1262, 0x70330871); + let mut x1280: u32 = 0; + let mut x1281: u32 = 0; + fiat_bp512_mulx_u32(&mut x1280, &mut x1281, x1262, 0x7d4d9b00); + let mut x1282: u32 = 0; + let mut x1283: u32 = 0; + fiat_bp512_mulx_u32(&mut x1282, &mut x1283, x1262, 0x9bc66842); + let mut x1284: u32 = 0; + let mut x1285: u32 = 0; + fiat_bp512_mulx_u32(&mut x1284, &mut x1285, x1262, 0xaecda12a); + let mut x1286: u32 = 0; + let mut x1287: u32 = 0; + fiat_bp512_mulx_u32(&mut x1286, &mut x1287, x1262, 0xe6a380e6); + let mut x1288: u32 = 0; + let mut x1289: u32 = 0; + fiat_bp512_mulx_u32(&mut x1288, &mut x1289, x1262, 0x2881ff2f); + let mut x1290: u32 = 0; + let mut x1291: u32 = 0; + fiat_bp512_mulx_u32(&mut x1290, &mut x1291, x1262, 0x2d82c685); + let mut x1292: u32 = 0; + let mut x1293: u32 = 0; + fiat_bp512_mulx_u32(&mut x1292, &mut x1293, x1262, 0x28aa6056); + let mut x1294: u32 = 0; + let mut x1295: u32 = 0; + fiat_bp512_mulx_u32(&mut x1294, &mut x1295, x1262, 0x583a48f3); + let mut x1296: u32 = 0; + let mut x1297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1296, &mut x1297, 0x0, x1295, x1292); + let mut x1298: u32 = 0; + let mut x1299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1298, &mut x1299, x1297, x1293, x1290); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1300, &mut x1301, x1299, x1291, x1288); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1289, x1286); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1287, x1284); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1285, x1282); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1283, x1280); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1281, x1278); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1279, x1276); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1277, x1274); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1275, x1272); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1273, x1270); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1271, x1268); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1269, x1266); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1267, x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1232, x1294); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1234, x1296); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1236, x1298); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1238, x1300); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1240, x1302); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1242, x1304); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1244, x1306); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1246, x1308); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1248, x1310); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1250, x1312); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1252, x1314); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1254, x1316); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1256, x1318); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1258, x1320); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1260, x1322); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1356, + &mut x1357, + x1355, + ((x1261 as u32) + ((x1231 as u32) + ((x1199 as u32) + x1139))), + x1324, + ); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1358, &mut x1359, 0x0, x1328, (arg1[11])); + let mut x1360: u32 = 0; + let mut x1361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1360, &mut x1361, x1359, x1330, (0x0 as u32)); + let mut x1362: u32 = 0; + let mut x1363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1362, &mut x1363, x1361, x1332, (0x0 as u32)); + let mut x1364: u32 = 0; + let mut x1365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1364, &mut x1365, x1363, x1334, (0x0 as u32)); + let mut x1366: u32 = 0; + let mut x1367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1366, &mut x1367, x1365, x1336, (0x0 as u32)); + let mut x1368: u32 = 0; + let mut x1369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1368, &mut x1369, x1367, x1338, (0x0 as u32)); + let mut x1370: u32 = 0; + let mut x1371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1370, &mut x1371, x1369, x1340, (0x0 as u32)); + let mut x1372: u32 = 0; + let mut x1373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1372, &mut x1373, x1371, x1342, (0x0 as u32)); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1374, &mut x1375, x1373, x1344, (0x0 as u32)); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1346, (0x0 as u32)); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1348, (0x0 as u32)); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1350, (0x0 as u32)); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1352, (0x0 as u32)); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1354, (0x0 as u32)); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1356, (0x0 as u32)); + let mut x1388: u32 = 0; + let mut x1389: u32 = 0; + fiat_bp512_mulx_u32(&mut x1388, &mut x1389, x1358, 0x7d89efc5); + let mut x1390: u32 = 0; + let mut x1391: u32 = 0; + fiat_bp512_mulx_u32(&mut x1390, &mut x1391, x1388, 0xaadd9db8); + let mut x1392: u32 = 0; + let mut x1393: u32 = 0; + fiat_bp512_mulx_u32(&mut x1392, &mut x1393, x1388, 0xdbe9c48b); + let mut x1394: u32 = 0; + let mut x1395: u32 = 0; + fiat_bp512_mulx_u32(&mut x1394, &mut x1395, x1388, 0x3fd4e6ae); + let mut x1396: u32 = 0; + let mut x1397: u32 = 0; + fiat_bp512_mulx_u32(&mut x1396, &mut x1397, x1388, 0x33c9fc07); + let mut x1398: u32 = 0; + let mut x1399: u32 = 0; + fiat_bp512_mulx_u32(&mut x1398, &mut x1399, x1388, 0xcb308db3); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp512_mulx_u32(&mut x1400, &mut x1401, x1388, 0xb3c9d20e); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp512_mulx_u32(&mut x1402, &mut x1403, x1388, 0xd6639cca); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp512_mulx_u32(&mut x1404, &mut x1405, x1388, 0x70330871); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp512_mulx_u32(&mut x1406, &mut x1407, x1388, 0x7d4d9b00); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp512_mulx_u32(&mut x1408, &mut x1409, x1388, 0x9bc66842); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp512_mulx_u32(&mut x1410, &mut x1411, x1388, 0xaecda12a); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp512_mulx_u32(&mut x1412, &mut x1413, x1388, 0xe6a380e6); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp512_mulx_u32(&mut x1414, &mut x1415, x1388, 0x2881ff2f); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp512_mulx_u32(&mut x1416, &mut x1417, x1388, 0x2d82c685); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp512_mulx_u32(&mut x1418, &mut x1419, x1388, 0x28aa6056); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp512_mulx_u32(&mut x1420, &mut x1421, x1388, 0x583a48f3); + let mut x1422: u32 = 0; + let mut x1423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1422, &mut x1423, 0x0, x1421, x1418); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1424, &mut x1425, x1423, x1419, x1416); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1417, x1414); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1415, x1412); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1413, x1410); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1411, x1408); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1409, x1406); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1407, x1404); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1405, x1402); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1403, x1400); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1401, x1398); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1399, x1396); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1397, x1394); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1395, x1392); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1393, x1390); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1452, &mut x1453, 0x0, x1358, x1420); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1360, x1422); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1362, x1424); + let mut x1458: u32 = 0; + let mut x1459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1458, &mut x1459, x1457, x1364, x1426); + let mut x1460: u32 = 0; + let mut x1461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1460, &mut x1461, x1459, x1366, x1428); + let mut x1462: u32 = 0; + let mut x1463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1462, &mut x1463, x1461, x1368, x1430); + let mut x1464: u32 = 0; + let mut x1465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1464, &mut x1465, x1463, x1370, x1432); + let mut x1466: u32 = 0; + let mut x1467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1466, &mut x1467, x1465, x1372, x1434); + let mut x1468: u32 = 0; + let mut x1469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1468, &mut x1469, x1467, x1374, x1436); + let mut x1470: u32 = 0; + let mut x1471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1470, &mut x1471, x1469, x1376, x1438); + let mut x1472: u32 = 0; + let mut x1473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1472, &mut x1473, x1471, x1378, x1440); + let mut x1474: u32 = 0; + let mut x1475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1474, &mut x1475, x1473, x1380, x1442); + let mut x1476: u32 = 0; + let mut x1477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1476, &mut x1477, x1475, x1382, x1444); + let mut x1478: u32 = 0; + let mut x1479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1478, &mut x1479, x1477, x1384, x1446); + let mut x1480: u32 = 0; + let mut x1481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1480, &mut x1481, x1479, x1386, x1448); + let mut x1482: u32 = 0; + let mut x1483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1482, + &mut x1483, + x1481, + ((x1387 as u32) + ((x1357 as u32) + ((x1325 as u32) + x1265))), + x1450, + ); + let mut x1484: u32 = 0; + let mut x1485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1484, &mut x1485, 0x0, x1454, (arg1[12])); + let mut x1486: u32 = 0; + let mut x1487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1486, &mut x1487, x1485, x1456, (0x0 as u32)); + let mut x1488: u32 = 0; + let mut x1489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1488, &mut x1489, x1487, x1458, (0x0 as u32)); + let mut x1490: u32 = 0; + let mut x1491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1490, &mut x1491, x1489, x1460, (0x0 as u32)); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1492, &mut x1493, x1491, x1462, (0x0 as u32)); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1464, (0x0 as u32)); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1466, (0x0 as u32)); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1468, (0x0 as u32)); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1470, (0x0 as u32)); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1472, (0x0 as u32)); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1474, (0x0 as u32)); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1476, (0x0 as u32)); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1478, (0x0 as u32)); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1480, (0x0 as u32)); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1482, (0x0 as u32)); + let mut x1514: u32 = 0; + let mut x1515: u32 = 0; + fiat_bp512_mulx_u32(&mut x1514, &mut x1515, x1484, 0x7d89efc5); + let mut x1516: u32 = 0; + let mut x1517: u32 = 0; + fiat_bp512_mulx_u32(&mut x1516, &mut x1517, x1514, 0xaadd9db8); + let mut x1518: u32 = 0; + let mut x1519: u32 = 0; + fiat_bp512_mulx_u32(&mut x1518, &mut x1519, x1514, 0xdbe9c48b); + let mut x1520: u32 = 0; + let mut x1521: u32 = 0; + fiat_bp512_mulx_u32(&mut x1520, &mut x1521, x1514, 0x3fd4e6ae); + let mut x1522: u32 = 0; + let mut x1523: u32 = 0; + fiat_bp512_mulx_u32(&mut x1522, &mut x1523, x1514, 0x33c9fc07); + let mut x1524: u32 = 0; + let mut x1525: u32 = 0; + fiat_bp512_mulx_u32(&mut x1524, &mut x1525, x1514, 0xcb308db3); + let mut x1526: u32 = 0; + let mut x1527: u32 = 0; + fiat_bp512_mulx_u32(&mut x1526, &mut x1527, x1514, 0xb3c9d20e); + let mut x1528: u32 = 0; + let mut x1529: u32 = 0; + fiat_bp512_mulx_u32(&mut x1528, &mut x1529, x1514, 0xd6639cca); + let mut x1530: u32 = 0; + let mut x1531: u32 = 0; + fiat_bp512_mulx_u32(&mut x1530, &mut x1531, x1514, 0x70330871); + let mut x1532: u32 = 0; + let mut x1533: u32 = 0; + fiat_bp512_mulx_u32(&mut x1532, &mut x1533, x1514, 0x7d4d9b00); + let mut x1534: u32 = 0; + let mut x1535: u32 = 0; + fiat_bp512_mulx_u32(&mut x1534, &mut x1535, x1514, 0x9bc66842); + let mut x1536: u32 = 0; + let mut x1537: u32 = 0; + fiat_bp512_mulx_u32(&mut x1536, &mut x1537, x1514, 0xaecda12a); + let mut x1538: u32 = 0; + let mut x1539: u32 = 0; + fiat_bp512_mulx_u32(&mut x1538, &mut x1539, x1514, 0xe6a380e6); + let mut x1540: u32 = 0; + let mut x1541: u32 = 0; + fiat_bp512_mulx_u32(&mut x1540, &mut x1541, x1514, 0x2881ff2f); + let mut x1542: u32 = 0; + let mut x1543: u32 = 0; + fiat_bp512_mulx_u32(&mut x1542, &mut x1543, x1514, 0x2d82c685); + let mut x1544: u32 = 0; + let mut x1545: u32 = 0; + fiat_bp512_mulx_u32(&mut x1544, &mut x1545, x1514, 0x28aa6056); + let mut x1546: u32 = 0; + let mut x1547: u32 = 0; + fiat_bp512_mulx_u32(&mut x1546, &mut x1547, x1514, 0x583a48f3); + let mut x1548: u32 = 0; + let mut x1549: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1548, &mut x1549, 0x0, x1547, x1544); + let mut x1550: u32 = 0; + let mut x1551: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1550, &mut x1551, x1549, x1545, x1542); + let mut x1552: u32 = 0; + let mut x1553: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1552, &mut x1553, x1551, x1543, x1540); + let mut x1554: u32 = 0; + let mut x1555: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1554, &mut x1555, x1553, x1541, x1538); + let mut x1556: u32 = 0; + let mut x1557: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1556, &mut x1557, x1555, x1539, x1536); + let mut x1558: u32 = 0; + let mut x1559: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1558, &mut x1559, x1557, x1537, x1534); + let mut x1560: u32 = 0; + let mut x1561: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1560, &mut x1561, x1559, x1535, x1532); + let mut x1562: u32 = 0; + let mut x1563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1562, &mut x1563, x1561, x1533, x1530); + let mut x1564: u32 = 0; + let mut x1565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1564, &mut x1565, x1563, x1531, x1528); + let mut x1566: u32 = 0; + let mut x1567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1566, &mut x1567, x1565, x1529, x1526); + let mut x1568: u32 = 0; + let mut x1569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1568, &mut x1569, x1567, x1527, x1524); + let mut x1570: u32 = 0; + let mut x1571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1570, &mut x1571, x1569, x1525, x1522); + let mut x1572: u32 = 0; + let mut x1573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1572, &mut x1573, x1571, x1523, x1520); + let mut x1574: u32 = 0; + let mut x1575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1574, &mut x1575, x1573, x1521, x1518); + let mut x1576: u32 = 0; + let mut x1577: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1576, &mut x1577, x1575, x1519, x1516); + let mut x1578: u32 = 0; + let mut x1579: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1578, &mut x1579, 0x0, x1484, x1546); + let mut x1580: u32 = 0; + let mut x1581: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1580, &mut x1581, x1579, x1486, x1548); + let mut x1582: u32 = 0; + let mut x1583: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1582, &mut x1583, x1581, x1488, x1550); + let mut x1584: u32 = 0; + let mut x1585: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1584, &mut x1585, x1583, x1490, x1552); + let mut x1586: u32 = 0; + let mut x1587: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1586, &mut x1587, x1585, x1492, x1554); + let mut x1588: u32 = 0; + let mut x1589: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1588, &mut x1589, x1587, x1494, x1556); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1590, &mut x1591, x1589, x1496, x1558); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1498, x1560); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1500, x1562); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1502, x1564); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1504, x1566); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1506, x1568); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1508, x1570); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1510, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1512, x1574); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1608, + &mut x1609, + x1607, + ((x1513 as u32) + ((x1483 as u32) + ((x1451 as u32) + x1391))), + x1576, + ); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1610, &mut x1611, 0x0, x1580, (arg1[13])); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1582, (0x0 as u32)); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1584, (0x0 as u32)); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1586, (0x0 as u32)); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1588, (0x0 as u32)); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1590, (0x0 as u32)); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1592, (0x0 as u32)); + let mut x1624: u32 = 0; + let mut x1625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1624, &mut x1625, x1623, x1594, (0x0 as u32)); + let mut x1626: u32 = 0; + let mut x1627: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1626, &mut x1627, x1625, x1596, (0x0 as u32)); + let mut x1628: u32 = 0; + let mut x1629: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1628, &mut x1629, x1627, x1598, (0x0 as u32)); + let mut x1630: u32 = 0; + let mut x1631: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1630, &mut x1631, x1629, x1600, (0x0 as u32)); + let mut x1632: u32 = 0; + let mut x1633: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1632, &mut x1633, x1631, x1602, (0x0 as u32)); + let mut x1634: u32 = 0; + let mut x1635: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1634, &mut x1635, x1633, x1604, (0x0 as u32)); + let mut x1636: u32 = 0; + let mut x1637: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1636, &mut x1637, x1635, x1606, (0x0 as u32)); + let mut x1638: u32 = 0; + let mut x1639: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1638, &mut x1639, x1637, x1608, (0x0 as u32)); + let mut x1640: u32 = 0; + let mut x1641: u32 = 0; + fiat_bp512_mulx_u32(&mut x1640, &mut x1641, x1610, 0x7d89efc5); + let mut x1642: u32 = 0; + let mut x1643: u32 = 0; + fiat_bp512_mulx_u32(&mut x1642, &mut x1643, x1640, 0xaadd9db8); + let mut x1644: u32 = 0; + let mut x1645: u32 = 0; + fiat_bp512_mulx_u32(&mut x1644, &mut x1645, x1640, 0xdbe9c48b); + let mut x1646: u32 = 0; + let mut x1647: u32 = 0; + fiat_bp512_mulx_u32(&mut x1646, &mut x1647, x1640, 0x3fd4e6ae); + let mut x1648: u32 = 0; + let mut x1649: u32 = 0; + fiat_bp512_mulx_u32(&mut x1648, &mut x1649, x1640, 0x33c9fc07); + let mut x1650: u32 = 0; + let mut x1651: u32 = 0; + fiat_bp512_mulx_u32(&mut x1650, &mut x1651, x1640, 0xcb308db3); + let mut x1652: u32 = 0; + let mut x1653: u32 = 0; + fiat_bp512_mulx_u32(&mut x1652, &mut x1653, x1640, 0xb3c9d20e); + let mut x1654: u32 = 0; + let mut x1655: u32 = 0; + fiat_bp512_mulx_u32(&mut x1654, &mut x1655, x1640, 0xd6639cca); + let mut x1656: u32 = 0; + let mut x1657: u32 = 0; + fiat_bp512_mulx_u32(&mut x1656, &mut x1657, x1640, 0x70330871); + let mut x1658: u32 = 0; + let mut x1659: u32 = 0; + fiat_bp512_mulx_u32(&mut x1658, &mut x1659, x1640, 0x7d4d9b00); + let mut x1660: u32 = 0; + let mut x1661: u32 = 0; + fiat_bp512_mulx_u32(&mut x1660, &mut x1661, x1640, 0x9bc66842); + let mut x1662: u32 = 0; + let mut x1663: u32 = 0; + fiat_bp512_mulx_u32(&mut x1662, &mut x1663, x1640, 0xaecda12a); + let mut x1664: u32 = 0; + let mut x1665: u32 = 0; + fiat_bp512_mulx_u32(&mut x1664, &mut x1665, x1640, 0xe6a380e6); + let mut x1666: u32 = 0; + let mut x1667: u32 = 0; + fiat_bp512_mulx_u32(&mut x1666, &mut x1667, x1640, 0x2881ff2f); + let mut x1668: u32 = 0; + let mut x1669: u32 = 0; + fiat_bp512_mulx_u32(&mut x1668, &mut x1669, x1640, 0x2d82c685); + let mut x1670: u32 = 0; + let mut x1671: u32 = 0; + fiat_bp512_mulx_u32(&mut x1670, &mut x1671, x1640, 0x28aa6056); + let mut x1672: u32 = 0; + let mut x1673: u32 = 0; + fiat_bp512_mulx_u32(&mut x1672, &mut x1673, x1640, 0x583a48f3); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1674, &mut x1675, 0x0, x1673, x1670); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1671, x1668); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1669, x1666); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1667, x1664); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1665, x1662); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1663, x1660); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1661, x1658); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1659, x1656); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1657, x1654); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1655, x1652); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1653, x1650); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1651, x1648); + let mut x1698: u32 = 0; + let mut x1699: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1698, &mut x1699, x1697, x1649, x1646); + let mut x1700: u32 = 0; + let mut x1701: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1700, &mut x1701, x1699, x1647, x1644); + let mut x1702: u32 = 0; + let mut x1703: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1702, &mut x1703, x1701, x1645, x1642); + let mut x1704: u32 = 0; + let mut x1705: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1704, &mut x1705, 0x0, x1610, x1672); + let mut x1706: u32 = 0; + let mut x1707: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1706, &mut x1707, x1705, x1612, x1674); + let mut x1708: u32 = 0; + let mut x1709: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1708, &mut x1709, x1707, x1614, x1676); + let mut x1710: u32 = 0; + let mut x1711: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1710, &mut x1711, x1709, x1616, x1678); + let mut x1712: u32 = 0; + let mut x1713: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1712, &mut x1713, x1711, x1618, x1680); + let mut x1714: u32 = 0; + let mut x1715: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1714, &mut x1715, x1713, x1620, x1682); + let mut x1716: u32 = 0; + let mut x1717: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1716, &mut x1717, x1715, x1622, x1684); + let mut x1718: u32 = 0; + let mut x1719: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1718, &mut x1719, x1717, x1624, x1686); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1720, &mut x1721, x1719, x1626, x1688); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1628, x1690); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1630, x1692); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1632, x1694); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1634, x1696); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1636, x1698); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1638, x1700); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1734, + &mut x1735, + x1733, + ((x1639 as u32) + ((x1609 as u32) + ((x1577 as u32) + x1517))), + x1702, + ); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1736, &mut x1737, 0x0, x1706, (arg1[14])); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1708, (0x0 as u32)); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1710, (0x0 as u32)); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1712, (0x0 as u32)); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1714, (0x0 as u32)); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1716, (0x0 as u32)); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1718, (0x0 as u32)); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1720, (0x0 as u32)); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1722, (0x0 as u32)); + let mut x1754: u32 = 0; + let mut x1755: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1754, &mut x1755, x1753, x1724, (0x0 as u32)); + let mut x1756: u32 = 0; + let mut x1757: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1756, &mut x1757, x1755, x1726, (0x0 as u32)); + let mut x1758: u32 = 0; + let mut x1759: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1758, &mut x1759, x1757, x1728, (0x0 as u32)); + let mut x1760: u32 = 0; + let mut x1761: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1760, &mut x1761, x1759, x1730, (0x0 as u32)); + let mut x1762: u32 = 0; + let mut x1763: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1762, &mut x1763, x1761, x1732, (0x0 as u32)); + let mut x1764: u32 = 0; + let mut x1765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1764, &mut x1765, x1763, x1734, (0x0 as u32)); + let mut x1766: u32 = 0; + let mut x1767: u32 = 0; + fiat_bp512_mulx_u32(&mut x1766, &mut x1767, x1736, 0x7d89efc5); + let mut x1768: u32 = 0; + let mut x1769: u32 = 0; + fiat_bp512_mulx_u32(&mut x1768, &mut x1769, x1766, 0xaadd9db8); + let mut x1770: u32 = 0; + let mut x1771: u32 = 0; + fiat_bp512_mulx_u32(&mut x1770, &mut x1771, x1766, 0xdbe9c48b); + let mut x1772: u32 = 0; + let mut x1773: u32 = 0; + fiat_bp512_mulx_u32(&mut x1772, &mut x1773, x1766, 0x3fd4e6ae); + let mut x1774: u32 = 0; + let mut x1775: u32 = 0; + fiat_bp512_mulx_u32(&mut x1774, &mut x1775, x1766, 0x33c9fc07); + let mut x1776: u32 = 0; + let mut x1777: u32 = 0; + fiat_bp512_mulx_u32(&mut x1776, &mut x1777, x1766, 0xcb308db3); + let mut x1778: u32 = 0; + let mut x1779: u32 = 0; + fiat_bp512_mulx_u32(&mut x1778, &mut x1779, x1766, 0xb3c9d20e); + let mut x1780: u32 = 0; + let mut x1781: u32 = 0; + fiat_bp512_mulx_u32(&mut x1780, &mut x1781, x1766, 0xd6639cca); + let mut x1782: u32 = 0; + let mut x1783: u32 = 0; + fiat_bp512_mulx_u32(&mut x1782, &mut x1783, x1766, 0x70330871); + let mut x1784: u32 = 0; + let mut x1785: u32 = 0; + fiat_bp512_mulx_u32(&mut x1784, &mut x1785, x1766, 0x7d4d9b00); + let mut x1786: u32 = 0; + let mut x1787: u32 = 0; + fiat_bp512_mulx_u32(&mut x1786, &mut x1787, x1766, 0x9bc66842); + let mut x1788: u32 = 0; + let mut x1789: u32 = 0; + fiat_bp512_mulx_u32(&mut x1788, &mut x1789, x1766, 0xaecda12a); + let mut x1790: u32 = 0; + let mut x1791: u32 = 0; + fiat_bp512_mulx_u32(&mut x1790, &mut x1791, x1766, 0xe6a380e6); + let mut x1792: u32 = 0; + let mut x1793: u32 = 0; + fiat_bp512_mulx_u32(&mut x1792, &mut x1793, x1766, 0x2881ff2f); + let mut x1794: u32 = 0; + let mut x1795: u32 = 0; + fiat_bp512_mulx_u32(&mut x1794, &mut x1795, x1766, 0x2d82c685); + let mut x1796: u32 = 0; + let mut x1797: u32 = 0; + fiat_bp512_mulx_u32(&mut x1796, &mut x1797, x1766, 0x28aa6056); + let mut x1798: u32 = 0; + let mut x1799: u32 = 0; + fiat_bp512_mulx_u32(&mut x1798, &mut x1799, x1766, 0x583a48f3); + let mut x1800: u32 = 0; + let mut x1801: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1800, &mut x1801, 0x0, x1799, x1796); + let mut x1802: u32 = 0; + let mut x1803: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1802, &mut x1803, x1801, x1797, x1794); + let mut x1804: u32 = 0; + let mut x1805: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1804, &mut x1805, x1803, x1795, x1792); + let mut x1806: u32 = 0; + let mut x1807: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1806, &mut x1807, x1805, x1793, x1790); + let mut x1808: u32 = 0; + let mut x1809: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1808, &mut x1809, x1807, x1791, x1788); + let mut x1810: u32 = 0; + let mut x1811: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1810, &mut x1811, x1809, x1789, x1786); + let mut x1812: u32 = 0; + let mut x1813: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1812, &mut x1813, x1811, x1787, x1784); + let mut x1814: u32 = 0; + let mut x1815: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1814, &mut x1815, x1813, x1785, x1782); + let mut x1816: u32 = 0; + let mut x1817: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1816, &mut x1817, x1815, x1783, x1780); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1818, &mut x1819, x1817, x1781, x1778); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1779, x1776); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1777, x1774); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1775, x1772); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1773, x1770); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1771, x1768); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1830, &mut x1831, 0x0, x1736, x1798); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1738, x1800); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1740, x1802); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1742, x1804); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1744, x1806); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1746, x1808); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1748, x1810); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1750, x1812); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1752, x1814); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1754, x1816); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1756, x1818); + let mut x1852: u32 = 0; + let mut x1853: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1852, &mut x1853, x1851, x1758, x1820); + let mut x1854: u32 = 0; + let mut x1855: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1854, &mut x1855, x1853, x1760, x1822); + let mut x1856: u32 = 0; + let mut x1857: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1856, &mut x1857, x1855, x1762, x1824); + let mut x1858: u32 = 0; + let mut x1859: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1858, &mut x1859, x1857, x1764, x1826); + let mut x1860: u32 = 0; + let mut x1861: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1860, + &mut x1861, + x1859, + ((x1765 as u32) + ((x1735 as u32) + ((x1703 as u32) + x1643))), + x1828, + ); + let mut x1862: u32 = 0; + let mut x1863: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1862, &mut x1863, 0x0, x1832, (arg1[15])); + let mut x1864: u32 = 0; + let mut x1865: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1864, &mut x1865, x1863, x1834, (0x0 as u32)); + let mut x1866: u32 = 0; + let mut x1867: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1866, &mut x1867, x1865, x1836, (0x0 as u32)); + let mut x1868: u32 = 0; + let mut x1869: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1868, &mut x1869, x1867, x1838, (0x0 as u32)); + let mut x1870: u32 = 0; + let mut x1871: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1870, &mut x1871, x1869, x1840, (0x0 as u32)); + let mut x1872: u32 = 0; + let mut x1873: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1872, &mut x1873, x1871, x1842, (0x0 as u32)); + let mut x1874: u32 = 0; + let mut x1875: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1874, &mut x1875, x1873, x1844, (0x0 as u32)); + let mut x1876: u32 = 0; + let mut x1877: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1876, &mut x1877, x1875, x1846, (0x0 as u32)); + let mut x1878: u32 = 0; + let mut x1879: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1878, &mut x1879, x1877, x1848, (0x0 as u32)); + let mut x1880: u32 = 0; + let mut x1881: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1880, &mut x1881, x1879, x1850, (0x0 as u32)); + let mut x1882: u32 = 0; + let mut x1883: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1882, &mut x1883, x1881, x1852, (0x0 as u32)); + let mut x1884: u32 = 0; + let mut x1885: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1884, &mut x1885, x1883, x1854, (0x0 as u32)); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1886, &mut x1887, x1885, x1856, (0x0 as u32)); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1858, (0x0 as u32)); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1860, (0x0 as u32)); + let mut x1892: u32 = 0; + let mut x1893: u32 = 0; + fiat_bp512_mulx_u32(&mut x1892, &mut x1893, x1862, 0x7d89efc5); + let mut x1894: u32 = 0; + let mut x1895: u32 = 0; + fiat_bp512_mulx_u32(&mut x1894, &mut x1895, x1892, 0xaadd9db8); + let mut x1896: u32 = 0; + let mut x1897: u32 = 0; + fiat_bp512_mulx_u32(&mut x1896, &mut x1897, x1892, 0xdbe9c48b); + let mut x1898: u32 = 0; + let mut x1899: u32 = 0; + fiat_bp512_mulx_u32(&mut x1898, &mut x1899, x1892, 0x3fd4e6ae); + let mut x1900: u32 = 0; + let mut x1901: u32 = 0; + fiat_bp512_mulx_u32(&mut x1900, &mut x1901, x1892, 0x33c9fc07); + let mut x1902: u32 = 0; + let mut x1903: u32 = 0; + fiat_bp512_mulx_u32(&mut x1902, &mut x1903, x1892, 0xcb308db3); + let mut x1904: u32 = 0; + let mut x1905: u32 = 0; + fiat_bp512_mulx_u32(&mut x1904, &mut x1905, x1892, 0xb3c9d20e); + let mut x1906: u32 = 0; + let mut x1907: u32 = 0; + fiat_bp512_mulx_u32(&mut x1906, &mut x1907, x1892, 0xd6639cca); + let mut x1908: u32 = 0; + let mut x1909: u32 = 0; + fiat_bp512_mulx_u32(&mut x1908, &mut x1909, x1892, 0x70330871); + let mut x1910: u32 = 0; + let mut x1911: u32 = 0; + fiat_bp512_mulx_u32(&mut x1910, &mut x1911, x1892, 0x7d4d9b00); + let mut x1912: u32 = 0; + let mut x1913: u32 = 0; + fiat_bp512_mulx_u32(&mut x1912, &mut x1913, x1892, 0x9bc66842); + let mut x1914: u32 = 0; + let mut x1915: u32 = 0; + fiat_bp512_mulx_u32(&mut x1914, &mut x1915, x1892, 0xaecda12a); + let mut x1916: u32 = 0; + let mut x1917: u32 = 0; + fiat_bp512_mulx_u32(&mut x1916, &mut x1917, x1892, 0xe6a380e6); + let mut x1918: u32 = 0; + let mut x1919: u32 = 0; + fiat_bp512_mulx_u32(&mut x1918, &mut x1919, x1892, 0x2881ff2f); + let mut x1920: u32 = 0; + let mut x1921: u32 = 0; + fiat_bp512_mulx_u32(&mut x1920, &mut x1921, x1892, 0x2d82c685); + let mut x1922: u32 = 0; + let mut x1923: u32 = 0; + fiat_bp512_mulx_u32(&mut x1922, &mut x1923, x1892, 0x28aa6056); + let mut x1924: u32 = 0; + let mut x1925: u32 = 0; + fiat_bp512_mulx_u32(&mut x1924, &mut x1925, x1892, 0x583a48f3); + let mut x1926: u32 = 0; + let mut x1927: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1926, &mut x1927, 0x0, x1925, x1922); + let mut x1928: u32 = 0; + let mut x1929: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1928, &mut x1929, x1927, x1923, x1920); + let mut x1930: u32 = 0; + let mut x1931: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1930, &mut x1931, x1929, x1921, x1918); + let mut x1932: u32 = 0; + let mut x1933: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1932, &mut x1933, x1931, x1919, x1916); + let mut x1934: u32 = 0; + let mut x1935: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1934, &mut x1935, x1933, x1917, x1914); + let mut x1936: u32 = 0; + let mut x1937: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1936, &mut x1937, x1935, x1915, x1912); + let mut x1938: u32 = 0; + let mut x1939: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1938, &mut x1939, x1937, x1913, x1910); + let mut x1940: u32 = 0; + let mut x1941: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1940, &mut x1941, x1939, x1911, x1908); + let mut x1942: u32 = 0; + let mut x1943: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1942, &mut x1943, x1941, x1909, x1906); + let mut x1944: u32 = 0; + let mut x1945: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1944, &mut x1945, x1943, x1907, x1904); + let mut x1946: u32 = 0; + let mut x1947: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1946, &mut x1947, x1945, x1905, x1902); + let mut x1948: u32 = 0; + let mut x1949: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1948, &mut x1949, x1947, x1903, x1900); + let mut x1950: u32 = 0; + let mut x1951: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1950, &mut x1951, x1949, x1901, x1898); + let mut x1952: u32 = 0; + let mut x1953: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1952, &mut x1953, x1951, x1899, x1896); + let mut x1954: u32 = 0; + let mut x1955: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1954, &mut x1955, x1953, x1897, x1894); + let mut x1956: u32 = 0; + let mut x1957: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1956, &mut x1957, 0x0, x1862, x1924); + let mut x1958: u32 = 0; + let mut x1959: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1958, &mut x1959, x1957, x1864, x1926); + let mut x1960: u32 = 0; + let mut x1961: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1960, &mut x1961, x1959, x1866, x1928); + let mut x1962: u32 = 0; + let mut x1963: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1962, &mut x1963, x1961, x1868, x1930); + let mut x1964: u32 = 0; + let mut x1965: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1964, &mut x1965, x1963, x1870, x1932); + let mut x1966: u32 = 0; + let mut x1967: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1966, &mut x1967, x1965, x1872, x1934); + let mut x1968: u32 = 0; + let mut x1969: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1968, &mut x1969, x1967, x1874, x1936); + let mut x1970: u32 = 0; + let mut x1971: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1970, &mut x1971, x1969, x1876, x1938); + let mut x1972: u32 = 0; + let mut x1973: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1972, &mut x1973, x1971, x1878, x1940); + let mut x1974: u32 = 0; + let mut x1975: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1974, &mut x1975, x1973, x1880, x1942); + let mut x1976: u32 = 0; + let mut x1977: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1976, &mut x1977, x1975, x1882, x1944); + let mut x1978: u32 = 0; + let mut x1979: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1978, &mut x1979, x1977, x1884, x1946); + let mut x1980: u32 = 0; + let mut x1981: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1980, &mut x1981, x1979, x1886, x1948); + let mut x1982: u32 = 0; + let mut x1983: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1982, &mut x1983, x1981, x1888, x1950); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1984, &mut x1985, x1983, x1890, x1952); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1986, + &mut x1987, + x1985, + ((x1891 as u32) + ((x1861 as u32) + ((x1829 as u32) + x1769))), + x1954, + ); + let x1988: u32 = ((x1987 as u32) + ((x1955 as u32) + x1895)); + let mut x1989: u32 = 0; + let mut x1990: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1989, &mut x1990, 0x0, x1958, 0x583a48f3); + let mut x1991: u32 = 0; + let mut x1992: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1991, &mut x1992, x1990, x1960, 0x28aa6056); + let mut x1993: u32 = 0; + let mut x1994: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1993, &mut x1994, x1992, x1962, 0x2d82c685); + let mut x1995: u32 = 0; + let mut x1996: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1995, &mut x1996, x1994, x1964, 0x2881ff2f); + let mut x1997: u32 = 0; + let mut x1998: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1997, &mut x1998, x1996, x1966, 0xe6a380e6); + let mut x1999: u32 = 0; + let mut x2000: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x1999, &mut x2000, x1998, x1968, 0xaecda12a); + let mut x2001: u32 = 0; + let mut x2002: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2001, &mut x2002, x2000, x1970, 0x9bc66842); + let mut x2003: u32 = 0; + let mut x2004: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2003, &mut x2004, x2002, x1972, 0x7d4d9b00); + let mut x2005: u32 = 0; + let mut x2006: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2005, &mut x2006, x2004, x1974, 0x70330871); + let mut x2007: u32 = 0; + let mut x2008: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2007, &mut x2008, x2006, x1976, 0xd6639cca); + let mut x2009: u32 = 0; + let mut x2010: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2009, &mut x2010, x2008, x1978, 0xb3c9d20e); + let mut x2011: u32 = 0; + let mut x2012: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2011, &mut x2012, x2010, x1980, 0xcb308db3); + let mut x2013: u32 = 0; + let mut x2014: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2013, &mut x2014, x2012, x1982, 0x33c9fc07); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2015, &mut x2016, x2014, x1984, 0x3fd4e6ae); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2017, &mut x2018, x2016, x1986, 0xdbe9c48b); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2019, &mut x2020, x2018, x1988, 0xaadd9db8); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x2021, &mut x2022, x2020, (0x0 as u32), (0x0 as u32)); + let mut x2023: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2023, x2022, x1989, x1958); + let mut x2024: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2024, x2022, x1991, x1960); + let mut x2025: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2025, x2022, x1993, x1962); + let mut x2026: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2026, x2022, x1995, x1964); + let mut x2027: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2027, x2022, x1997, x1966); + let mut x2028: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2028, x2022, x1999, x1968); + let mut x2029: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2029, x2022, x2001, x1970); + let mut x2030: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2030, x2022, x2003, x1972); + let mut x2031: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2031, x2022, x2005, x1974); + let mut x2032: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2032, x2022, x2007, x1976); + let mut x2033: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2033, x2022, x2009, x1978); + let mut x2034: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2034, x2022, x2011, x1980); + let mut x2035: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2035, x2022, x2013, x1982); + let mut x2036: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2036, x2022, x2015, x1984); + let mut x2037: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2037, x2022, x2017, x1986); + let mut x2038: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2038, x2022, x2019, x1988); + out1[0] = x2023; + out1[1] = x2024; + out1[2] = x2025; + out1[3] = x2026; + out1[4] = x2027; + out1[5] = x2028; + out1[6] = x2029; + out1[7] = x2030; + out1[8] = x2031; + out1[9] = x2032; + out1[10] = x2033; + out1[11] = x2034; + out1[12] = x2035; + out1[13] = x2036; + out1[14] = x2037; + out1[15] = x2038; } /// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. @@ -13227,4635 +13350,4729 @@ pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_fi /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element) { - let x1: u32 = (arg1[1]); - let x2: u32 = (arg1[2]); - let x3: u32 = (arg1[3]); - let x4: u32 = (arg1[4]); - let x5: u32 = (arg1[5]); - let x6: u32 = (arg1[6]); - let x7: u32 = (arg1[7]); - let x8: u32 = (arg1[8]); - let x9: u32 = (arg1[9]); - let x10: u32 = (arg1[10]); - let x11: u32 = (arg1[11]); - let x12: u32 = (arg1[12]); - let x13: u32 = (arg1[13]); - let x14: u32 = (arg1[14]); - let x15: u32 = (arg1[15]); - let x16: u32 = (arg1[0]); - let mut x17: u32 = 0; - let mut x18: u32 = 0; - fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, 0x3c4c9d05); - let mut x19: u32 = 0; - let mut x20: u32 = 0; - fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, 0xa9ff6450); - let mut x21: u32 = 0; - let mut x22: u32 = 0; - fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, 0x202e1940); - let mut x23: u32 = 0; - let mut x24: u32 = 0; - fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, 0x2056eecc); - let mut x25: u32 = 0; - let mut x26: u32 = 0; - fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, 0xa16daa5f); - let mut x27: u32 = 0; - let mut x28: u32 = 0; - fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, 0xd42bff83); - let mut x29: u32 = 0; - let mut x30: u32 = 0; - fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, 0x19486fd8); - let mut x31: u32 = 0; - let mut x32: u32 = 0; - fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, 0xd5898057); - let mut x33: u32 = 0; - let mut x34: u32 = 0; - fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, 0xe0c19a77); - let mut x35: u32 = 0; - let mut x36: u32 = 0; - fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, 0x83514a25); - let mut x37: u32 = 0; - let mut x38: u32 = 0; - fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, 0x53b7f9bc); - let mut x39: u32 = 0; - let mut x40: u32 = 0; - fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, 0x905affd3); - let mut x41: u32 = 0; - let mut x42: u32 = 0; - fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, 0x793fb130); - let mut x43: u32 = 0; - let mut x44: u32 = 0; - fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, 0x27157905); - let mut x45: u32 = 0; - let mut x46: u32 = 0; - fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, 0x49ad144a); - let mut x47: u32 = 0; - let mut x48: u32 = 0; - fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, 0x6158f205); - let mut x49: u32 = 0; - let mut x50: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); - let mut x51: u32 = 0; - let mut x52: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); - let mut x53: u32 = 0; - let mut x54: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); - let mut x55: u32 = 0; - let mut x56: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); - let mut x57: u32 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); - let mut x59: u32 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); - let mut x61: u32 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); - let mut x63: u32 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); - let mut x65: u32 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); - let mut x67: u32 = 0; - let mut x68: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); - let mut x69: u32 = 0; - let mut x70: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); - let mut x71: u32 = 0; - let mut x72: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); - let mut x73: u32 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); - let mut x75: u32 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); - let mut x77: u32 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); - let mut x79: u32 = 0; - let mut x80: u32 = 0; - fiat_bp512_mulx_u32(&mut x79, &mut x80, x47, 0x7d89efc5); - let mut x81: u32 = 0; - let mut x82: u32 = 0; - fiat_bp512_mulx_u32(&mut x81, &mut x82, x79, 0xaadd9db8); - let mut x83: u32 = 0; - let mut x84: u32 = 0; - fiat_bp512_mulx_u32(&mut x83, &mut x84, x79, 0xdbe9c48b); - let mut x85: u32 = 0; - let mut x86: u32 = 0; - fiat_bp512_mulx_u32(&mut x85, &mut x86, x79, 0x3fd4e6ae); - let mut x87: u32 = 0; - let mut x88: u32 = 0; - fiat_bp512_mulx_u32(&mut x87, &mut x88, x79, 0x33c9fc07); - let mut x89: u32 = 0; - let mut x90: u32 = 0; - fiat_bp512_mulx_u32(&mut x89, &mut x90, x79, 0xcb308db3); - let mut x91: u32 = 0; - let mut x92: u32 = 0; - fiat_bp512_mulx_u32(&mut x91, &mut x92, x79, 0xb3c9d20e); - let mut x93: u32 = 0; - let mut x94: u32 = 0; - fiat_bp512_mulx_u32(&mut x93, &mut x94, x79, 0xd6639cca); - let mut x95: u32 = 0; - let mut x96: u32 = 0; - fiat_bp512_mulx_u32(&mut x95, &mut x96, x79, 0x70330871); - let mut x97: u32 = 0; - let mut x98: u32 = 0; - fiat_bp512_mulx_u32(&mut x97, &mut x98, x79, 0x7d4d9b00); - let mut x99: u32 = 0; - let mut x100: u32 = 0; - fiat_bp512_mulx_u32(&mut x99, &mut x100, x79, 0x9bc66842); - let mut x101: u32 = 0; - let mut x102: u32 = 0; - fiat_bp512_mulx_u32(&mut x101, &mut x102, x79, 0xaecda12a); - let mut x103: u32 = 0; - let mut x104: u32 = 0; - fiat_bp512_mulx_u32(&mut x103, &mut x104, x79, 0xe6a380e6); - let mut x105: u32 = 0; - let mut x106: u32 = 0; - fiat_bp512_mulx_u32(&mut x105, &mut x106, x79, 0x2881ff2f); - let mut x107: u32 = 0; - let mut x108: u32 = 0; - fiat_bp512_mulx_u32(&mut x107, &mut x108, x79, 0x2d82c685); - let mut x109: u32 = 0; - let mut x110: u32 = 0; - fiat_bp512_mulx_u32(&mut x109, &mut x110, x79, 0x28aa6056); - let mut x111: u32 = 0; - let mut x112: u32 = 0; - fiat_bp512_mulx_u32(&mut x111, &mut x112, x79, 0x583a48f3); - let mut x113: u32 = 0; - let mut x114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x113, &mut x114, 0x0, x112, x109); - let mut x115: u32 = 0; - let mut x116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x110, x107); - let mut x117: u32 = 0; - let mut x118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x108, x105); - let mut x119: u32 = 0; - let mut x120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x106, x103); - let mut x121: u32 = 0; - let mut x122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x104, x101); - let mut x123: u32 = 0; - let mut x124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x123, &mut x124, x122, x102, x99); - let mut x125: u32 = 0; - let mut x126: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x125, &mut x126, x124, x100, x97); - let mut x127: u32 = 0; - let mut x128: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x127, &mut x128, x126, x98, x95); - let mut x129: u32 = 0; - let mut x130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x129, &mut x130, x128, x96, x93); - let mut x131: u32 = 0; - let mut x132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x131, &mut x132, x130, x94, x91); - let mut x133: u32 = 0; - let mut x134: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x133, &mut x134, x132, x92, x89); - let mut x135: u32 = 0; - let mut x136: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x135, &mut x136, x134, x90, x87); - let mut x137: u32 = 0; - let mut x138: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x137, &mut x138, x136, x88, x85); - let mut x139: u32 = 0; - let mut x140: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x139, &mut x140, x138, x86, x83); - let mut x141: u32 = 0; - let mut x142: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x141, &mut x142, x140, x84, x81); - let mut x143: u32 = 0; - let mut x144: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x143, &mut x144, 0x0, x47, x111); - let mut x145: u32 = 0; - let mut x146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x145, &mut x146, x144, x49, x113); - let mut x147: u32 = 0; - let mut x148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x51, x115); - let mut x149: u32 = 0; - let mut x150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x53, x117); - let mut x151: u32 = 0; - let mut x152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x55, x119); - let mut x153: u32 = 0; - let mut x154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x57, x121); - let mut x155: u32 = 0; - let mut x156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x59, x123); - let mut x157: u32 = 0; - let mut x158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x61, x125); - let mut x159: u32 = 0; - let mut x160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x63, x127); - let mut x161: u32 = 0; - let mut x162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x65, x129); - let mut x163: u32 = 0; - let mut x164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x67, x131); - let mut x165: u32 = 0; - let mut x166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x69, x133); - let mut x167: u32 = 0; - let mut x168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x71, x135); - let mut x169: u32 = 0; - let mut x170: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x73, x137); - let mut x171: u32 = 0; - let mut x172: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x75, x139); - let mut x173: u32 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x77, x141); - let mut x175: u32 = 0; - let mut x176: u32 = 0; - fiat_bp512_mulx_u32(&mut x175, &mut x176, x1, 0x3c4c9d05); - let mut x177: u32 = 0; - let mut x178: u32 = 0; - fiat_bp512_mulx_u32(&mut x177, &mut x178, x1, 0xa9ff6450); - let mut x179: u32 = 0; - let mut x180: u32 = 0; - fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, 0x202e1940); - let mut x181: u32 = 0; - let mut x182: u32 = 0; - fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, 0x2056eecc); - let mut x183: u32 = 0; - let mut x184: u32 = 0; - fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, 0xa16daa5f); - let mut x185: u32 = 0; - let mut x186: u32 = 0; - fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, 0xd42bff83); - let mut x187: u32 = 0; - let mut x188: u32 = 0; - fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, 0x19486fd8); - let mut x189: u32 = 0; - let mut x190: u32 = 0; - fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, 0xd5898057); - let mut x191: u32 = 0; - let mut x192: u32 = 0; - fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, 0xe0c19a77); - let mut x193: u32 = 0; - let mut x194: u32 = 0; - fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, 0x83514a25); - let mut x195: u32 = 0; - let mut x196: u32 = 0; - fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, 0x53b7f9bc); - let mut x197: u32 = 0; - let mut x198: u32 = 0; - fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, 0x905affd3); - let mut x199: u32 = 0; - let mut x200: u32 = 0; - fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, 0x793fb130); - let mut x201: u32 = 0; - let mut x202: u32 = 0; - fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, 0x27157905); - let mut x203: u32 = 0; - let mut x204: u32 = 0; - fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, 0x49ad144a); - let mut x205: u32 = 0; - let mut x206: u32 = 0; - fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, 0x6158f205); - let mut x207: u32 = 0; - let mut x208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x207, &mut x208, 0x0, x206, x203); - let mut x209: u32 = 0; - let mut x210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x209, &mut x210, x208, x204, x201); - let mut x211: u32 = 0; - let mut x212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x211, &mut x212, x210, x202, x199); - let mut x213: u32 = 0; - let mut x214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x200, x197); - let mut x215: u32 = 0; - let mut x216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x198, x195); - let mut x217: u32 = 0; - let mut x218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x196, x193); - let mut x219: u32 = 0; - let mut x220: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x194, x191); - let mut x221: u32 = 0; - let mut x222: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x192, x189); - let mut x223: u32 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x190, x187); - let mut x225: u32 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x188, x185); - let mut x227: u32 = 0; - let mut x228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x186, x183); - let mut x229: u32 = 0; - let mut x230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x184, x181); - let mut x231: u32 = 0; - let mut x232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x182, x179); - let mut x233: u32 = 0; - let mut x234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x180, x177); - let mut x235: u32 = 0; - let mut x236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x178, x175); - let mut x237: u32 = 0; - let mut x238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x237, &mut x238, 0x0, x145, x205); - let mut x239: u32 = 0; - let mut x240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x147, x207); - let mut x241: u32 = 0; - let mut x242: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x241, &mut x242, x240, x149, x209); - let mut x243: u32 = 0; - let mut x244: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x243, &mut x244, x242, x151, x211); - let mut x245: u32 = 0; - let mut x246: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x245, &mut x246, x244, x153, x213); - let mut x247: u32 = 0; - let mut x248: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x247, &mut x248, x246, x155, x215); - let mut x249: u32 = 0; - let mut x250: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x249, &mut x250, x248, x157, x217); - let mut x251: u32 = 0; - let mut x252: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x251, &mut x252, x250, x159, x219); - let mut x253: u32 = 0; - let mut x254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x253, &mut x254, x252, x161, x221); - let mut x255: u32 = 0; - let mut x256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x255, &mut x256, x254, x163, x223); - let mut x257: u32 = 0; - let mut x258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x257, &mut x258, x256, x165, x225); - let mut x259: u32 = 0; - let mut x260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x259, &mut x260, x258, x167, x227); - let mut x261: u32 = 0; - let mut x262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x261, &mut x262, x260, x169, x229); - let mut x263: u32 = 0; - let mut x264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x263, &mut x264, x262, x171, x231); - let mut x265: u32 = 0; - let mut x266: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x265, &mut x266, x264, x173, x233); - let mut x267: u32 = 0; - let mut x268: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x267, &mut x268, x266, (((x174 as u32) + ((x78 as u32) + x18)) + ((x142 as u32) + x82)), x235); - let mut x269: u32 = 0; - let mut x270: u32 = 0; - fiat_bp512_mulx_u32(&mut x269, &mut x270, x237, 0x7d89efc5); - let mut x271: u32 = 0; - let mut x272: u32 = 0; - fiat_bp512_mulx_u32(&mut x271, &mut x272, x269, 0xaadd9db8); - let mut x273: u32 = 0; - let mut x274: u32 = 0; - fiat_bp512_mulx_u32(&mut x273, &mut x274, x269, 0xdbe9c48b); - let mut x275: u32 = 0; - let mut x276: u32 = 0; - fiat_bp512_mulx_u32(&mut x275, &mut x276, x269, 0x3fd4e6ae); - let mut x277: u32 = 0; - let mut x278: u32 = 0; - fiat_bp512_mulx_u32(&mut x277, &mut x278, x269, 0x33c9fc07); - let mut x279: u32 = 0; - let mut x280: u32 = 0; - fiat_bp512_mulx_u32(&mut x279, &mut x280, x269, 0xcb308db3); - let mut x281: u32 = 0; - let mut x282: u32 = 0; - fiat_bp512_mulx_u32(&mut x281, &mut x282, x269, 0xb3c9d20e); - let mut x283: u32 = 0; - let mut x284: u32 = 0; - fiat_bp512_mulx_u32(&mut x283, &mut x284, x269, 0xd6639cca); - let mut x285: u32 = 0; - let mut x286: u32 = 0; - fiat_bp512_mulx_u32(&mut x285, &mut x286, x269, 0x70330871); - let mut x287: u32 = 0; - let mut x288: u32 = 0; - fiat_bp512_mulx_u32(&mut x287, &mut x288, x269, 0x7d4d9b00); - let mut x289: u32 = 0; - let mut x290: u32 = 0; - fiat_bp512_mulx_u32(&mut x289, &mut x290, x269, 0x9bc66842); - let mut x291: u32 = 0; - let mut x292: u32 = 0; - fiat_bp512_mulx_u32(&mut x291, &mut x292, x269, 0xaecda12a); - let mut x293: u32 = 0; - let mut x294: u32 = 0; - fiat_bp512_mulx_u32(&mut x293, &mut x294, x269, 0xe6a380e6); - let mut x295: u32 = 0; - let mut x296: u32 = 0; - fiat_bp512_mulx_u32(&mut x295, &mut x296, x269, 0x2881ff2f); - let mut x297: u32 = 0; - let mut x298: u32 = 0; - fiat_bp512_mulx_u32(&mut x297, &mut x298, x269, 0x2d82c685); - let mut x299: u32 = 0; - let mut x300: u32 = 0; - fiat_bp512_mulx_u32(&mut x299, &mut x300, x269, 0x28aa6056); - let mut x301: u32 = 0; - let mut x302: u32 = 0; - fiat_bp512_mulx_u32(&mut x301, &mut x302, x269, 0x583a48f3); - let mut x303: u32 = 0; - let mut x304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x303, &mut x304, 0x0, x302, x299); - let mut x305: u32 = 0; - let mut x306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x305, &mut x306, x304, x300, x297); - let mut x307: u32 = 0; - let mut x308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x307, &mut x308, x306, x298, x295); - let mut x309: u32 = 0; - let mut x310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x309, &mut x310, x308, x296, x293); - let mut x311: u32 = 0; - let mut x312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x311, &mut x312, x310, x294, x291); - let mut x313: u32 = 0; - let mut x314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x313, &mut x314, x312, x292, x289); - let mut x315: u32 = 0; - let mut x316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x315, &mut x316, x314, x290, x287); - let mut x317: u32 = 0; - let mut x318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x317, &mut x318, x316, x288, x285); - let mut x319: u32 = 0; - let mut x320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x319, &mut x320, x318, x286, x283); - let mut x321: u32 = 0; - let mut x322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x321, &mut x322, x320, x284, x281); - let mut x323: u32 = 0; - let mut x324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x323, &mut x324, x322, x282, x279); - let mut x325: u32 = 0; - let mut x326: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x325, &mut x326, x324, x280, x277); - let mut x327: u32 = 0; - let mut x328: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x327, &mut x328, x326, x278, x275); - let mut x329: u32 = 0; - let mut x330: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x329, &mut x330, x328, x276, x273); - let mut x331: u32 = 0; - let mut x332: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x331, &mut x332, x330, x274, x271); - let mut x333: u32 = 0; - let mut x334: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x333, &mut x334, 0x0, x237, x301); - let mut x335: u32 = 0; - let mut x336: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x335, &mut x336, x334, x239, x303); - let mut x337: u32 = 0; - let mut x338: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x337, &mut x338, x336, x241, x305); - let mut x339: u32 = 0; - let mut x340: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x339, &mut x340, x338, x243, x307); - let mut x341: u32 = 0; - let mut x342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x341, &mut x342, x340, x245, x309); - let mut x343: u32 = 0; - let mut x344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x247, x311); - let mut x345: u32 = 0; - let mut x346: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x249, x313); - let mut x347: u32 = 0; - let mut x348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x251, x315); - let mut x349: u32 = 0; - let mut x350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x253, x317); - let mut x351: u32 = 0; - let mut x352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x255, x319); - let mut x353: u32 = 0; - let mut x354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x257, x321); - let mut x355: u32 = 0; - let mut x356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x259, x323); - let mut x357: u32 = 0; - let mut x358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x261, x325); - let mut x359: u32 = 0; - let mut x360: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x263, x327); - let mut x361: u32 = 0; - let mut x362: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x265, x329); - let mut x363: u32 = 0; - let mut x364: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x267, x331); - let mut x365: u32 = 0; - let mut x366: u32 = 0; - fiat_bp512_mulx_u32(&mut x365, &mut x366, x2, 0x3c4c9d05); - let mut x367: u32 = 0; - let mut x368: u32 = 0; - fiat_bp512_mulx_u32(&mut x367, &mut x368, x2, 0xa9ff6450); - let mut x369: u32 = 0; - let mut x370: u32 = 0; - fiat_bp512_mulx_u32(&mut x369, &mut x370, x2, 0x202e1940); - let mut x371: u32 = 0; - let mut x372: u32 = 0; - fiat_bp512_mulx_u32(&mut x371, &mut x372, x2, 0x2056eecc); - let mut x373: u32 = 0; - let mut x374: u32 = 0; - fiat_bp512_mulx_u32(&mut x373, &mut x374, x2, 0xa16daa5f); - let mut x375: u32 = 0; - let mut x376: u32 = 0; - fiat_bp512_mulx_u32(&mut x375, &mut x376, x2, 0xd42bff83); - let mut x377: u32 = 0; - let mut x378: u32 = 0; - fiat_bp512_mulx_u32(&mut x377, &mut x378, x2, 0x19486fd8); - let mut x379: u32 = 0; - let mut x380: u32 = 0; - fiat_bp512_mulx_u32(&mut x379, &mut x380, x2, 0xd5898057); - let mut x381: u32 = 0; - let mut x382: u32 = 0; - fiat_bp512_mulx_u32(&mut x381, &mut x382, x2, 0xe0c19a77); - let mut x383: u32 = 0; - let mut x384: u32 = 0; - fiat_bp512_mulx_u32(&mut x383, &mut x384, x2, 0x83514a25); - let mut x385: u32 = 0; - let mut x386: u32 = 0; - fiat_bp512_mulx_u32(&mut x385, &mut x386, x2, 0x53b7f9bc); - let mut x387: u32 = 0; - let mut x388: u32 = 0; - fiat_bp512_mulx_u32(&mut x387, &mut x388, x2, 0x905affd3); - let mut x389: u32 = 0; - let mut x390: u32 = 0; - fiat_bp512_mulx_u32(&mut x389, &mut x390, x2, 0x793fb130); - let mut x391: u32 = 0; - let mut x392: u32 = 0; - fiat_bp512_mulx_u32(&mut x391, &mut x392, x2, 0x27157905); - let mut x393: u32 = 0; - let mut x394: u32 = 0; - fiat_bp512_mulx_u32(&mut x393, &mut x394, x2, 0x49ad144a); - let mut x395: u32 = 0; - let mut x396: u32 = 0; - fiat_bp512_mulx_u32(&mut x395, &mut x396, x2, 0x6158f205); - let mut x397: u32 = 0; - let mut x398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x397, &mut x398, 0x0, x396, x393); - let mut x399: u32 = 0; - let mut x400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x399, &mut x400, x398, x394, x391); - let mut x401: u32 = 0; - let mut x402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x401, &mut x402, x400, x392, x389); - let mut x403: u32 = 0; - let mut x404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x403, &mut x404, x402, x390, x387); - let mut x405: u32 = 0; - let mut x406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x405, &mut x406, x404, x388, x385); - let mut x407: u32 = 0; - let mut x408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x407, &mut x408, x406, x386, x383); - let mut x409: u32 = 0; - let mut x410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x409, &mut x410, x408, x384, x381); - let mut x411: u32 = 0; - let mut x412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x411, &mut x412, x410, x382, x379); - let mut x413: u32 = 0; - let mut x414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x413, &mut x414, x412, x380, x377); - let mut x415: u32 = 0; - let mut x416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x415, &mut x416, x414, x378, x375); - let mut x417: u32 = 0; - let mut x418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x417, &mut x418, x416, x376, x373); - let mut x419: u32 = 0; - let mut x420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x419, &mut x420, x418, x374, x371); - let mut x421: u32 = 0; - let mut x422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x421, &mut x422, x420, x372, x369); - let mut x423: u32 = 0; - let mut x424: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x423, &mut x424, x422, x370, x367); - let mut x425: u32 = 0; - let mut x426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x425, &mut x426, x424, x368, x365); - let mut x427: u32 = 0; - let mut x428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x427, &mut x428, 0x0, x335, x395); - let mut x429: u32 = 0; - let mut x430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x429, &mut x430, x428, x337, x397); - let mut x431: u32 = 0; - let mut x432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x431, &mut x432, x430, x339, x399); - let mut x433: u32 = 0; - let mut x434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x433, &mut x434, x432, x341, x401); - let mut x435: u32 = 0; - let mut x436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x435, &mut x436, x434, x343, x403); - let mut x437: u32 = 0; - let mut x438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x437, &mut x438, x436, x345, x405); - let mut x439: u32 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x439, &mut x440, x438, x347, x407); - let mut x441: u32 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x349, x409); - let mut x443: u32 = 0; - let mut x444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x351, x411); - let mut x445: u32 = 0; - let mut x446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x353, x413); - let mut x447: u32 = 0; - let mut x448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x355, x415); - let mut x449: u32 = 0; - let mut x450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x357, x417); - let mut x451: u32 = 0; - let mut x452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x359, x419); - let mut x453: u32 = 0; - let mut x454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x361, x421); - let mut x455: u32 = 0; - let mut x456: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x363, x423); - let mut x457: u32 = 0; - let mut x458: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x457, &mut x458, x456, (((x364 as u32) + ((x268 as u32) + ((x236 as u32) + x176))) + ((x332 as u32) + x272)), x425); - let mut x459: u32 = 0; - let mut x460: u32 = 0; - fiat_bp512_mulx_u32(&mut x459, &mut x460, x427, 0x7d89efc5); - let mut x461: u32 = 0; - let mut x462: u32 = 0; - fiat_bp512_mulx_u32(&mut x461, &mut x462, x459, 0xaadd9db8); - let mut x463: u32 = 0; - let mut x464: u32 = 0; - fiat_bp512_mulx_u32(&mut x463, &mut x464, x459, 0xdbe9c48b); - let mut x465: u32 = 0; - let mut x466: u32 = 0; - fiat_bp512_mulx_u32(&mut x465, &mut x466, x459, 0x3fd4e6ae); - let mut x467: u32 = 0; - let mut x468: u32 = 0; - fiat_bp512_mulx_u32(&mut x467, &mut x468, x459, 0x33c9fc07); - let mut x469: u32 = 0; - let mut x470: u32 = 0; - fiat_bp512_mulx_u32(&mut x469, &mut x470, x459, 0xcb308db3); - let mut x471: u32 = 0; - let mut x472: u32 = 0; - fiat_bp512_mulx_u32(&mut x471, &mut x472, x459, 0xb3c9d20e); - let mut x473: u32 = 0; - let mut x474: u32 = 0; - fiat_bp512_mulx_u32(&mut x473, &mut x474, x459, 0xd6639cca); - let mut x475: u32 = 0; - let mut x476: u32 = 0; - fiat_bp512_mulx_u32(&mut x475, &mut x476, x459, 0x70330871); - let mut x477: u32 = 0; - let mut x478: u32 = 0; - fiat_bp512_mulx_u32(&mut x477, &mut x478, x459, 0x7d4d9b00); - let mut x479: u32 = 0; - let mut x480: u32 = 0; - fiat_bp512_mulx_u32(&mut x479, &mut x480, x459, 0x9bc66842); - let mut x481: u32 = 0; - let mut x482: u32 = 0; - fiat_bp512_mulx_u32(&mut x481, &mut x482, x459, 0xaecda12a); - let mut x483: u32 = 0; - let mut x484: u32 = 0; - fiat_bp512_mulx_u32(&mut x483, &mut x484, x459, 0xe6a380e6); - let mut x485: u32 = 0; - let mut x486: u32 = 0; - fiat_bp512_mulx_u32(&mut x485, &mut x486, x459, 0x2881ff2f); - let mut x487: u32 = 0; - let mut x488: u32 = 0; - fiat_bp512_mulx_u32(&mut x487, &mut x488, x459, 0x2d82c685); - let mut x489: u32 = 0; - let mut x490: u32 = 0; - fiat_bp512_mulx_u32(&mut x489, &mut x490, x459, 0x28aa6056); - let mut x491: u32 = 0; - let mut x492: u32 = 0; - fiat_bp512_mulx_u32(&mut x491, &mut x492, x459, 0x583a48f3); - let mut x493: u32 = 0; - let mut x494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x493, &mut x494, 0x0, x492, x489); - let mut x495: u32 = 0; - let mut x496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x495, &mut x496, x494, x490, x487); - let mut x497: u32 = 0; - let mut x498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x497, &mut x498, x496, x488, x485); - let mut x499: u32 = 0; - let mut x500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x499, &mut x500, x498, x486, x483); - let mut x501: u32 = 0; - let mut x502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x501, &mut x502, x500, x484, x481); - let mut x503: u32 = 0; - let mut x504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x503, &mut x504, x502, x482, x479); - let mut x505: u32 = 0; - let mut x506: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x505, &mut x506, x504, x480, x477); - let mut x507: u32 = 0; - let mut x508: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x507, &mut x508, x506, x478, x475); - let mut x509: u32 = 0; - let mut x510: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x476, x473); - let mut x511: u32 = 0; - let mut x512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x474, x471); - let mut x513: u32 = 0; - let mut x514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x472, x469); - let mut x515: u32 = 0; - let mut x516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x470, x467); - let mut x517: u32 = 0; - let mut x518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x468, x465); - let mut x519: u32 = 0; - let mut x520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x466, x463); - let mut x521: u32 = 0; - let mut x522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x464, x461); - let mut x523: u32 = 0; - let mut x524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x523, &mut x524, 0x0, x427, x491); - let mut x525: u32 = 0; - let mut x526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x429, x493); - let mut x527: u32 = 0; - let mut x528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x431, x495); - let mut x529: u32 = 0; - let mut x530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x433, x497); - let mut x531: u32 = 0; - let mut x532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x435, x499); - let mut x533: u32 = 0; - let mut x534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x437, x501); - let mut x535: u32 = 0; - let mut x536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x439, x503); - let mut x537: u32 = 0; - let mut x538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x537, &mut x538, x536, x441, x505); - let mut x539: u32 = 0; - let mut x540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x539, &mut x540, x538, x443, x507); - let mut x541: u32 = 0; - let mut x542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x541, &mut x542, x540, x445, x509); - let mut x543: u32 = 0; - let mut x544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x543, &mut x544, x542, x447, x511); - let mut x545: u32 = 0; - let mut x546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x545, &mut x546, x544, x449, x513); - let mut x547: u32 = 0; - let mut x548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x547, &mut x548, x546, x451, x515); - let mut x549: u32 = 0; - let mut x550: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x549, &mut x550, x548, x453, x517); - let mut x551: u32 = 0; - let mut x552: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x551, &mut x552, x550, x455, x519); - let mut x553: u32 = 0; - let mut x554: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x553, &mut x554, x552, x457, x521); - let mut x555: u32 = 0; - let mut x556: u32 = 0; - fiat_bp512_mulx_u32(&mut x555, &mut x556, x3, 0x3c4c9d05); - let mut x557: u32 = 0; - let mut x558: u32 = 0; - fiat_bp512_mulx_u32(&mut x557, &mut x558, x3, 0xa9ff6450); - let mut x559: u32 = 0; - let mut x560: u32 = 0; - fiat_bp512_mulx_u32(&mut x559, &mut x560, x3, 0x202e1940); - let mut x561: u32 = 0; - let mut x562: u32 = 0; - fiat_bp512_mulx_u32(&mut x561, &mut x562, x3, 0x2056eecc); - let mut x563: u32 = 0; - let mut x564: u32 = 0; - fiat_bp512_mulx_u32(&mut x563, &mut x564, x3, 0xa16daa5f); - let mut x565: u32 = 0; - let mut x566: u32 = 0; - fiat_bp512_mulx_u32(&mut x565, &mut x566, x3, 0xd42bff83); - let mut x567: u32 = 0; - let mut x568: u32 = 0; - fiat_bp512_mulx_u32(&mut x567, &mut x568, x3, 0x19486fd8); - let mut x569: u32 = 0; - let mut x570: u32 = 0; - fiat_bp512_mulx_u32(&mut x569, &mut x570, x3, 0xd5898057); - let mut x571: u32 = 0; - let mut x572: u32 = 0; - fiat_bp512_mulx_u32(&mut x571, &mut x572, x3, 0xe0c19a77); - let mut x573: u32 = 0; - let mut x574: u32 = 0; - fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, 0x83514a25); - let mut x575: u32 = 0; - let mut x576: u32 = 0; - fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, 0x53b7f9bc); - let mut x577: u32 = 0; - let mut x578: u32 = 0; - fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, 0x905affd3); - let mut x579: u32 = 0; - let mut x580: u32 = 0; - fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, 0x793fb130); - let mut x581: u32 = 0; - let mut x582: u32 = 0; - fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, 0x27157905); - let mut x583: u32 = 0; - let mut x584: u32 = 0; - fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, 0x49ad144a); - let mut x585: u32 = 0; - let mut x586: u32 = 0; - fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, 0x6158f205); - let mut x587: u32 = 0; - let mut x588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x587, &mut x588, 0x0, x586, x583); - let mut x589: u32 = 0; - let mut x590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x589, &mut x590, x588, x584, x581); - let mut x591: u32 = 0; - let mut x592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x591, &mut x592, x590, x582, x579); - let mut x593: u32 = 0; - let mut x594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x593, &mut x594, x592, x580, x577); - let mut x595: u32 = 0; - let mut x596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x595, &mut x596, x594, x578, x575); - let mut x597: u32 = 0; - let mut x598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x597, &mut x598, x596, x576, x573); - let mut x599: u32 = 0; - let mut x600: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x599, &mut x600, x598, x574, x571); - let mut x601: u32 = 0; - let mut x602: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x601, &mut x602, x600, x572, x569); - let mut x603: u32 = 0; - let mut x604: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x603, &mut x604, x602, x570, x567); - let mut x605: u32 = 0; - let mut x606: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x605, &mut x606, x604, x568, x565); - let mut x607: u32 = 0; - let mut x608: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x566, x563); - let mut x609: u32 = 0; - let mut x610: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x564, x561); - let mut x611: u32 = 0; - let mut x612: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x562, x559); - let mut x613: u32 = 0; - let mut x614: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x560, x557); - let mut x615: u32 = 0; - let mut x616: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x558, x555); - let mut x617: u32 = 0; - let mut x618: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x617, &mut x618, 0x0, x525, x585); - let mut x619: u32 = 0; - let mut x620: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x527, x587); - let mut x621: u32 = 0; - let mut x622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x529, x589); - let mut x623: u32 = 0; - let mut x624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x531, x591); - let mut x625: u32 = 0; - let mut x626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x533, x593); - let mut x627: u32 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x535, x595); - let mut x629: u32 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x537, x597); - let mut x631: u32 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x539, x599); - let mut x633: u32 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x541, x601); - let mut x635: u32 = 0; - let mut x636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x635, &mut x636, x634, x543, x603); - let mut x637: u32 = 0; - let mut x638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x637, &mut x638, x636, x545, x605); - let mut x639: u32 = 0; - let mut x640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x639, &mut x640, x638, x547, x607); - let mut x641: u32 = 0; - let mut x642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x641, &mut x642, x640, x549, x609); - let mut x643: u32 = 0; - let mut x644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x643, &mut x644, x642, x551, x611); - let mut x645: u32 = 0; - let mut x646: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x645, &mut x646, x644, x553, x613); - let mut x647: u32 = 0; - let mut x648: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x647, &mut x648, x646, (((x554 as u32) + ((x458 as u32) + ((x426 as u32) + x366))) + ((x522 as u32) + x462)), x615); - let mut x649: u32 = 0; - let mut x650: u32 = 0; - fiat_bp512_mulx_u32(&mut x649, &mut x650, x617, 0x7d89efc5); - let mut x651: u32 = 0; - let mut x652: u32 = 0; - fiat_bp512_mulx_u32(&mut x651, &mut x652, x649, 0xaadd9db8); - let mut x653: u32 = 0; - let mut x654: u32 = 0; - fiat_bp512_mulx_u32(&mut x653, &mut x654, x649, 0xdbe9c48b); - let mut x655: u32 = 0; - let mut x656: u32 = 0; - fiat_bp512_mulx_u32(&mut x655, &mut x656, x649, 0x3fd4e6ae); - let mut x657: u32 = 0; - let mut x658: u32 = 0; - fiat_bp512_mulx_u32(&mut x657, &mut x658, x649, 0x33c9fc07); - let mut x659: u32 = 0; - let mut x660: u32 = 0; - fiat_bp512_mulx_u32(&mut x659, &mut x660, x649, 0xcb308db3); - let mut x661: u32 = 0; - let mut x662: u32 = 0; - fiat_bp512_mulx_u32(&mut x661, &mut x662, x649, 0xb3c9d20e); - let mut x663: u32 = 0; - let mut x664: u32 = 0; - fiat_bp512_mulx_u32(&mut x663, &mut x664, x649, 0xd6639cca); - let mut x665: u32 = 0; - let mut x666: u32 = 0; - fiat_bp512_mulx_u32(&mut x665, &mut x666, x649, 0x70330871); - let mut x667: u32 = 0; - let mut x668: u32 = 0; - fiat_bp512_mulx_u32(&mut x667, &mut x668, x649, 0x7d4d9b00); - let mut x669: u32 = 0; - let mut x670: u32 = 0; - fiat_bp512_mulx_u32(&mut x669, &mut x670, x649, 0x9bc66842); - let mut x671: u32 = 0; - let mut x672: u32 = 0; - fiat_bp512_mulx_u32(&mut x671, &mut x672, x649, 0xaecda12a); - let mut x673: u32 = 0; - let mut x674: u32 = 0; - fiat_bp512_mulx_u32(&mut x673, &mut x674, x649, 0xe6a380e6); - let mut x675: u32 = 0; - let mut x676: u32 = 0; - fiat_bp512_mulx_u32(&mut x675, &mut x676, x649, 0x2881ff2f); - let mut x677: u32 = 0; - let mut x678: u32 = 0; - fiat_bp512_mulx_u32(&mut x677, &mut x678, x649, 0x2d82c685); - let mut x679: u32 = 0; - let mut x680: u32 = 0; - fiat_bp512_mulx_u32(&mut x679, &mut x680, x649, 0x28aa6056); - let mut x681: u32 = 0; - let mut x682: u32 = 0; - fiat_bp512_mulx_u32(&mut x681, &mut x682, x649, 0x583a48f3); - let mut x683: u32 = 0; - let mut x684: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x683, &mut x684, 0x0, x682, x679); - let mut x685: u32 = 0; - let mut x686: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x685, &mut x686, x684, x680, x677); - let mut x687: u32 = 0; - let mut x688: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x687, &mut x688, x686, x678, x675); - let mut x689: u32 = 0; - let mut x690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x689, &mut x690, x688, x676, x673); - let mut x691: u32 = 0; - let mut x692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x691, &mut x692, x690, x674, x671); - let mut x693: u32 = 0; - let mut x694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x693, &mut x694, x692, x672, x669); - let mut x695: u32 = 0; - let mut x696: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x695, &mut x696, x694, x670, x667); - let mut x697: u32 = 0; - let mut x698: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x697, &mut x698, x696, x668, x665); - let mut x699: u32 = 0; - let mut x700: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x699, &mut x700, x698, x666, x663); - let mut x701: u32 = 0; - let mut x702: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x701, &mut x702, x700, x664, x661); - let mut x703: u32 = 0; - let mut x704: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x703, &mut x704, x702, x662, x659); - let mut x705: u32 = 0; - let mut x706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x705, &mut x706, x704, x660, x657); - let mut x707: u32 = 0; - let mut x708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x707, &mut x708, x706, x658, x655); - let mut x709: u32 = 0; - let mut x710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x709, &mut x710, x708, x656, x653); - let mut x711: u32 = 0; - let mut x712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x711, &mut x712, x710, x654, x651); - let mut x713: u32 = 0; - let mut x714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x713, &mut x714, 0x0, x617, x681); - let mut x715: u32 = 0; - let mut x716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x715, &mut x716, x714, x619, x683); - let mut x717: u32 = 0; - let mut x718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x717, &mut x718, x716, x621, x685); - let mut x719: u32 = 0; - let mut x720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x719, &mut x720, x718, x623, x687); - let mut x721: u32 = 0; - let mut x722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x721, &mut x722, x720, x625, x689); - let mut x723: u32 = 0; - let mut x724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x723, &mut x724, x722, x627, x691); - let mut x725: u32 = 0; - let mut x726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x725, &mut x726, x724, x629, x693); - let mut x727: u32 = 0; - let mut x728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x727, &mut x728, x726, x631, x695); - let mut x729: u32 = 0; - let mut x730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x729, &mut x730, x728, x633, x697); - let mut x731: u32 = 0; - let mut x732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x731, &mut x732, x730, x635, x699); - let mut x733: u32 = 0; - let mut x734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x733, &mut x734, x732, x637, x701); - let mut x735: u32 = 0; - let mut x736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x735, &mut x736, x734, x639, x703); - let mut x737: u32 = 0; - let mut x738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x641, x705); - let mut x739: u32 = 0; - let mut x740: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x643, x707); - let mut x741: u32 = 0; - let mut x742: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x645, x709); - let mut x743: u32 = 0; - let mut x744: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x647, x711); - let mut x745: u32 = 0; - let mut x746: u32 = 0; - fiat_bp512_mulx_u32(&mut x745, &mut x746, x4, 0x3c4c9d05); - let mut x747: u32 = 0; - let mut x748: u32 = 0; - fiat_bp512_mulx_u32(&mut x747, &mut x748, x4, 0xa9ff6450); - let mut x749: u32 = 0; - let mut x750: u32 = 0; - fiat_bp512_mulx_u32(&mut x749, &mut x750, x4, 0x202e1940); - let mut x751: u32 = 0; - let mut x752: u32 = 0; - fiat_bp512_mulx_u32(&mut x751, &mut x752, x4, 0x2056eecc); - let mut x753: u32 = 0; - let mut x754: u32 = 0; - fiat_bp512_mulx_u32(&mut x753, &mut x754, x4, 0xa16daa5f); - let mut x755: u32 = 0; - let mut x756: u32 = 0; - fiat_bp512_mulx_u32(&mut x755, &mut x756, x4, 0xd42bff83); - let mut x757: u32 = 0; - let mut x758: u32 = 0; - fiat_bp512_mulx_u32(&mut x757, &mut x758, x4, 0x19486fd8); - let mut x759: u32 = 0; - let mut x760: u32 = 0; - fiat_bp512_mulx_u32(&mut x759, &mut x760, x4, 0xd5898057); - let mut x761: u32 = 0; - let mut x762: u32 = 0; - fiat_bp512_mulx_u32(&mut x761, &mut x762, x4, 0xe0c19a77); - let mut x763: u32 = 0; - let mut x764: u32 = 0; - fiat_bp512_mulx_u32(&mut x763, &mut x764, x4, 0x83514a25); - let mut x765: u32 = 0; - let mut x766: u32 = 0; - fiat_bp512_mulx_u32(&mut x765, &mut x766, x4, 0x53b7f9bc); - let mut x767: u32 = 0; - let mut x768: u32 = 0; - fiat_bp512_mulx_u32(&mut x767, &mut x768, x4, 0x905affd3); - let mut x769: u32 = 0; - let mut x770: u32 = 0; - fiat_bp512_mulx_u32(&mut x769, &mut x770, x4, 0x793fb130); - let mut x771: u32 = 0; - let mut x772: u32 = 0; - fiat_bp512_mulx_u32(&mut x771, &mut x772, x4, 0x27157905); - let mut x773: u32 = 0; - let mut x774: u32 = 0; - fiat_bp512_mulx_u32(&mut x773, &mut x774, x4, 0x49ad144a); - let mut x775: u32 = 0; - let mut x776: u32 = 0; - fiat_bp512_mulx_u32(&mut x775, &mut x776, x4, 0x6158f205); - let mut x777: u32 = 0; - let mut x778: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x777, &mut x778, 0x0, x776, x773); - let mut x779: u32 = 0; - let mut x780: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x779, &mut x780, x778, x774, x771); - let mut x781: u32 = 0; - let mut x782: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x781, &mut x782, x780, x772, x769); - let mut x783: u32 = 0; - let mut x784: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x783, &mut x784, x782, x770, x767); - let mut x785: u32 = 0; - let mut x786: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x785, &mut x786, x784, x768, x765); - let mut x787: u32 = 0; - let mut x788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x787, &mut x788, x786, x766, x763); - let mut x789: u32 = 0; - let mut x790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x789, &mut x790, x788, x764, x761); - let mut x791: u32 = 0; - let mut x792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x791, &mut x792, x790, x762, x759); - let mut x793: u32 = 0; - let mut x794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x793, &mut x794, x792, x760, x757); - let mut x795: u32 = 0; - let mut x796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x795, &mut x796, x794, x758, x755); - let mut x797: u32 = 0; - let mut x798: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x797, &mut x798, x796, x756, x753); - let mut x799: u32 = 0; - let mut x800: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x799, &mut x800, x798, x754, x751); - let mut x801: u32 = 0; - let mut x802: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x801, &mut x802, x800, x752, x749); - let mut x803: u32 = 0; - let mut x804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x803, &mut x804, x802, x750, x747); - let mut x805: u32 = 0; - let mut x806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x805, &mut x806, x804, x748, x745); - let mut x807: u32 = 0; - let mut x808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x807, &mut x808, 0x0, x715, x775); - let mut x809: u32 = 0; - let mut x810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x809, &mut x810, x808, x717, x777); - let mut x811: u32 = 0; - let mut x812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x811, &mut x812, x810, x719, x779); - let mut x813: u32 = 0; - let mut x814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x813, &mut x814, x812, x721, x781); - let mut x815: u32 = 0; - let mut x816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x815, &mut x816, x814, x723, x783); - let mut x817: u32 = 0; - let mut x818: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x817, &mut x818, x816, x725, x785); - let mut x819: u32 = 0; - let mut x820: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x819, &mut x820, x818, x727, x787); - let mut x821: u32 = 0; - let mut x822: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x821, &mut x822, x820, x729, x789); - let mut x823: u32 = 0; - let mut x824: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x823, &mut x824, x822, x731, x791); - let mut x825: u32 = 0; - let mut x826: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x825, &mut x826, x824, x733, x793); - let mut x827: u32 = 0; - let mut x828: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x827, &mut x828, x826, x735, x795); - let mut x829: u32 = 0; - let mut x830: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x829, &mut x830, x828, x737, x797); - let mut x831: u32 = 0; - let mut x832: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x831, &mut x832, x830, x739, x799); - let mut x833: u32 = 0; - let mut x834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x833, &mut x834, x832, x741, x801); - let mut x835: u32 = 0; - let mut x836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x743, x803); - let mut x837: u32 = 0; - let mut x838: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x837, &mut x838, x836, (((x744 as u32) + ((x648 as u32) + ((x616 as u32) + x556))) + ((x712 as u32) + x652)), x805); - let mut x839: u32 = 0; - let mut x840: u32 = 0; - fiat_bp512_mulx_u32(&mut x839, &mut x840, x807, 0x7d89efc5); - let mut x841: u32 = 0; - let mut x842: u32 = 0; - fiat_bp512_mulx_u32(&mut x841, &mut x842, x839, 0xaadd9db8); - let mut x843: u32 = 0; - let mut x844: u32 = 0; - fiat_bp512_mulx_u32(&mut x843, &mut x844, x839, 0xdbe9c48b); - let mut x845: u32 = 0; - let mut x846: u32 = 0; - fiat_bp512_mulx_u32(&mut x845, &mut x846, x839, 0x3fd4e6ae); - let mut x847: u32 = 0; - let mut x848: u32 = 0; - fiat_bp512_mulx_u32(&mut x847, &mut x848, x839, 0x33c9fc07); - let mut x849: u32 = 0; - let mut x850: u32 = 0; - fiat_bp512_mulx_u32(&mut x849, &mut x850, x839, 0xcb308db3); - let mut x851: u32 = 0; - let mut x852: u32 = 0; - fiat_bp512_mulx_u32(&mut x851, &mut x852, x839, 0xb3c9d20e); - let mut x853: u32 = 0; - let mut x854: u32 = 0; - fiat_bp512_mulx_u32(&mut x853, &mut x854, x839, 0xd6639cca); - let mut x855: u32 = 0; - let mut x856: u32 = 0; - fiat_bp512_mulx_u32(&mut x855, &mut x856, x839, 0x70330871); - let mut x857: u32 = 0; - let mut x858: u32 = 0; - fiat_bp512_mulx_u32(&mut x857, &mut x858, x839, 0x7d4d9b00); - let mut x859: u32 = 0; - let mut x860: u32 = 0; - fiat_bp512_mulx_u32(&mut x859, &mut x860, x839, 0x9bc66842); - let mut x861: u32 = 0; - let mut x862: u32 = 0; - fiat_bp512_mulx_u32(&mut x861, &mut x862, x839, 0xaecda12a); - let mut x863: u32 = 0; - let mut x864: u32 = 0; - fiat_bp512_mulx_u32(&mut x863, &mut x864, x839, 0xe6a380e6); - let mut x865: u32 = 0; - let mut x866: u32 = 0; - fiat_bp512_mulx_u32(&mut x865, &mut x866, x839, 0x2881ff2f); - let mut x867: u32 = 0; - let mut x868: u32 = 0; - fiat_bp512_mulx_u32(&mut x867, &mut x868, x839, 0x2d82c685); - let mut x869: u32 = 0; - let mut x870: u32 = 0; - fiat_bp512_mulx_u32(&mut x869, &mut x870, x839, 0x28aa6056); - let mut x871: u32 = 0; - let mut x872: u32 = 0; - fiat_bp512_mulx_u32(&mut x871, &mut x872, x839, 0x583a48f3); - let mut x873: u32 = 0; - let mut x874: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x873, &mut x874, 0x0, x872, x869); - let mut x875: u32 = 0; - let mut x876: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x875, &mut x876, x874, x870, x867); - let mut x877: u32 = 0; - let mut x878: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x877, &mut x878, x876, x868, x865); - let mut x879: u32 = 0; - let mut x880: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x879, &mut x880, x878, x866, x863); - let mut x881: u32 = 0; - let mut x882: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x881, &mut x882, x880, x864, x861); - let mut x883: u32 = 0; - let mut x884: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x883, &mut x884, x882, x862, x859); - let mut x885: u32 = 0; - let mut x886: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x885, &mut x886, x884, x860, x857); - let mut x887: u32 = 0; - let mut x888: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x887, &mut x888, x886, x858, x855); - let mut x889: u32 = 0; - let mut x890: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x889, &mut x890, x888, x856, x853); - let mut x891: u32 = 0; - let mut x892: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x891, &mut x892, x890, x854, x851); - let mut x893: u32 = 0; - let mut x894: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x893, &mut x894, x892, x852, x849); - let mut x895: u32 = 0; - let mut x896: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x895, &mut x896, x894, x850, x847); - let mut x897: u32 = 0; - let mut x898: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x897, &mut x898, x896, x848, x845); - let mut x899: u32 = 0; - let mut x900: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x899, &mut x900, x898, x846, x843); - let mut x901: u32 = 0; - let mut x902: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x901, &mut x902, x900, x844, x841); - let mut x903: u32 = 0; - let mut x904: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x903, &mut x904, 0x0, x807, x871); - let mut x905: u32 = 0; - let mut x906: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x809, x873); - let mut x907: u32 = 0; - let mut x908: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x811, x875); - let mut x909: u32 = 0; - let mut x910: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x813, x877); - let mut x911: u32 = 0; - let mut x912: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x815, x879); - let mut x913: u32 = 0; - let mut x914: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x817, x881); - let mut x915: u32 = 0; - let mut x916: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x819, x883); - let mut x917: u32 = 0; - let mut x918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x821, x885); - let mut x919: u32 = 0; - let mut x920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x823, x887); - let mut x921: u32 = 0; - let mut x922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x825, x889); - let mut x923: u32 = 0; - let mut x924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x827, x891); - let mut x925: u32 = 0; - let mut x926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x829, x893); - let mut x927: u32 = 0; - let mut x928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x831, x895); - let mut x929: u32 = 0; - let mut x930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x833, x897); - let mut x931: u32 = 0; - let mut x932: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x931, &mut x932, x930, x835, x899); - let mut x933: u32 = 0; - let mut x934: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x933, &mut x934, x932, x837, x901); - let mut x935: u32 = 0; - let mut x936: u32 = 0; - fiat_bp512_mulx_u32(&mut x935, &mut x936, x5, 0x3c4c9d05); - let mut x937: u32 = 0; - let mut x938: u32 = 0; - fiat_bp512_mulx_u32(&mut x937, &mut x938, x5, 0xa9ff6450); - let mut x939: u32 = 0; - let mut x940: u32 = 0; - fiat_bp512_mulx_u32(&mut x939, &mut x940, x5, 0x202e1940); - let mut x941: u32 = 0; - let mut x942: u32 = 0; - fiat_bp512_mulx_u32(&mut x941, &mut x942, x5, 0x2056eecc); - let mut x943: u32 = 0; - let mut x944: u32 = 0; - fiat_bp512_mulx_u32(&mut x943, &mut x944, x5, 0xa16daa5f); - let mut x945: u32 = 0; - let mut x946: u32 = 0; - fiat_bp512_mulx_u32(&mut x945, &mut x946, x5, 0xd42bff83); - let mut x947: u32 = 0; - let mut x948: u32 = 0; - fiat_bp512_mulx_u32(&mut x947, &mut x948, x5, 0x19486fd8); - let mut x949: u32 = 0; - let mut x950: u32 = 0; - fiat_bp512_mulx_u32(&mut x949, &mut x950, x5, 0xd5898057); - let mut x951: u32 = 0; - let mut x952: u32 = 0; - fiat_bp512_mulx_u32(&mut x951, &mut x952, x5, 0xe0c19a77); - let mut x953: u32 = 0; - let mut x954: u32 = 0; - fiat_bp512_mulx_u32(&mut x953, &mut x954, x5, 0x83514a25); - let mut x955: u32 = 0; - let mut x956: u32 = 0; - fiat_bp512_mulx_u32(&mut x955, &mut x956, x5, 0x53b7f9bc); - let mut x957: u32 = 0; - let mut x958: u32 = 0; - fiat_bp512_mulx_u32(&mut x957, &mut x958, x5, 0x905affd3); - let mut x959: u32 = 0; - let mut x960: u32 = 0; - fiat_bp512_mulx_u32(&mut x959, &mut x960, x5, 0x793fb130); - let mut x961: u32 = 0; - let mut x962: u32 = 0; - fiat_bp512_mulx_u32(&mut x961, &mut x962, x5, 0x27157905); - let mut x963: u32 = 0; - let mut x964: u32 = 0; - fiat_bp512_mulx_u32(&mut x963, &mut x964, x5, 0x49ad144a); - let mut x965: u32 = 0; - let mut x966: u32 = 0; - fiat_bp512_mulx_u32(&mut x965, &mut x966, x5, 0x6158f205); - let mut x967: u32 = 0; - let mut x968: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x967, &mut x968, 0x0, x966, x963); - let mut x969: u32 = 0; - let mut x970: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x969, &mut x970, x968, x964, x961); - let mut x971: u32 = 0; - let mut x972: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x971, &mut x972, x970, x962, x959); - let mut x973: u32 = 0; - let mut x974: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x973, &mut x974, x972, x960, x957); - let mut x975: u32 = 0; - let mut x976: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x975, &mut x976, x974, x958, x955); - let mut x977: u32 = 0; - let mut x978: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x977, &mut x978, x976, x956, x953); - let mut x979: u32 = 0; - let mut x980: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x979, &mut x980, x978, x954, x951); - let mut x981: u32 = 0; - let mut x982: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x981, &mut x982, x980, x952, x949); - let mut x983: u32 = 0; - let mut x984: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x983, &mut x984, x982, x950, x947); - let mut x985: u32 = 0; - let mut x986: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x985, &mut x986, x984, x948, x945); - let mut x987: u32 = 0; - let mut x988: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x987, &mut x988, x986, x946, x943); - let mut x989: u32 = 0; - let mut x990: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x989, &mut x990, x988, x944, x941); - let mut x991: u32 = 0; - let mut x992: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x991, &mut x992, x990, x942, x939); - let mut x993: u32 = 0; - let mut x994: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x993, &mut x994, x992, x940, x937); - let mut x995: u32 = 0; - let mut x996: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x995, &mut x996, x994, x938, x935); - let mut x997: u32 = 0; - let mut x998: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x997, &mut x998, 0x0, x905, x965); - let mut x999: u32 = 0; - let mut x1000: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, x998, x907, x967); - let mut x1001: u32 = 0; - let mut x1002: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x909, x969); - let mut x1003: u32 = 0; - let mut x1004: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x911, x971); - let mut x1005: u32 = 0; - let mut x1006: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x913, x973); - let mut x1007: u32 = 0; - let mut x1008: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x915, x975); - let mut x1009: u32 = 0; - let mut x1010: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x917, x977); - let mut x1011: u32 = 0; - let mut x1012: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x919, x979); - let mut x1013: u32 = 0; - let mut x1014: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x921, x981); - let mut x1015: u32 = 0; - let mut x1016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x923, x983); - let mut x1017: u32 = 0; - let mut x1018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x925, x985); - let mut x1019: u32 = 0; - let mut x1020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x927, x987); - let mut x1021: u32 = 0; - let mut x1022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x929, x989); - let mut x1023: u32 = 0; - let mut x1024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x931, x991); - let mut x1025: u32 = 0; - let mut x1026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x933, x993); - let mut x1027: u32 = 0; - let mut x1028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1027, &mut x1028, x1026, (((x934 as u32) + ((x838 as u32) + ((x806 as u32) + x746))) + ((x902 as u32) + x842)), x995); - let mut x1029: u32 = 0; - let mut x1030: u32 = 0; - fiat_bp512_mulx_u32(&mut x1029, &mut x1030, x997, 0x7d89efc5); - let mut x1031: u32 = 0; - let mut x1032: u32 = 0; - fiat_bp512_mulx_u32(&mut x1031, &mut x1032, x1029, 0xaadd9db8); - let mut x1033: u32 = 0; - let mut x1034: u32 = 0; - fiat_bp512_mulx_u32(&mut x1033, &mut x1034, x1029, 0xdbe9c48b); - let mut x1035: u32 = 0; - let mut x1036: u32 = 0; - fiat_bp512_mulx_u32(&mut x1035, &mut x1036, x1029, 0x3fd4e6ae); - let mut x1037: u32 = 0; - let mut x1038: u32 = 0; - fiat_bp512_mulx_u32(&mut x1037, &mut x1038, x1029, 0x33c9fc07); - let mut x1039: u32 = 0; - let mut x1040: u32 = 0; - fiat_bp512_mulx_u32(&mut x1039, &mut x1040, x1029, 0xcb308db3); - let mut x1041: u32 = 0; - let mut x1042: u32 = 0; - fiat_bp512_mulx_u32(&mut x1041, &mut x1042, x1029, 0xb3c9d20e); - let mut x1043: u32 = 0; - let mut x1044: u32 = 0; - fiat_bp512_mulx_u32(&mut x1043, &mut x1044, x1029, 0xd6639cca); - let mut x1045: u32 = 0; - let mut x1046: u32 = 0; - fiat_bp512_mulx_u32(&mut x1045, &mut x1046, x1029, 0x70330871); - let mut x1047: u32 = 0; - let mut x1048: u32 = 0; - fiat_bp512_mulx_u32(&mut x1047, &mut x1048, x1029, 0x7d4d9b00); - let mut x1049: u32 = 0; - let mut x1050: u32 = 0; - fiat_bp512_mulx_u32(&mut x1049, &mut x1050, x1029, 0x9bc66842); - let mut x1051: u32 = 0; - let mut x1052: u32 = 0; - fiat_bp512_mulx_u32(&mut x1051, &mut x1052, x1029, 0xaecda12a); - let mut x1053: u32 = 0; - let mut x1054: u32 = 0; - fiat_bp512_mulx_u32(&mut x1053, &mut x1054, x1029, 0xe6a380e6); - let mut x1055: u32 = 0; - let mut x1056: u32 = 0; - fiat_bp512_mulx_u32(&mut x1055, &mut x1056, x1029, 0x2881ff2f); - let mut x1057: u32 = 0; - let mut x1058: u32 = 0; - fiat_bp512_mulx_u32(&mut x1057, &mut x1058, x1029, 0x2d82c685); - let mut x1059: u32 = 0; - let mut x1060: u32 = 0; - fiat_bp512_mulx_u32(&mut x1059, &mut x1060, x1029, 0x28aa6056); - let mut x1061: u32 = 0; - let mut x1062: u32 = 0; - fiat_bp512_mulx_u32(&mut x1061, &mut x1062, x1029, 0x583a48f3); - let mut x1063: u32 = 0; - let mut x1064: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1063, &mut x1064, 0x0, x1062, x1059); - let mut x1065: u32 = 0; - let mut x1066: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1060, x1057); - let mut x1067: u32 = 0; - let mut x1068: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1058, x1055); - let mut x1069: u32 = 0; - let mut x1070: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1056, x1053); - let mut x1071: u32 = 0; - let mut x1072: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1054, x1051); - let mut x1073: u32 = 0; - let mut x1074: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1052, x1049); - let mut x1075: u32 = 0; - let mut x1076: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1075, &mut x1076, x1074, x1050, x1047); - let mut x1077: u32 = 0; - let mut x1078: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1077, &mut x1078, x1076, x1048, x1045); - let mut x1079: u32 = 0; - let mut x1080: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1079, &mut x1080, x1078, x1046, x1043); - let mut x1081: u32 = 0; - let mut x1082: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1044, x1041); - let mut x1083: u32 = 0; - let mut x1084: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1042, x1039); - let mut x1085: u32 = 0; - let mut x1086: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1040, x1037); - let mut x1087: u32 = 0; - let mut x1088: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1038, x1035); - let mut x1089: u32 = 0; - let mut x1090: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1036, x1033); - let mut x1091: u32 = 0; - let mut x1092: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1034, x1031); - let mut x1093: u32 = 0; - let mut x1094: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1093, &mut x1094, 0x0, x997, x1061); - let mut x1095: u32 = 0; - let mut x1096: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1095, &mut x1096, x1094, x999, x1063); - let mut x1097: u32 = 0; - let mut x1098: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1001, x1065); - let mut x1099: u32 = 0; - let mut x1100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1003, x1067); - let mut x1101: u32 = 0; - let mut x1102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1101, &mut x1102, x1100, x1005, x1069); - let mut x1103: u32 = 0; - let mut x1104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1103, &mut x1104, x1102, x1007, x1071); - let mut x1105: u32 = 0; - let mut x1106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1009, x1073); - let mut x1107: u32 = 0; - let mut x1108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1011, x1075); - let mut x1109: u32 = 0; - let mut x1110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1013, x1077); - let mut x1111: u32 = 0; - let mut x1112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1015, x1079); - let mut x1113: u32 = 0; - let mut x1114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1017, x1081); - let mut x1115: u32 = 0; - let mut x1116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1019, x1083); - let mut x1117: u32 = 0; - let mut x1118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1021, x1085); - let mut x1119: u32 = 0; - let mut x1120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1023, x1087); - let mut x1121: u32 = 0; - let mut x1122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1025, x1089); - let mut x1123: u32 = 0; - let mut x1124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1027, x1091); - let mut x1125: u32 = 0; - let mut x1126: u32 = 0; - fiat_bp512_mulx_u32(&mut x1125, &mut x1126, x6, 0x3c4c9d05); - let mut x1127: u32 = 0; - let mut x1128: u32 = 0; - fiat_bp512_mulx_u32(&mut x1127, &mut x1128, x6, 0xa9ff6450); - let mut x1129: u32 = 0; - let mut x1130: u32 = 0; - fiat_bp512_mulx_u32(&mut x1129, &mut x1130, x6, 0x202e1940); - let mut x1131: u32 = 0; - let mut x1132: u32 = 0; - fiat_bp512_mulx_u32(&mut x1131, &mut x1132, x6, 0x2056eecc); - let mut x1133: u32 = 0; - let mut x1134: u32 = 0; - fiat_bp512_mulx_u32(&mut x1133, &mut x1134, x6, 0xa16daa5f); - let mut x1135: u32 = 0; - let mut x1136: u32 = 0; - fiat_bp512_mulx_u32(&mut x1135, &mut x1136, x6, 0xd42bff83); - let mut x1137: u32 = 0; - let mut x1138: u32 = 0; - fiat_bp512_mulx_u32(&mut x1137, &mut x1138, x6, 0x19486fd8); - let mut x1139: u32 = 0; - let mut x1140: u32 = 0; - fiat_bp512_mulx_u32(&mut x1139, &mut x1140, x6, 0xd5898057); - let mut x1141: u32 = 0; - let mut x1142: u32 = 0; - fiat_bp512_mulx_u32(&mut x1141, &mut x1142, x6, 0xe0c19a77); - let mut x1143: u32 = 0; - let mut x1144: u32 = 0; - fiat_bp512_mulx_u32(&mut x1143, &mut x1144, x6, 0x83514a25); - let mut x1145: u32 = 0; - let mut x1146: u32 = 0; - fiat_bp512_mulx_u32(&mut x1145, &mut x1146, x6, 0x53b7f9bc); - let mut x1147: u32 = 0; - let mut x1148: u32 = 0; - fiat_bp512_mulx_u32(&mut x1147, &mut x1148, x6, 0x905affd3); - let mut x1149: u32 = 0; - let mut x1150: u32 = 0; - fiat_bp512_mulx_u32(&mut x1149, &mut x1150, x6, 0x793fb130); - let mut x1151: u32 = 0; - let mut x1152: u32 = 0; - fiat_bp512_mulx_u32(&mut x1151, &mut x1152, x6, 0x27157905); - let mut x1153: u32 = 0; - let mut x1154: u32 = 0; - fiat_bp512_mulx_u32(&mut x1153, &mut x1154, x6, 0x49ad144a); - let mut x1155: u32 = 0; - let mut x1156: u32 = 0; - fiat_bp512_mulx_u32(&mut x1155, &mut x1156, x6, 0x6158f205); - let mut x1157: u32 = 0; - let mut x1158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, 0x0, x1156, x1153); - let mut x1159: u32 = 0; - let mut x1160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1154, x1151); - let mut x1161: u32 = 0; - let mut x1162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1152, x1149); - let mut x1163: u32 = 0; - let mut x1164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1150, x1147); - let mut x1165: u32 = 0; - let mut x1166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1148, x1145); - let mut x1167: u32 = 0; - let mut x1168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1146, x1143); - let mut x1169: u32 = 0; - let mut x1170: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1144, x1141); - let mut x1171: u32 = 0; - let mut x1172: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1142, x1139); - let mut x1173: u32 = 0; - let mut x1174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1140, x1137); - let mut x1175: u32 = 0; - let mut x1176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1138, x1135); - let mut x1177: u32 = 0; - let mut x1178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1136, x1133); - let mut x1179: u32 = 0; - let mut x1180: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1134, x1131); - let mut x1181: u32 = 0; - let mut x1182: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1132, x1129); - let mut x1183: u32 = 0; - let mut x1184: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1130, x1127); - let mut x1185: u32 = 0; - let mut x1186: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1128, x1125); - let mut x1187: u32 = 0; - let mut x1188: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1187, &mut x1188, 0x0, x1095, x1155); - let mut x1189: u32 = 0; - let mut x1190: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1097, x1157); - let mut x1191: u32 = 0; - let mut x1192: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1099, x1159); - let mut x1193: u32 = 0; - let mut x1194: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1193, &mut x1194, x1192, x1101, x1161); - let mut x1195: u32 = 0; - let mut x1196: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1195, &mut x1196, x1194, x1103, x1163); - let mut x1197: u32 = 0; - let mut x1198: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1197, &mut x1198, x1196, x1105, x1165); - let mut x1199: u32 = 0; - let mut x1200: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1199, &mut x1200, x1198, x1107, x1167); - let mut x1201: u32 = 0; - let mut x1202: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1201, &mut x1202, x1200, x1109, x1169); - let mut x1203: u32 = 0; - let mut x1204: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1203, &mut x1204, x1202, x1111, x1171); - let mut x1205: u32 = 0; - let mut x1206: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1205, &mut x1206, x1204, x1113, x1173); - let mut x1207: u32 = 0; - let mut x1208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1207, &mut x1208, x1206, x1115, x1175); - let mut x1209: u32 = 0; - let mut x1210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1209, &mut x1210, x1208, x1117, x1177); - let mut x1211: u32 = 0; - let mut x1212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1211, &mut x1212, x1210, x1119, x1179); - let mut x1213: u32 = 0; - let mut x1214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1213, &mut x1214, x1212, x1121, x1181); - let mut x1215: u32 = 0; - let mut x1216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1215, &mut x1216, x1214, x1123, x1183); - let mut x1217: u32 = 0; - let mut x1218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1217, &mut x1218, x1216, (((x1124 as u32) + ((x1028 as u32) + ((x996 as u32) + x936))) + ((x1092 as u32) + x1032)), x1185); - let mut x1219: u32 = 0; - let mut x1220: u32 = 0; - fiat_bp512_mulx_u32(&mut x1219, &mut x1220, x1187, 0x7d89efc5); - let mut x1221: u32 = 0; - let mut x1222: u32 = 0; - fiat_bp512_mulx_u32(&mut x1221, &mut x1222, x1219, 0xaadd9db8); - let mut x1223: u32 = 0; - let mut x1224: u32 = 0; - fiat_bp512_mulx_u32(&mut x1223, &mut x1224, x1219, 0xdbe9c48b); - let mut x1225: u32 = 0; - let mut x1226: u32 = 0; - fiat_bp512_mulx_u32(&mut x1225, &mut x1226, x1219, 0x3fd4e6ae); - let mut x1227: u32 = 0; - let mut x1228: u32 = 0; - fiat_bp512_mulx_u32(&mut x1227, &mut x1228, x1219, 0x33c9fc07); - let mut x1229: u32 = 0; - let mut x1230: u32 = 0; - fiat_bp512_mulx_u32(&mut x1229, &mut x1230, x1219, 0xcb308db3); - let mut x1231: u32 = 0; - let mut x1232: u32 = 0; - fiat_bp512_mulx_u32(&mut x1231, &mut x1232, x1219, 0xb3c9d20e); - let mut x1233: u32 = 0; - let mut x1234: u32 = 0; - fiat_bp512_mulx_u32(&mut x1233, &mut x1234, x1219, 0xd6639cca); - let mut x1235: u32 = 0; - let mut x1236: u32 = 0; - fiat_bp512_mulx_u32(&mut x1235, &mut x1236, x1219, 0x70330871); - let mut x1237: u32 = 0; - let mut x1238: u32 = 0; - fiat_bp512_mulx_u32(&mut x1237, &mut x1238, x1219, 0x7d4d9b00); - let mut x1239: u32 = 0; - let mut x1240: u32 = 0; - fiat_bp512_mulx_u32(&mut x1239, &mut x1240, x1219, 0x9bc66842); - let mut x1241: u32 = 0; - let mut x1242: u32 = 0; - fiat_bp512_mulx_u32(&mut x1241, &mut x1242, x1219, 0xaecda12a); - let mut x1243: u32 = 0; - let mut x1244: u32 = 0; - fiat_bp512_mulx_u32(&mut x1243, &mut x1244, x1219, 0xe6a380e6); - let mut x1245: u32 = 0; - let mut x1246: u32 = 0; - fiat_bp512_mulx_u32(&mut x1245, &mut x1246, x1219, 0x2881ff2f); - let mut x1247: u32 = 0; - let mut x1248: u32 = 0; - fiat_bp512_mulx_u32(&mut x1247, &mut x1248, x1219, 0x2d82c685); - let mut x1249: u32 = 0; - let mut x1250: u32 = 0; - fiat_bp512_mulx_u32(&mut x1249, &mut x1250, x1219, 0x28aa6056); - let mut x1251: u32 = 0; - let mut x1252: u32 = 0; - fiat_bp512_mulx_u32(&mut x1251, &mut x1252, x1219, 0x583a48f3); - let mut x1253: u32 = 0; - let mut x1254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, 0x0, x1252, x1249); - let mut x1255: u32 = 0; - let mut x1256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1250, x1247); - let mut x1257: u32 = 0; - let mut x1258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1248, x1245); - let mut x1259: u32 = 0; - let mut x1260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1246, x1243); - let mut x1261: u32 = 0; - let mut x1262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1261, &mut x1262, x1260, x1244, x1241); - let mut x1263: u32 = 0; - let mut x1264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1263, &mut x1264, x1262, x1242, x1239); - let mut x1265: u32 = 0; - let mut x1266: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1265, &mut x1266, x1264, x1240, x1237); - let mut x1267: u32 = 0; - let mut x1268: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1267, &mut x1268, x1266, x1238, x1235); - let mut x1269: u32 = 0; - let mut x1270: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1269, &mut x1270, x1268, x1236, x1233); - let mut x1271: u32 = 0; - let mut x1272: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1271, &mut x1272, x1270, x1234, x1231); - let mut x1273: u32 = 0; - let mut x1274: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1273, &mut x1274, x1272, x1232, x1229); - let mut x1275: u32 = 0; - let mut x1276: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1275, &mut x1276, x1274, x1230, x1227); - let mut x1277: u32 = 0; - let mut x1278: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1277, &mut x1278, x1276, x1228, x1225); - let mut x1279: u32 = 0; - let mut x1280: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1226, x1223); - let mut x1281: u32 = 0; - let mut x1282: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1224, x1221); - let mut x1283: u32 = 0; - let mut x1284: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1283, &mut x1284, 0x0, x1187, x1251); - let mut x1285: u32 = 0; - let mut x1286: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1189, x1253); - let mut x1287: u32 = 0; - let mut x1288: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1191, x1255); - let mut x1289: u32 = 0; - let mut x1290: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1193, x1257); - let mut x1291: u32 = 0; - let mut x1292: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1195, x1259); - let mut x1293: u32 = 0; - let mut x1294: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1197, x1261); - let mut x1295: u32 = 0; - let mut x1296: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1199, x1263); - let mut x1297: u32 = 0; - let mut x1298: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1201, x1265); - let mut x1299: u32 = 0; - let mut x1300: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1203, x1267); - let mut x1301: u32 = 0; - let mut x1302: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1205, x1269); - let mut x1303: u32 = 0; - let mut x1304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1207, x1271); - let mut x1305: u32 = 0; - let mut x1306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1209, x1273); - let mut x1307: u32 = 0; - let mut x1308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1211, x1275); - let mut x1309: u32 = 0; - let mut x1310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1213, x1277); - let mut x1311: u32 = 0; - let mut x1312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1215, x1279); - let mut x1313: u32 = 0; - let mut x1314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1217, x1281); - let mut x1315: u32 = 0; - let mut x1316: u32 = 0; - fiat_bp512_mulx_u32(&mut x1315, &mut x1316, x7, 0x3c4c9d05); - let mut x1317: u32 = 0; - let mut x1318: u32 = 0; - fiat_bp512_mulx_u32(&mut x1317, &mut x1318, x7, 0xa9ff6450); - let mut x1319: u32 = 0; - let mut x1320: u32 = 0; - fiat_bp512_mulx_u32(&mut x1319, &mut x1320, x7, 0x202e1940); - let mut x1321: u32 = 0; - let mut x1322: u32 = 0; - fiat_bp512_mulx_u32(&mut x1321, &mut x1322, x7, 0x2056eecc); - let mut x1323: u32 = 0; - let mut x1324: u32 = 0; - fiat_bp512_mulx_u32(&mut x1323, &mut x1324, x7, 0xa16daa5f); - let mut x1325: u32 = 0; - let mut x1326: u32 = 0; - fiat_bp512_mulx_u32(&mut x1325, &mut x1326, x7, 0xd42bff83); - let mut x1327: u32 = 0; - let mut x1328: u32 = 0; - fiat_bp512_mulx_u32(&mut x1327, &mut x1328, x7, 0x19486fd8); - let mut x1329: u32 = 0; - let mut x1330: u32 = 0; - fiat_bp512_mulx_u32(&mut x1329, &mut x1330, x7, 0xd5898057); - let mut x1331: u32 = 0; - let mut x1332: u32 = 0; - fiat_bp512_mulx_u32(&mut x1331, &mut x1332, x7, 0xe0c19a77); - let mut x1333: u32 = 0; - let mut x1334: u32 = 0; - fiat_bp512_mulx_u32(&mut x1333, &mut x1334, x7, 0x83514a25); - let mut x1335: u32 = 0; - let mut x1336: u32 = 0; - fiat_bp512_mulx_u32(&mut x1335, &mut x1336, x7, 0x53b7f9bc); - let mut x1337: u32 = 0; - let mut x1338: u32 = 0; - fiat_bp512_mulx_u32(&mut x1337, &mut x1338, x7, 0x905affd3); - let mut x1339: u32 = 0; - let mut x1340: u32 = 0; - fiat_bp512_mulx_u32(&mut x1339, &mut x1340, x7, 0x793fb130); - let mut x1341: u32 = 0; - let mut x1342: u32 = 0; - fiat_bp512_mulx_u32(&mut x1341, &mut x1342, x7, 0x27157905); - let mut x1343: u32 = 0; - let mut x1344: u32 = 0; - fiat_bp512_mulx_u32(&mut x1343, &mut x1344, x7, 0x49ad144a); - let mut x1345: u32 = 0; - let mut x1346: u32 = 0; - fiat_bp512_mulx_u32(&mut x1345, &mut x1346, x7, 0x6158f205); - let mut x1347: u32 = 0; - let mut x1348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1347, &mut x1348, 0x0, x1346, x1343); - let mut x1349: u32 = 0; - let mut x1350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1349, &mut x1350, x1348, x1344, x1341); - let mut x1351: u32 = 0; - let mut x1352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1351, &mut x1352, x1350, x1342, x1339); - let mut x1353: u32 = 0; - let mut x1354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1340, x1337); - let mut x1355: u32 = 0; - let mut x1356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1338, x1335); - let mut x1357: u32 = 0; - let mut x1358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1336, x1333); - let mut x1359: u32 = 0; - let mut x1360: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1334, x1331); - let mut x1361: u32 = 0; - let mut x1362: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1332, x1329); - let mut x1363: u32 = 0; - let mut x1364: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1330, x1327); - let mut x1365: u32 = 0; - let mut x1366: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1328, x1325); - let mut x1367: u32 = 0; - let mut x1368: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1326, x1323); - let mut x1369: u32 = 0; - let mut x1370: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1324, x1321); - let mut x1371: u32 = 0; - let mut x1372: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1322, x1319); - let mut x1373: u32 = 0; - let mut x1374: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1320, x1317); - let mut x1375: u32 = 0; - let mut x1376: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1318, x1315); - let mut x1377: u32 = 0; - let mut x1378: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1377, &mut x1378, 0x0, x1285, x1345); - let mut x1379: u32 = 0; - let mut x1380: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1287, x1347); - let mut x1381: u32 = 0; - let mut x1382: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1289, x1349); - let mut x1383: u32 = 0; - let mut x1384: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1291, x1351); - let mut x1385: u32 = 0; - let mut x1386: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1385, &mut x1386, x1384, x1293, x1353); - let mut x1387: u32 = 0; - let mut x1388: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1295, x1355); - let mut x1389: u32 = 0; - let mut x1390: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1297, x1357); - let mut x1391: u32 = 0; - let mut x1392: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1391, &mut x1392, x1390, x1299, x1359); - let mut x1393: u32 = 0; - let mut x1394: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1301, x1361); - let mut x1395: u32 = 0; - let mut x1396: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1303, x1363); - let mut x1397: u32 = 0; - let mut x1398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1305, x1365); - let mut x1399: u32 = 0; - let mut x1400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1307, x1367); - let mut x1401: u32 = 0; - let mut x1402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1309, x1369); - let mut x1403: u32 = 0; - let mut x1404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1311, x1371); - let mut x1405: u32 = 0; - let mut x1406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1313, x1373); - let mut x1407: u32 = 0; - let mut x1408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1407, &mut x1408, x1406, (((x1314 as u32) + ((x1218 as u32) + ((x1186 as u32) + x1126))) + ((x1282 as u32) + x1222)), x1375); - let mut x1409: u32 = 0; - let mut x1410: u32 = 0; - fiat_bp512_mulx_u32(&mut x1409, &mut x1410, x1377, 0x7d89efc5); - let mut x1411: u32 = 0; - let mut x1412: u32 = 0; - fiat_bp512_mulx_u32(&mut x1411, &mut x1412, x1409, 0xaadd9db8); - let mut x1413: u32 = 0; - let mut x1414: u32 = 0; - fiat_bp512_mulx_u32(&mut x1413, &mut x1414, x1409, 0xdbe9c48b); - let mut x1415: u32 = 0; - let mut x1416: u32 = 0; - fiat_bp512_mulx_u32(&mut x1415, &mut x1416, x1409, 0x3fd4e6ae); - let mut x1417: u32 = 0; - let mut x1418: u32 = 0; - fiat_bp512_mulx_u32(&mut x1417, &mut x1418, x1409, 0x33c9fc07); - let mut x1419: u32 = 0; - let mut x1420: u32 = 0; - fiat_bp512_mulx_u32(&mut x1419, &mut x1420, x1409, 0xcb308db3); - let mut x1421: u32 = 0; - let mut x1422: u32 = 0; - fiat_bp512_mulx_u32(&mut x1421, &mut x1422, x1409, 0xb3c9d20e); - let mut x1423: u32 = 0; - let mut x1424: u32 = 0; - fiat_bp512_mulx_u32(&mut x1423, &mut x1424, x1409, 0xd6639cca); - let mut x1425: u32 = 0; - let mut x1426: u32 = 0; - fiat_bp512_mulx_u32(&mut x1425, &mut x1426, x1409, 0x70330871); - let mut x1427: u32 = 0; - let mut x1428: u32 = 0; - fiat_bp512_mulx_u32(&mut x1427, &mut x1428, x1409, 0x7d4d9b00); - let mut x1429: u32 = 0; - let mut x1430: u32 = 0; - fiat_bp512_mulx_u32(&mut x1429, &mut x1430, x1409, 0x9bc66842); - let mut x1431: u32 = 0; - let mut x1432: u32 = 0; - fiat_bp512_mulx_u32(&mut x1431, &mut x1432, x1409, 0xaecda12a); - let mut x1433: u32 = 0; - let mut x1434: u32 = 0; - fiat_bp512_mulx_u32(&mut x1433, &mut x1434, x1409, 0xe6a380e6); - let mut x1435: u32 = 0; - let mut x1436: u32 = 0; - fiat_bp512_mulx_u32(&mut x1435, &mut x1436, x1409, 0x2881ff2f); - let mut x1437: u32 = 0; - let mut x1438: u32 = 0; - fiat_bp512_mulx_u32(&mut x1437, &mut x1438, x1409, 0x2d82c685); - let mut x1439: u32 = 0; - let mut x1440: u32 = 0; - fiat_bp512_mulx_u32(&mut x1439, &mut x1440, x1409, 0x28aa6056); - let mut x1441: u32 = 0; - let mut x1442: u32 = 0; - fiat_bp512_mulx_u32(&mut x1441, &mut x1442, x1409, 0x583a48f3); - let mut x1443: u32 = 0; - let mut x1444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1443, &mut x1444, 0x0, x1442, x1439); - let mut x1445: u32 = 0; - let mut x1446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1445, &mut x1446, x1444, x1440, x1437); - let mut x1447: u32 = 0; - let mut x1448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1447, &mut x1448, x1446, x1438, x1435); - let mut x1449: u32 = 0; - let mut x1450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1449, &mut x1450, x1448, x1436, x1433); - let mut x1451: u32 = 0; - let mut x1452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1434, x1431); - let mut x1453: u32 = 0; - let mut x1454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1432, x1429); - let mut x1455: u32 = 0; - let mut x1456: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1430, x1427); - let mut x1457: u32 = 0; - let mut x1458: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1428, x1425); - let mut x1459: u32 = 0; - let mut x1460: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1426, x1423); - let mut x1461: u32 = 0; - let mut x1462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1424, x1421); - let mut x1463: u32 = 0; - let mut x1464: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1422, x1419); - let mut x1465: u32 = 0; - let mut x1466: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1420, x1417); - let mut x1467: u32 = 0; - let mut x1468: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1418, x1415); - let mut x1469: u32 = 0; - let mut x1470: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1416, x1413); - let mut x1471: u32 = 0; - let mut x1472: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1414, x1411); - let mut x1473: u32 = 0; - let mut x1474: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1473, &mut x1474, 0x0, x1377, x1441); - let mut x1475: u32 = 0; - let mut x1476: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1379, x1443); - let mut x1477: u32 = 0; - let mut x1478: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1477, &mut x1478, x1476, x1381, x1445); - let mut x1479: u32 = 0; - let mut x1480: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1479, &mut x1480, x1478, x1383, x1447); - let mut x1481: u32 = 0; - let mut x1482: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1481, &mut x1482, x1480, x1385, x1449); - let mut x1483: u32 = 0; - let mut x1484: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1483, &mut x1484, x1482, x1387, x1451); - let mut x1485: u32 = 0; - let mut x1486: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1485, &mut x1486, x1484, x1389, x1453); - let mut x1487: u32 = 0; - let mut x1488: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1487, &mut x1488, x1486, x1391, x1455); - let mut x1489: u32 = 0; - let mut x1490: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1489, &mut x1490, x1488, x1393, x1457); - let mut x1491: u32 = 0; - let mut x1492: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1491, &mut x1492, x1490, x1395, x1459); - let mut x1493: u32 = 0; - let mut x1494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1493, &mut x1494, x1492, x1397, x1461); - let mut x1495: u32 = 0; - let mut x1496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1495, &mut x1496, x1494, x1399, x1463); - let mut x1497: u32 = 0; - let mut x1498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1497, &mut x1498, x1496, x1401, x1465); - let mut x1499: u32 = 0; - let mut x1500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1499, &mut x1500, x1498, x1403, x1467); - let mut x1501: u32 = 0; - let mut x1502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1501, &mut x1502, x1500, x1405, x1469); - let mut x1503: u32 = 0; - let mut x1504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1503, &mut x1504, x1502, x1407, x1471); - let mut x1505: u32 = 0; - let mut x1506: u32 = 0; - fiat_bp512_mulx_u32(&mut x1505, &mut x1506, x8, 0x3c4c9d05); - let mut x1507: u32 = 0; - let mut x1508: u32 = 0; - fiat_bp512_mulx_u32(&mut x1507, &mut x1508, x8, 0xa9ff6450); - let mut x1509: u32 = 0; - let mut x1510: u32 = 0; - fiat_bp512_mulx_u32(&mut x1509, &mut x1510, x8, 0x202e1940); - let mut x1511: u32 = 0; - let mut x1512: u32 = 0; - fiat_bp512_mulx_u32(&mut x1511, &mut x1512, x8, 0x2056eecc); - let mut x1513: u32 = 0; - let mut x1514: u32 = 0; - fiat_bp512_mulx_u32(&mut x1513, &mut x1514, x8, 0xa16daa5f); - let mut x1515: u32 = 0; - let mut x1516: u32 = 0; - fiat_bp512_mulx_u32(&mut x1515, &mut x1516, x8, 0xd42bff83); - let mut x1517: u32 = 0; - let mut x1518: u32 = 0; - fiat_bp512_mulx_u32(&mut x1517, &mut x1518, x8, 0x19486fd8); - let mut x1519: u32 = 0; - let mut x1520: u32 = 0; - fiat_bp512_mulx_u32(&mut x1519, &mut x1520, x8, 0xd5898057); - let mut x1521: u32 = 0; - let mut x1522: u32 = 0; - fiat_bp512_mulx_u32(&mut x1521, &mut x1522, x8, 0xe0c19a77); - let mut x1523: u32 = 0; - let mut x1524: u32 = 0; - fiat_bp512_mulx_u32(&mut x1523, &mut x1524, x8, 0x83514a25); - let mut x1525: u32 = 0; - let mut x1526: u32 = 0; - fiat_bp512_mulx_u32(&mut x1525, &mut x1526, x8, 0x53b7f9bc); - let mut x1527: u32 = 0; - let mut x1528: u32 = 0; - fiat_bp512_mulx_u32(&mut x1527, &mut x1528, x8, 0x905affd3); - let mut x1529: u32 = 0; - let mut x1530: u32 = 0; - fiat_bp512_mulx_u32(&mut x1529, &mut x1530, x8, 0x793fb130); - let mut x1531: u32 = 0; - let mut x1532: u32 = 0; - fiat_bp512_mulx_u32(&mut x1531, &mut x1532, x8, 0x27157905); - let mut x1533: u32 = 0; - let mut x1534: u32 = 0; - fiat_bp512_mulx_u32(&mut x1533, &mut x1534, x8, 0x49ad144a); - let mut x1535: u32 = 0; - let mut x1536: u32 = 0; - fiat_bp512_mulx_u32(&mut x1535, &mut x1536, x8, 0x6158f205); - let mut x1537: u32 = 0; - let mut x1538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, 0x0, x1536, x1533); - let mut x1539: u32 = 0; - let mut x1540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1534, x1531); - let mut x1541: u32 = 0; - let mut x1542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1532, x1529); - let mut x1543: u32 = 0; - let mut x1544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1530, x1527); - let mut x1545: u32 = 0; - let mut x1546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1528, x1525); - let mut x1547: u32 = 0; - let mut x1548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1526, x1523); - let mut x1549: u32 = 0; - let mut x1550: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1524, x1521); - let mut x1551: u32 = 0; - let mut x1552: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1522, x1519); - let mut x1553: u32 = 0; - let mut x1554: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1520, x1517); - let mut x1555: u32 = 0; - let mut x1556: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1518, x1515); - let mut x1557: u32 = 0; - let mut x1558: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1557, &mut x1558, x1556, x1516, x1513); - let mut x1559: u32 = 0; - let mut x1560: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1559, &mut x1560, x1558, x1514, x1511); - let mut x1561: u32 = 0; - let mut x1562: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1561, &mut x1562, x1560, x1512, x1509); - let mut x1563: u32 = 0; - let mut x1564: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1563, &mut x1564, x1562, x1510, x1507); - let mut x1565: u32 = 0; - let mut x1566: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1565, &mut x1566, x1564, x1508, x1505); - let mut x1567: u32 = 0; - let mut x1568: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1567, &mut x1568, 0x0, x1475, x1535); - let mut x1569: u32 = 0; - let mut x1570: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1569, &mut x1570, x1568, x1477, x1537); - let mut x1571: u32 = 0; - let mut x1572: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1571, &mut x1572, x1570, x1479, x1539); - let mut x1573: u32 = 0; - let mut x1574: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1573, &mut x1574, x1572, x1481, x1541); - let mut x1575: u32 = 0; - let mut x1576: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1575, &mut x1576, x1574, x1483, x1543); - let mut x1577: u32 = 0; - let mut x1578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1485, x1545); - let mut x1579: u32 = 0; - let mut x1580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1487, x1547); - let mut x1581: u32 = 0; - let mut x1582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1489, x1549); - let mut x1583: u32 = 0; - let mut x1584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1491, x1551); - let mut x1585: u32 = 0; - let mut x1586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1493, x1553); - let mut x1587: u32 = 0; - let mut x1588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1495, x1555); - let mut x1589: u32 = 0; - let mut x1590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1497, x1557); - let mut x1591: u32 = 0; - let mut x1592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1499, x1559); - let mut x1593: u32 = 0; - let mut x1594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1501, x1561); - let mut x1595: u32 = 0; - let mut x1596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1503, x1563); - let mut x1597: u32 = 0; - let mut x1598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1597, &mut x1598, x1596, (((x1504 as u32) + ((x1408 as u32) + ((x1376 as u32) + x1316))) + ((x1472 as u32) + x1412)), x1565); - let mut x1599: u32 = 0; - let mut x1600: u32 = 0; - fiat_bp512_mulx_u32(&mut x1599, &mut x1600, x1567, 0x7d89efc5); - let mut x1601: u32 = 0; - let mut x1602: u32 = 0; - fiat_bp512_mulx_u32(&mut x1601, &mut x1602, x1599, 0xaadd9db8); - let mut x1603: u32 = 0; - let mut x1604: u32 = 0; - fiat_bp512_mulx_u32(&mut x1603, &mut x1604, x1599, 0xdbe9c48b); - let mut x1605: u32 = 0; - let mut x1606: u32 = 0; - fiat_bp512_mulx_u32(&mut x1605, &mut x1606, x1599, 0x3fd4e6ae); - let mut x1607: u32 = 0; - let mut x1608: u32 = 0; - fiat_bp512_mulx_u32(&mut x1607, &mut x1608, x1599, 0x33c9fc07); - let mut x1609: u32 = 0; - let mut x1610: u32 = 0; - fiat_bp512_mulx_u32(&mut x1609, &mut x1610, x1599, 0xcb308db3); - let mut x1611: u32 = 0; - let mut x1612: u32 = 0; - fiat_bp512_mulx_u32(&mut x1611, &mut x1612, x1599, 0xb3c9d20e); - let mut x1613: u32 = 0; - let mut x1614: u32 = 0; - fiat_bp512_mulx_u32(&mut x1613, &mut x1614, x1599, 0xd6639cca); - let mut x1615: u32 = 0; - let mut x1616: u32 = 0; - fiat_bp512_mulx_u32(&mut x1615, &mut x1616, x1599, 0x70330871); - let mut x1617: u32 = 0; - let mut x1618: u32 = 0; - fiat_bp512_mulx_u32(&mut x1617, &mut x1618, x1599, 0x7d4d9b00); - let mut x1619: u32 = 0; - let mut x1620: u32 = 0; - fiat_bp512_mulx_u32(&mut x1619, &mut x1620, x1599, 0x9bc66842); - let mut x1621: u32 = 0; - let mut x1622: u32 = 0; - fiat_bp512_mulx_u32(&mut x1621, &mut x1622, x1599, 0xaecda12a); - let mut x1623: u32 = 0; - let mut x1624: u32 = 0; - fiat_bp512_mulx_u32(&mut x1623, &mut x1624, x1599, 0xe6a380e6); - let mut x1625: u32 = 0; - let mut x1626: u32 = 0; - fiat_bp512_mulx_u32(&mut x1625, &mut x1626, x1599, 0x2881ff2f); - let mut x1627: u32 = 0; - let mut x1628: u32 = 0; - fiat_bp512_mulx_u32(&mut x1627, &mut x1628, x1599, 0x2d82c685); - let mut x1629: u32 = 0; - let mut x1630: u32 = 0; - fiat_bp512_mulx_u32(&mut x1629, &mut x1630, x1599, 0x28aa6056); - let mut x1631: u32 = 0; - let mut x1632: u32 = 0; - fiat_bp512_mulx_u32(&mut x1631, &mut x1632, x1599, 0x583a48f3); - let mut x1633: u32 = 0; - let mut x1634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, 0x0, x1632, x1629); - let mut x1635: u32 = 0; - let mut x1636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1630, x1627); - let mut x1637: u32 = 0; - let mut x1638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1628, x1625); - let mut x1639: u32 = 0; - let mut x1640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1626, x1623); - let mut x1641: u32 = 0; - let mut x1642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1624, x1621); - let mut x1643: u32 = 0; - let mut x1644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1622, x1619); - let mut x1645: u32 = 0; - let mut x1646: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1620, x1617); - let mut x1647: u32 = 0; - let mut x1648: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1618, x1615); - let mut x1649: u32 = 0; - let mut x1650: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1616, x1613); - let mut x1651: u32 = 0; - let mut x1652: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1614, x1611); - let mut x1653: u32 = 0; - let mut x1654: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1612, x1609); - let mut x1655: u32 = 0; - let mut x1656: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1610, x1607); - let mut x1657: u32 = 0; - let mut x1658: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1608, x1605); - let mut x1659: u32 = 0; - let mut x1660: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1606, x1603); - let mut x1661: u32 = 0; - let mut x1662: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1604, x1601); - let mut x1663: u32 = 0; - let mut x1664: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1663, &mut x1664, 0x0, x1567, x1631); - let mut x1665: u32 = 0; - let mut x1666: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1569, x1633); - let mut x1667: u32 = 0; - let mut x1668: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1571, x1635); - let mut x1669: u32 = 0; - let mut x1670: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1573, x1637); - let mut x1671: u32 = 0; - let mut x1672: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1575, x1639); - let mut x1673: u32 = 0; - let mut x1674: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1577, x1641); - let mut x1675: u32 = 0; - let mut x1676: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1579, x1643); - let mut x1677: u32 = 0; - let mut x1678: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1581, x1645); - let mut x1679: u32 = 0; - let mut x1680: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1679, &mut x1680, x1678, x1583, x1647); - let mut x1681: u32 = 0; - let mut x1682: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1585, x1649); - let mut x1683: u32 = 0; - let mut x1684: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1587, x1651); - let mut x1685: u32 = 0; - let mut x1686: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1589, x1653); - let mut x1687: u32 = 0; - let mut x1688: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1591, x1655); - let mut x1689: u32 = 0; - let mut x1690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1593, x1657); - let mut x1691: u32 = 0; - let mut x1692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1595, x1659); - let mut x1693: u32 = 0; - let mut x1694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1597, x1661); - let mut x1695: u32 = 0; - let mut x1696: u32 = 0; - fiat_bp512_mulx_u32(&mut x1695, &mut x1696, x9, 0x3c4c9d05); - let mut x1697: u32 = 0; - let mut x1698: u32 = 0; - fiat_bp512_mulx_u32(&mut x1697, &mut x1698, x9, 0xa9ff6450); - let mut x1699: u32 = 0; - let mut x1700: u32 = 0; - fiat_bp512_mulx_u32(&mut x1699, &mut x1700, x9, 0x202e1940); - let mut x1701: u32 = 0; - let mut x1702: u32 = 0; - fiat_bp512_mulx_u32(&mut x1701, &mut x1702, x9, 0x2056eecc); - let mut x1703: u32 = 0; - let mut x1704: u32 = 0; - fiat_bp512_mulx_u32(&mut x1703, &mut x1704, x9, 0xa16daa5f); - let mut x1705: u32 = 0; - let mut x1706: u32 = 0; - fiat_bp512_mulx_u32(&mut x1705, &mut x1706, x9, 0xd42bff83); - let mut x1707: u32 = 0; - let mut x1708: u32 = 0; - fiat_bp512_mulx_u32(&mut x1707, &mut x1708, x9, 0x19486fd8); - let mut x1709: u32 = 0; - let mut x1710: u32 = 0; - fiat_bp512_mulx_u32(&mut x1709, &mut x1710, x9, 0xd5898057); - let mut x1711: u32 = 0; - let mut x1712: u32 = 0; - fiat_bp512_mulx_u32(&mut x1711, &mut x1712, x9, 0xe0c19a77); - let mut x1713: u32 = 0; - let mut x1714: u32 = 0; - fiat_bp512_mulx_u32(&mut x1713, &mut x1714, x9, 0x83514a25); - let mut x1715: u32 = 0; - let mut x1716: u32 = 0; - fiat_bp512_mulx_u32(&mut x1715, &mut x1716, x9, 0x53b7f9bc); - let mut x1717: u32 = 0; - let mut x1718: u32 = 0; - fiat_bp512_mulx_u32(&mut x1717, &mut x1718, x9, 0x905affd3); - let mut x1719: u32 = 0; - let mut x1720: u32 = 0; - fiat_bp512_mulx_u32(&mut x1719, &mut x1720, x9, 0x793fb130); - let mut x1721: u32 = 0; - let mut x1722: u32 = 0; - fiat_bp512_mulx_u32(&mut x1721, &mut x1722, x9, 0x27157905); - let mut x1723: u32 = 0; - let mut x1724: u32 = 0; - fiat_bp512_mulx_u32(&mut x1723, &mut x1724, x9, 0x49ad144a); - let mut x1725: u32 = 0; - let mut x1726: u32 = 0; - fiat_bp512_mulx_u32(&mut x1725, &mut x1726, x9, 0x6158f205); - let mut x1727: u32 = 0; - let mut x1728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1727, &mut x1728, 0x0, x1726, x1723); - let mut x1729: u32 = 0; - let mut x1730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1729, &mut x1730, x1728, x1724, x1721); - let mut x1731: u32 = 0; - let mut x1732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1731, &mut x1732, x1730, x1722, x1719); - let mut x1733: u32 = 0; - let mut x1734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1733, &mut x1734, x1732, x1720, x1717); - let mut x1735: u32 = 0; - let mut x1736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1735, &mut x1736, x1734, x1718, x1715); - let mut x1737: u32 = 0; - let mut x1738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1737, &mut x1738, x1736, x1716, x1713); - let mut x1739: u32 = 0; - let mut x1740: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1739, &mut x1740, x1738, x1714, x1711); - let mut x1741: u32 = 0; - let mut x1742: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1741, &mut x1742, x1740, x1712, x1709); - let mut x1743: u32 = 0; - let mut x1744: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1743, &mut x1744, x1742, x1710, x1707); - let mut x1745: u32 = 0; - let mut x1746: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1745, &mut x1746, x1744, x1708, x1705); - let mut x1747: u32 = 0; - let mut x1748: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1747, &mut x1748, x1746, x1706, x1703); - let mut x1749: u32 = 0; - let mut x1750: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1704, x1701); - let mut x1751: u32 = 0; - let mut x1752: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1702, x1699); - let mut x1753: u32 = 0; - let mut x1754: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1700, x1697); - let mut x1755: u32 = 0; - let mut x1756: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1698, x1695); - let mut x1757: u32 = 0; - let mut x1758: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1757, &mut x1758, 0x0, x1665, x1725); - let mut x1759: u32 = 0; - let mut x1760: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1667, x1727); - let mut x1761: u32 = 0; - let mut x1762: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1669, x1729); - let mut x1763: u32 = 0; - let mut x1764: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1671, x1731); - let mut x1765: u32 = 0; - let mut x1766: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1673, x1733); - let mut x1767: u32 = 0; - let mut x1768: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1675, x1735); - let mut x1769: u32 = 0; - let mut x1770: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1677, x1737); - let mut x1771: u32 = 0; - let mut x1772: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1679, x1739); - let mut x1773: u32 = 0; - let mut x1774: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1773, &mut x1774, x1772, x1681, x1741); - let mut x1775: u32 = 0; - let mut x1776: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1775, &mut x1776, x1774, x1683, x1743); - let mut x1777: u32 = 0; - let mut x1778: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1777, &mut x1778, x1776, x1685, x1745); - let mut x1779: u32 = 0; - let mut x1780: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1779, &mut x1780, x1778, x1687, x1747); - let mut x1781: u32 = 0; - let mut x1782: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1781, &mut x1782, x1780, x1689, x1749); - let mut x1783: u32 = 0; - let mut x1784: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1783, &mut x1784, x1782, x1691, x1751); - let mut x1785: u32 = 0; - let mut x1786: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1785, &mut x1786, x1784, x1693, x1753); - let mut x1787: u32 = 0; - let mut x1788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1787, &mut x1788, x1786, (((x1694 as u32) + ((x1598 as u32) + ((x1566 as u32) + x1506))) + ((x1662 as u32) + x1602)), x1755); - let mut x1789: u32 = 0; - let mut x1790: u32 = 0; - fiat_bp512_mulx_u32(&mut x1789, &mut x1790, x1757, 0x7d89efc5); - let mut x1791: u32 = 0; - let mut x1792: u32 = 0; - fiat_bp512_mulx_u32(&mut x1791, &mut x1792, x1789, 0xaadd9db8); - let mut x1793: u32 = 0; - let mut x1794: u32 = 0; - fiat_bp512_mulx_u32(&mut x1793, &mut x1794, x1789, 0xdbe9c48b); - let mut x1795: u32 = 0; - let mut x1796: u32 = 0; - fiat_bp512_mulx_u32(&mut x1795, &mut x1796, x1789, 0x3fd4e6ae); - let mut x1797: u32 = 0; - let mut x1798: u32 = 0; - fiat_bp512_mulx_u32(&mut x1797, &mut x1798, x1789, 0x33c9fc07); - let mut x1799: u32 = 0; - let mut x1800: u32 = 0; - fiat_bp512_mulx_u32(&mut x1799, &mut x1800, x1789, 0xcb308db3); - let mut x1801: u32 = 0; - let mut x1802: u32 = 0; - fiat_bp512_mulx_u32(&mut x1801, &mut x1802, x1789, 0xb3c9d20e); - let mut x1803: u32 = 0; - let mut x1804: u32 = 0; - fiat_bp512_mulx_u32(&mut x1803, &mut x1804, x1789, 0xd6639cca); - let mut x1805: u32 = 0; - let mut x1806: u32 = 0; - fiat_bp512_mulx_u32(&mut x1805, &mut x1806, x1789, 0x70330871); - let mut x1807: u32 = 0; - let mut x1808: u32 = 0; - fiat_bp512_mulx_u32(&mut x1807, &mut x1808, x1789, 0x7d4d9b00); - let mut x1809: u32 = 0; - let mut x1810: u32 = 0; - fiat_bp512_mulx_u32(&mut x1809, &mut x1810, x1789, 0x9bc66842); - let mut x1811: u32 = 0; - let mut x1812: u32 = 0; - fiat_bp512_mulx_u32(&mut x1811, &mut x1812, x1789, 0xaecda12a); - let mut x1813: u32 = 0; - let mut x1814: u32 = 0; - fiat_bp512_mulx_u32(&mut x1813, &mut x1814, x1789, 0xe6a380e6); - let mut x1815: u32 = 0; - let mut x1816: u32 = 0; - fiat_bp512_mulx_u32(&mut x1815, &mut x1816, x1789, 0x2881ff2f); - let mut x1817: u32 = 0; - let mut x1818: u32 = 0; - fiat_bp512_mulx_u32(&mut x1817, &mut x1818, x1789, 0x2d82c685); - let mut x1819: u32 = 0; - let mut x1820: u32 = 0; - fiat_bp512_mulx_u32(&mut x1819, &mut x1820, x1789, 0x28aa6056); - let mut x1821: u32 = 0; - let mut x1822: u32 = 0; - fiat_bp512_mulx_u32(&mut x1821, &mut x1822, x1789, 0x583a48f3); - let mut x1823: u32 = 0; - let mut x1824: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1823, &mut x1824, 0x0, x1822, x1819); - let mut x1825: u32 = 0; - let mut x1826: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1825, &mut x1826, x1824, x1820, x1817); - let mut x1827: u32 = 0; - let mut x1828: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1827, &mut x1828, x1826, x1818, x1815); - let mut x1829: u32 = 0; - let mut x1830: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1829, &mut x1830, x1828, x1816, x1813); - let mut x1831: u32 = 0; - let mut x1832: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1831, &mut x1832, x1830, x1814, x1811); - let mut x1833: u32 = 0; - let mut x1834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1833, &mut x1834, x1832, x1812, x1809); - let mut x1835: u32 = 0; - let mut x1836: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1835, &mut x1836, x1834, x1810, x1807); - let mut x1837: u32 = 0; - let mut x1838: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1837, &mut x1838, x1836, x1808, x1805); - let mut x1839: u32 = 0; - let mut x1840: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1839, &mut x1840, x1838, x1806, x1803); - let mut x1841: u32 = 0; - let mut x1842: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1841, &mut x1842, x1840, x1804, x1801); - let mut x1843: u32 = 0; - let mut x1844: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1843, &mut x1844, x1842, x1802, x1799); - let mut x1845: u32 = 0; - let mut x1846: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1845, &mut x1846, x1844, x1800, x1797); - let mut x1847: u32 = 0; - let mut x1848: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1847, &mut x1848, x1846, x1798, x1795); - let mut x1849: u32 = 0; - let mut x1850: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1849, &mut x1850, x1848, x1796, x1793); - let mut x1851: u32 = 0; - let mut x1852: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1851, &mut x1852, x1850, x1794, x1791); - let mut x1853: u32 = 0; - let mut x1854: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1853, &mut x1854, 0x0, x1757, x1821); - let mut x1855: u32 = 0; - let mut x1856: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1855, &mut x1856, x1854, x1759, x1823); - let mut x1857: u32 = 0; - let mut x1858: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1857, &mut x1858, x1856, x1761, x1825); - let mut x1859: u32 = 0; - let mut x1860: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1859, &mut x1860, x1858, x1763, x1827); - let mut x1861: u32 = 0; - let mut x1862: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1861, &mut x1862, x1860, x1765, x1829); - let mut x1863: u32 = 0; - let mut x1864: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1863, &mut x1864, x1862, x1767, x1831); - let mut x1865: u32 = 0; - let mut x1866: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1865, &mut x1866, x1864, x1769, x1833); - let mut x1867: u32 = 0; - let mut x1868: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1867, &mut x1868, x1866, x1771, x1835); - let mut x1869: u32 = 0; - let mut x1870: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1869, &mut x1870, x1868, x1773, x1837); - let mut x1871: u32 = 0; - let mut x1872: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1871, &mut x1872, x1870, x1775, x1839); - let mut x1873: u32 = 0; - let mut x1874: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1873, &mut x1874, x1872, x1777, x1841); - let mut x1875: u32 = 0; - let mut x1876: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1875, &mut x1876, x1874, x1779, x1843); - let mut x1877: u32 = 0; - let mut x1878: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1877, &mut x1878, x1876, x1781, x1845); - let mut x1879: u32 = 0; - let mut x1880: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1879, &mut x1880, x1878, x1783, x1847); - let mut x1881: u32 = 0; - let mut x1882: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1881, &mut x1882, x1880, x1785, x1849); - let mut x1883: u32 = 0; - let mut x1884: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1883, &mut x1884, x1882, x1787, x1851); - let mut x1885: u32 = 0; - let mut x1886: u32 = 0; - fiat_bp512_mulx_u32(&mut x1885, &mut x1886, x10, 0x3c4c9d05); - let mut x1887: u32 = 0; - let mut x1888: u32 = 0; - fiat_bp512_mulx_u32(&mut x1887, &mut x1888, x10, 0xa9ff6450); - let mut x1889: u32 = 0; - let mut x1890: u32 = 0; - fiat_bp512_mulx_u32(&mut x1889, &mut x1890, x10, 0x202e1940); - let mut x1891: u32 = 0; - let mut x1892: u32 = 0; - fiat_bp512_mulx_u32(&mut x1891, &mut x1892, x10, 0x2056eecc); - let mut x1893: u32 = 0; - let mut x1894: u32 = 0; - fiat_bp512_mulx_u32(&mut x1893, &mut x1894, x10, 0xa16daa5f); - let mut x1895: u32 = 0; - let mut x1896: u32 = 0; - fiat_bp512_mulx_u32(&mut x1895, &mut x1896, x10, 0xd42bff83); - let mut x1897: u32 = 0; - let mut x1898: u32 = 0; - fiat_bp512_mulx_u32(&mut x1897, &mut x1898, x10, 0x19486fd8); - let mut x1899: u32 = 0; - let mut x1900: u32 = 0; - fiat_bp512_mulx_u32(&mut x1899, &mut x1900, x10, 0xd5898057); - let mut x1901: u32 = 0; - let mut x1902: u32 = 0; - fiat_bp512_mulx_u32(&mut x1901, &mut x1902, x10, 0xe0c19a77); - let mut x1903: u32 = 0; - let mut x1904: u32 = 0; - fiat_bp512_mulx_u32(&mut x1903, &mut x1904, x10, 0x83514a25); - let mut x1905: u32 = 0; - let mut x1906: u32 = 0; - fiat_bp512_mulx_u32(&mut x1905, &mut x1906, x10, 0x53b7f9bc); - let mut x1907: u32 = 0; - let mut x1908: u32 = 0; - fiat_bp512_mulx_u32(&mut x1907, &mut x1908, x10, 0x905affd3); - let mut x1909: u32 = 0; - let mut x1910: u32 = 0; - fiat_bp512_mulx_u32(&mut x1909, &mut x1910, x10, 0x793fb130); - let mut x1911: u32 = 0; - let mut x1912: u32 = 0; - fiat_bp512_mulx_u32(&mut x1911, &mut x1912, x10, 0x27157905); - let mut x1913: u32 = 0; - let mut x1914: u32 = 0; - fiat_bp512_mulx_u32(&mut x1913, &mut x1914, x10, 0x49ad144a); - let mut x1915: u32 = 0; - let mut x1916: u32 = 0; - fiat_bp512_mulx_u32(&mut x1915, &mut x1916, x10, 0x6158f205); - let mut x1917: u32 = 0; - let mut x1918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1916, x1913); - let mut x1919: u32 = 0; - let mut x1920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1914, x1911); - let mut x1921: u32 = 0; - let mut x1922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1912, x1909); - let mut x1923: u32 = 0; - let mut x1924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1910, x1907); - let mut x1925: u32 = 0; - let mut x1926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1908, x1905); - let mut x1927: u32 = 0; - let mut x1928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1906, x1903); - let mut x1929: u32 = 0; - let mut x1930: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1904, x1901); - let mut x1931: u32 = 0; - let mut x1932: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1902, x1899); - let mut x1933: u32 = 0; - let mut x1934: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1900, x1897); - let mut x1935: u32 = 0; - let mut x1936: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1898, x1895); - let mut x1937: u32 = 0; - let mut x1938: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1896, x1893); - let mut x1939: u32 = 0; - let mut x1940: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1894, x1891); - let mut x1941: u32 = 0; - let mut x1942: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1892, x1889); - let mut x1943: u32 = 0; - let mut x1944: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1890, x1887); - let mut x1945: u32 = 0; - let mut x1946: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1888, x1885); - let mut x1947: u32 = 0; - let mut x1948: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, 0x0, x1855, x1915); - let mut x1949: u32 = 0; - let mut x1950: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1857, x1917); - let mut x1951: u32 = 0; - let mut x1952: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1951, &mut x1952, x1950, x1859, x1919); - let mut x1953: u32 = 0; - let mut x1954: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1953, &mut x1954, x1952, x1861, x1921); - let mut x1955: u32 = 0; - let mut x1956: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1955, &mut x1956, x1954, x1863, x1923); - let mut x1957: u32 = 0; - let mut x1958: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1957, &mut x1958, x1956, x1865, x1925); - let mut x1959: u32 = 0; - let mut x1960: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1959, &mut x1960, x1958, x1867, x1927); - let mut x1961: u32 = 0; - let mut x1962: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1961, &mut x1962, x1960, x1869, x1929); - let mut x1963: u32 = 0; - let mut x1964: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1963, &mut x1964, x1962, x1871, x1931); - let mut x1965: u32 = 0; - let mut x1966: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1965, &mut x1966, x1964, x1873, x1933); - let mut x1967: u32 = 0; - let mut x1968: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1967, &mut x1968, x1966, x1875, x1935); - let mut x1969: u32 = 0; - let mut x1970: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1969, &mut x1970, x1968, x1877, x1937); - let mut x1971: u32 = 0; - let mut x1972: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1971, &mut x1972, x1970, x1879, x1939); - let mut x1973: u32 = 0; - let mut x1974: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1973, &mut x1974, x1972, x1881, x1941); - let mut x1975: u32 = 0; - let mut x1976: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1975, &mut x1976, x1974, x1883, x1943); - let mut x1977: u32 = 0; - let mut x1978: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1977, &mut x1978, x1976, (((x1884 as u32) + ((x1788 as u32) + ((x1756 as u32) + x1696))) + ((x1852 as u32) + x1792)), x1945); - let mut x1979: u32 = 0; - let mut x1980: u32 = 0; - fiat_bp512_mulx_u32(&mut x1979, &mut x1980, x1947, 0x7d89efc5); - let mut x1981: u32 = 0; - let mut x1982: u32 = 0; - fiat_bp512_mulx_u32(&mut x1981, &mut x1982, x1979, 0xaadd9db8); - let mut x1983: u32 = 0; - let mut x1984: u32 = 0; - fiat_bp512_mulx_u32(&mut x1983, &mut x1984, x1979, 0xdbe9c48b); - let mut x1985: u32 = 0; - let mut x1986: u32 = 0; - fiat_bp512_mulx_u32(&mut x1985, &mut x1986, x1979, 0x3fd4e6ae); - let mut x1987: u32 = 0; - let mut x1988: u32 = 0; - fiat_bp512_mulx_u32(&mut x1987, &mut x1988, x1979, 0x33c9fc07); - let mut x1989: u32 = 0; - let mut x1990: u32 = 0; - fiat_bp512_mulx_u32(&mut x1989, &mut x1990, x1979, 0xcb308db3); - let mut x1991: u32 = 0; - let mut x1992: u32 = 0; - fiat_bp512_mulx_u32(&mut x1991, &mut x1992, x1979, 0xb3c9d20e); - let mut x1993: u32 = 0; - let mut x1994: u32 = 0; - fiat_bp512_mulx_u32(&mut x1993, &mut x1994, x1979, 0xd6639cca); - let mut x1995: u32 = 0; - let mut x1996: u32 = 0; - fiat_bp512_mulx_u32(&mut x1995, &mut x1996, x1979, 0x70330871); - let mut x1997: u32 = 0; - let mut x1998: u32 = 0; - fiat_bp512_mulx_u32(&mut x1997, &mut x1998, x1979, 0x7d4d9b00); - let mut x1999: u32 = 0; - let mut x2000: u32 = 0; - fiat_bp512_mulx_u32(&mut x1999, &mut x2000, x1979, 0x9bc66842); - let mut x2001: u32 = 0; - let mut x2002: u32 = 0; - fiat_bp512_mulx_u32(&mut x2001, &mut x2002, x1979, 0xaecda12a); - let mut x2003: u32 = 0; - let mut x2004: u32 = 0; - fiat_bp512_mulx_u32(&mut x2003, &mut x2004, x1979, 0xe6a380e6); - let mut x2005: u32 = 0; - let mut x2006: u32 = 0; - fiat_bp512_mulx_u32(&mut x2005, &mut x2006, x1979, 0x2881ff2f); - let mut x2007: u32 = 0; - let mut x2008: u32 = 0; - fiat_bp512_mulx_u32(&mut x2007, &mut x2008, x1979, 0x2d82c685); - let mut x2009: u32 = 0; - let mut x2010: u32 = 0; - fiat_bp512_mulx_u32(&mut x2009, &mut x2010, x1979, 0x28aa6056); - let mut x2011: u32 = 0; - let mut x2012: u32 = 0; - fiat_bp512_mulx_u32(&mut x2011, &mut x2012, x1979, 0x583a48f3); - let mut x2013: u32 = 0; - let mut x2014: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2013, &mut x2014, 0x0, x2012, x2009); - let mut x2015: u32 = 0; - let mut x2016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, x2014, x2010, x2007); - let mut x2017: u32 = 0; - let mut x2018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x2008, x2005); - let mut x2019: u32 = 0; - let mut x2020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x2006, x2003); - let mut x2021: u32 = 0; - let mut x2022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x2004, x2001); - let mut x2023: u32 = 0; - let mut x2024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x2002, x1999); - let mut x2025: u32 = 0; - let mut x2026: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x2000, x1997); - let mut x2027: u32 = 0; - let mut x2028: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1998, x1995); - let mut x2029: u32 = 0; - let mut x2030: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1996, x1993); - let mut x2031: u32 = 0; - let mut x2032: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1994, x1991); - let mut x2033: u32 = 0; - let mut x2034: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1992, x1989); - let mut x2035: u32 = 0; - let mut x2036: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1990, x1987); - let mut x2037: u32 = 0; - let mut x2038: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1988, x1985); - let mut x2039: u32 = 0; - let mut x2040: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1986, x1983); - let mut x2041: u32 = 0; - let mut x2042: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1984, x1981); - let mut x2043: u32 = 0; - let mut x2044: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, 0x0, x1947, x2011); - let mut x2045: u32 = 0; - let mut x2046: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2013); - let mut x2047: u32 = 0; - let mut x2048: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2015); - let mut x2049: u32 = 0; - let mut x2050: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2049, &mut x2050, x2048, x1953, x2017); - let mut x2051: u32 = 0; - let mut x2052: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2051, &mut x2052, x2050, x1955, x2019); - let mut x2053: u32 = 0; - let mut x2054: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2053, &mut x2054, x2052, x1957, x2021); - let mut x2055: u32 = 0; - let mut x2056: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2055, &mut x2056, x2054, x1959, x2023); - let mut x2057: u32 = 0; - let mut x2058: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2057, &mut x2058, x2056, x1961, x2025); - let mut x2059: u32 = 0; - let mut x2060: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2059, &mut x2060, x2058, x1963, x2027); - let mut x2061: u32 = 0; - let mut x2062: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2061, &mut x2062, x2060, x1965, x2029); - let mut x2063: u32 = 0; - let mut x2064: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2063, &mut x2064, x2062, x1967, x2031); - let mut x2065: u32 = 0; - let mut x2066: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2065, &mut x2066, x2064, x1969, x2033); - let mut x2067: u32 = 0; - let mut x2068: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2067, &mut x2068, x2066, x1971, x2035); - let mut x2069: u32 = 0; - let mut x2070: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2069, &mut x2070, x2068, x1973, x2037); - let mut x2071: u32 = 0; - let mut x2072: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2071, &mut x2072, x2070, x1975, x2039); - let mut x2073: u32 = 0; - let mut x2074: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2073, &mut x2074, x2072, x1977, x2041); - let mut x2075: u32 = 0; - let mut x2076: u32 = 0; - fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x11, 0x3c4c9d05); - let mut x2077: u32 = 0; - let mut x2078: u32 = 0; - fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x11, 0xa9ff6450); - let mut x2079: u32 = 0; - let mut x2080: u32 = 0; - fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x11, 0x202e1940); - let mut x2081: u32 = 0; - let mut x2082: u32 = 0; - fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x11, 0x2056eecc); - let mut x2083: u32 = 0; - let mut x2084: u32 = 0; - fiat_bp512_mulx_u32(&mut x2083, &mut x2084, x11, 0xa16daa5f); - let mut x2085: u32 = 0; - let mut x2086: u32 = 0; - fiat_bp512_mulx_u32(&mut x2085, &mut x2086, x11, 0xd42bff83); - let mut x2087: u32 = 0; - let mut x2088: u32 = 0; - fiat_bp512_mulx_u32(&mut x2087, &mut x2088, x11, 0x19486fd8); - let mut x2089: u32 = 0; - let mut x2090: u32 = 0; - fiat_bp512_mulx_u32(&mut x2089, &mut x2090, x11, 0xd5898057); - let mut x2091: u32 = 0; - let mut x2092: u32 = 0; - fiat_bp512_mulx_u32(&mut x2091, &mut x2092, x11, 0xe0c19a77); - let mut x2093: u32 = 0; - let mut x2094: u32 = 0; - fiat_bp512_mulx_u32(&mut x2093, &mut x2094, x11, 0x83514a25); - let mut x2095: u32 = 0; - let mut x2096: u32 = 0; - fiat_bp512_mulx_u32(&mut x2095, &mut x2096, x11, 0x53b7f9bc); - let mut x2097: u32 = 0; - let mut x2098: u32 = 0; - fiat_bp512_mulx_u32(&mut x2097, &mut x2098, x11, 0x905affd3); - let mut x2099: u32 = 0; - let mut x2100: u32 = 0; - fiat_bp512_mulx_u32(&mut x2099, &mut x2100, x11, 0x793fb130); - let mut x2101: u32 = 0; - let mut x2102: u32 = 0; - fiat_bp512_mulx_u32(&mut x2101, &mut x2102, x11, 0x27157905); - let mut x2103: u32 = 0; - let mut x2104: u32 = 0; - fiat_bp512_mulx_u32(&mut x2103, &mut x2104, x11, 0x49ad144a); - let mut x2105: u32 = 0; - let mut x2106: u32 = 0; - fiat_bp512_mulx_u32(&mut x2105, &mut x2106, x11, 0x6158f205); - let mut x2107: u32 = 0; - let mut x2108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, 0x0, x2106, x2103); - let mut x2109: u32 = 0; - let mut x2110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2104, x2101); - let mut x2111: u32 = 0; - let mut x2112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2102, x2099); - let mut x2113: u32 = 0; - let mut x2114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2113, &mut x2114, x2112, x2100, x2097); - let mut x2115: u32 = 0; - let mut x2116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2115, &mut x2116, x2114, x2098, x2095); - let mut x2117: u32 = 0; - let mut x2118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2117, &mut x2118, x2116, x2096, x2093); - let mut x2119: u32 = 0; - let mut x2120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2119, &mut x2120, x2118, x2094, x2091); - let mut x2121: u32 = 0; - let mut x2122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2121, &mut x2122, x2120, x2092, x2089); - let mut x2123: u32 = 0; - let mut x2124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2123, &mut x2124, x2122, x2090, x2087); - let mut x2125: u32 = 0; - let mut x2126: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2125, &mut x2126, x2124, x2088, x2085); - let mut x2127: u32 = 0; - let mut x2128: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2127, &mut x2128, x2126, x2086, x2083); - let mut x2129: u32 = 0; - let mut x2130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2129, &mut x2130, x2128, x2084, x2081); - let mut x2131: u32 = 0; - let mut x2132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2131, &mut x2132, x2130, x2082, x2079); - let mut x2133: u32 = 0; - let mut x2134: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2133, &mut x2134, x2132, x2080, x2077); - let mut x2135: u32 = 0; - let mut x2136: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2135, &mut x2136, x2134, x2078, x2075); - let mut x2137: u32 = 0; - let mut x2138: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2137, &mut x2138, 0x0, x2045, x2105); - let mut x2139: u32 = 0; - let mut x2140: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2139, &mut x2140, x2138, x2047, x2107); - let mut x2141: u32 = 0; - let mut x2142: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2141, &mut x2142, x2140, x2049, x2109); - let mut x2143: u32 = 0; - let mut x2144: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2143, &mut x2144, x2142, x2051, x2111); - let mut x2145: u32 = 0; - let mut x2146: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2145, &mut x2146, x2144, x2053, x2113); - let mut x2147: u32 = 0; - let mut x2148: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2147, &mut x2148, x2146, x2055, x2115); - let mut x2149: u32 = 0; - let mut x2150: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2149, &mut x2150, x2148, x2057, x2117); - let mut x2151: u32 = 0; - let mut x2152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2151, &mut x2152, x2150, x2059, x2119); - let mut x2153: u32 = 0; - let mut x2154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2153, &mut x2154, x2152, x2061, x2121); - let mut x2155: u32 = 0; - let mut x2156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2155, &mut x2156, x2154, x2063, x2123); - let mut x2157: u32 = 0; - let mut x2158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2157, &mut x2158, x2156, x2065, x2125); - let mut x2159: u32 = 0; - let mut x2160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2159, &mut x2160, x2158, x2067, x2127); - let mut x2161: u32 = 0; - let mut x2162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2161, &mut x2162, x2160, x2069, x2129); - let mut x2163: u32 = 0; - let mut x2164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2163, &mut x2164, x2162, x2071, x2131); - let mut x2165: u32 = 0; - let mut x2166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2165, &mut x2166, x2164, x2073, x2133); - let mut x2167: u32 = 0; - let mut x2168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2167, &mut x2168, x2166, (((x2074 as u32) + ((x1978 as u32) + ((x1946 as u32) + x1886))) + ((x2042 as u32) + x1982)), x2135); - let mut x2169: u32 = 0; - let mut x2170: u32 = 0; - fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x2137, 0x7d89efc5); - let mut x2171: u32 = 0; - let mut x2172: u32 = 0; - fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x2169, 0xaadd9db8); - let mut x2173: u32 = 0; - let mut x2174: u32 = 0; - fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x2169, 0xdbe9c48b); - let mut x2175: u32 = 0; - let mut x2176: u32 = 0; - fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x2169, 0x3fd4e6ae); - let mut x2177: u32 = 0; - let mut x2178: u32 = 0; - fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x2169, 0x33c9fc07); - let mut x2179: u32 = 0; - let mut x2180: u32 = 0; - fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x2169, 0xcb308db3); - let mut x2181: u32 = 0; - let mut x2182: u32 = 0; - fiat_bp512_mulx_u32(&mut x2181, &mut x2182, x2169, 0xb3c9d20e); - let mut x2183: u32 = 0; - let mut x2184: u32 = 0; - fiat_bp512_mulx_u32(&mut x2183, &mut x2184, x2169, 0xd6639cca); - let mut x2185: u32 = 0; - let mut x2186: u32 = 0; - fiat_bp512_mulx_u32(&mut x2185, &mut x2186, x2169, 0x70330871); - let mut x2187: u32 = 0; - let mut x2188: u32 = 0; - fiat_bp512_mulx_u32(&mut x2187, &mut x2188, x2169, 0x7d4d9b00); - let mut x2189: u32 = 0; - let mut x2190: u32 = 0; - fiat_bp512_mulx_u32(&mut x2189, &mut x2190, x2169, 0x9bc66842); - let mut x2191: u32 = 0; - let mut x2192: u32 = 0; - fiat_bp512_mulx_u32(&mut x2191, &mut x2192, x2169, 0xaecda12a); - let mut x2193: u32 = 0; - let mut x2194: u32 = 0; - fiat_bp512_mulx_u32(&mut x2193, &mut x2194, x2169, 0xe6a380e6); - let mut x2195: u32 = 0; - let mut x2196: u32 = 0; - fiat_bp512_mulx_u32(&mut x2195, &mut x2196, x2169, 0x2881ff2f); - let mut x2197: u32 = 0; - let mut x2198: u32 = 0; - fiat_bp512_mulx_u32(&mut x2197, &mut x2198, x2169, 0x2d82c685); - let mut x2199: u32 = 0; - let mut x2200: u32 = 0; - fiat_bp512_mulx_u32(&mut x2199, &mut x2200, x2169, 0x28aa6056); - let mut x2201: u32 = 0; - let mut x2202: u32 = 0; - fiat_bp512_mulx_u32(&mut x2201, &mut x2202, x2169, 0x583a48f3); - let mut x2203: u32 = 0; - let mut x2204: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, 0x0, x2202, x2199); - let mut x2205: u32 = 0; - let mut x2206: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2200, x2197); - let mut x2207: u32 = 0; - let mut x2208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2198, x2195); - let mut x2209: u32 = 0; - let mut x2210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2196, x2193); - let mut x2211: u32 = 0; - let mut x2212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2211, &mut x2212, x2210, x2194, x2191); - let mut x2213: u32 = 0; - let mut x2214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2213, &mut x2214, x2212, x2192, x2189); - let mut x2215: u32 = 0; - let mut x2216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2215, &mut x2216, x2214, x2190, x2187); - let mut x2217: u32 = 0; - let mut x2218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2217, &mut x2218, x2216, x2188, x2185); - let mut x2219: u32 = 0; - let mut x2220: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2219, &mut x2220, x2218, x2186, x2183); - let mut x2221: u32 = 0; - let mut x2222: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2221, &mut x2222, x2220, x2184, x2181); - let mut x2223: u32 = 0; - let mut x2224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2223, &mut x2224, x2222, x2182, x2179); - let mut x2225: u32 = 0; - let mut x2226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2225, &mut x2226, x2224, x2180, x2177); - let mut x2227: u32 = 0; - let mut x2228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2227, &mut x2228, x2226, x2178, x2175); - let mut x2229: u32 = 0; - let mut x2230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2229, &mut x2230, x2228, x2176, x2173); - let mut x2231: u32 = 0; - let mut x2232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2231, &mut x2232, x2230, x2174, x2171); - let mut x2233: u32 = 0; - let mut x2234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2233, &mut x2234, 0x0, x2137, x2201); - let mut x2235: u32 = 0; - let mut x2236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2235, &mut x2236, x2234, x2139, x2203); - let mut x2237: u32 = 0; - let mut x2238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2237, &mut x2238, x2236, x2141, x2205); - let mut x2239: u32 = 0; - let mut x2240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2239, &mut x2240, x2238, x2143, x2207); - let mut x2241: u32 = 0; - let mut x2242: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2241, &mut x2242, x2240, x2145, x2209); - let mut x2243: u32 = 0; - let mut x2244: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2243, &mut x2244, x2242, x2147, x2211); - let mut x2245: u32 = 0; - let mut x2246: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2245, &mut x2246, x2244, x2149, x2213); - let mut x2247: u32 = 0; - let mut x2248: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2247, &mut x2248, x2246, x2151, x2215); - let mut x2249: u32 = 0; - let mut x2250: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2249, &mut x2250, x2248, x2153, x2217); - let mut x2251: u32 = 0; - let mut x2252: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2251, &mut x2252, x2250, x2155, x2219); - let mut x2253: u32 = 0; - let mut x2254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2253, &mut x2254, x2252, x2157, x2221); - let mut x2255: u32 = 0; - let mut x2256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2255, &mut x2256, x2254, x2159, x2223); - let mut x2257: u32 = 0; - let mut x2258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2257, &mut x2258, x2256, x2161, x2225); - let mut x2259: u32 = 0; - let mut x2260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2259, &mut x2260, x2258, x2163, x2227); - let mut x2261: u32 = 0; - let mut x2262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2261, &mut x2262, x2260, x2165, x2229); - let mut x2263: u32 = 0; - let mut x2264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2263, &mut x2264, x2262, x2167, x2231); - let mut x2265: u32 = 0; - let mut x2266: u32 = 0; - fiat_bp512_mulx_u32(&mut x2265, &mut x2266, x12, 0x3c4c9d05); - let mut x2267: u32 = 0; - let mut x2268: u32 = 0; - fiat_bp512_mulx_u32(&mut x2267, &mut x2268, x12, 0xa9ff6450); - let mut x2269: u32 = 0; - let mut x2270: u32 = 0; - fiat_bp512_mulx_u32(&mut x2269, &mut x2270, x12, 0x202e1940); - let mut x2271: u32 = 0; - let mut x2272: u32 = 0; - fiat_bp512_mulx_u32(&mut x2271, &mut x2272, x12, 0x2056eecc); - let mut x2273: u32 = 0; - let mut x2274: u32 = 0; - fiat_bp512_mulx_u32(&mut x2273, &mut x2274, x12, 0xa16daa5f); - let mut x2275: u32 = 0; - let mut x2276: u32 = 0; - fiat_bp512_mulx_u32(&mut x2275, &mut x2276, x12, 0xd42bff83); - let mut x2277: u32 = 0; - let mut x2278: u32 = 0; - fiat_bp512_mulx_u32(&mut x2277, &mut x2278, x12, 0x19486fd8); - let mut x2279: u32 = 0; - let mut x2280: u32 = 0; - fiat_bp512_mulx_u32(&mut x2279, &mut x2280, x12, 0xd5898057); - let mut x2281: u32 = 0; - let mut x2282: u32 = 0; - fiat_bp512_mulx_u32(&mut x2281, &mut x2282, x12, 0xe0c19a77); - let mut x2283: u32 = 0; - let mut x2284: u32 = 0; - fiat_bp512_mulx_u32(&mut x2283, &mut x2284, x12, 0x83514a25); - let mut x2285: u32 = 0; - let mut x2286: u32 = 0; - fiat_bp512_mulx_u32(&mut x2285, &mut x2286, x12, 0x53b7f9bc); - let mut x2287: u32 = 0; - let mut x2288: u32 = 0; - fiat_bp512_mulx_u32(&mut x2287, &mut x2288, x12, 0x905affd3); - let mut x2289: u32 = 0; - let mut x2290: u32 = 0; - fiat_bp512_mulx_u32(&mut x2289, &mut x2290, x12, 0x793fb130); - let mut x2291: u32 = 0; - let mut x2292: u32 = 0; - fiat_bp512_mulx_u32(&mut x2291, &mut x2292, x12, 0x27157905); - let mut x2293: u32 = 0; - let mut x2294: u32 = 0; - fiat_bp512_mulx_u32(&mut x2293, &mut x2294, x12, 0x49ad144a); - let mut x2295: u32 = 0; - let mut x2296: u32 = 0; - fiat_bp512_mulx_u32(&mut x2295, &mut x2296, x12, 0x6158f205); - let mut x2297: u32 = 0; - let mut x2298: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2297, &mut x2298, 0x0, x2296, x2293); - let mut x2299: u32 = 0; - let mut x2300: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2299, &mut x2300, x2298, x2294, x2291); - let mut x2301: u32 = 0; - let mut x2302: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2301, &mut x2302, x2300, x2292, x2289); - let mut x2303: u32 = 0; - let mut x2304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2303, &mut x2304, x2302, x2290, x2287); - let mut x2305: u32 = 0; - let mut x2306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2305, &mut x2306, x2304, x2288, x2285); - let mut x2307: u32 = 0; - let mut x2308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2307, &mut x2308, x2306, x2286, x2283); - let mut x2309: u32 = 0; - let mut x2310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2309, &mut x2310, x2308, x2284, x2281); - let mut x2311: u32 = 0; - let mut x2312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, x2310, x2282, x2279); - let mut x2313: u32 = 0; - let mut x2314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2280, x2277); - let mut x2315: u32 = 0; - let mut x2316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2278, x2275); - let mut x2317: u32 = 0; - let mut x2318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2276, x2273); - let mut x2319: u32 = 0; - let mut x2320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2274, x2271); - let mut x2321: u32 = 0; - let mut x2322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2272, x2269); - let mut x2323: u32 = 0; - let mut x2324: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2270, x2267); - let mut x2325: u32 = 0; - let mut x2326: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2268, x2265); - let mut x2327: u32 = 0; - let mut x2328: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, 0x0, x2235, x2295); - let mut x2329: u32 = 0; - let mut x2330: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2237, x2297); - let mut x2331: u32 = 0; - let mut x2332: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2239, x2299); - let mut x2333: u32 = 0; - let mut x2334: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2241, x2301); - let mut x2335: u32 = 0; - let mut x2336: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2243, x2303); - let mut x2337: u32 = 0; - let mut x2338: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2245, x2305); - let mut x2339: u32 = 0; - let mut x2340: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2247, x2307); - let mut x2341: u32 = 0; - let mut x2342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2249, x2309); - let mut x2343: u32 = 0; - let mut x2344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2251, x2311); - let mut x2345: u32 = 0; - let mut x2346: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2345, &mut x2346, x2344, x2253, x2313); - let mut x2347: u32 = 0; - let mut x2348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2347, &mut x2348, x2346, x2255, x2315); - let mut x2349: u32 = 0; - let mut x2350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2349, &mut x2350, x2348, x2257, x2317); - let mut x2351: u32 = 0; - let mut x2352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2351, &mut x2352, x2350, x2259, x2319); - let mut x2353: u32 = 0; - let mut x2354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2353, &mut x2354, x2352, x2261, x2321); - let mut x2355: u32 = 0; - let mut x2356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2355, &mut x2356, x2354, x2263, x2323); - let mut x2357: u32 = 0; - let mut x2358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2357, &mut x2358, x2356, (((x2264 as u32) + ((x2168 as u32) + ((x2136 as u32) + x2076))) + ((x2232 as u32) + x2172)), x2325); - let mut x2359: u32 = 0; - let mut x2360: u32 = 0; - fiat_bp512_mulx_u32(&mut x2359, &mut x2360, x2327, 0x7d89efc5); - let mut x2361: u32 = 0; - let mut x2362: u32 = 0; - fiat_bp512_mulx_u32(&mut x2361, &mut x2362, x2359, 0xaadd9db8); - let mut x2363: u32 = 0; - let mut x2364: u32 = 0; - fiat_bp512_mulx_u32(&mut x2363, &mut x2364, x2359, 0xdbe9c48b); - let mut x2365: u32 = 0; - let mut x2366: u32 = 0; - fiat_bp512_mulx_u32(&mut x2365, &mut x2366, x2359, 0x3fd4e6ae); - let mut x2367: u32 = 0; - let mut x2368: u32 = 0; - fiat_bp512_mulx_u32(&mut x2367, &mut x2368, x2359, 0x33c9fc07); - let mut x2369: u32 = 0; - let mut x2370: u32 = 0; - fiat_bp512_mulx_u32(&mut x2369, &mut x2370, x2359, 0xcb308db3); - let mut x2371: u32 = 0; - let mut x2372: u32 = 0; - fiat_bp512_mulx_u32(&mut x2371, &mut x2372, x2359, 0xb3c9d20e); - let mut x2373: u32 = 0; - let mut x2374: u32 = 0; - fiat_bp512_mulx_u32(&mut x2373, &mut x2374, x2359, 0xd6639cca); - let mut x2375: u32 = 0; - let mut x2376: u32 = 0; - fiat_bp512_mulx_u32(&mut x2375, &mut x2376, x2359, 0x70330871); - let mut x2377: u32 = 0; - let mut x2378: u32 = 0; - fiat_bp512_mulx_u32(&mut x2377, &mut x2378, x2359, 0x7d4d9b00); - let mut x2379: u32 = 0; - let mut x2380: u32 = 0; - fiat_bp512_mulx_u32(&mut x2379, &mut x2380, x2359, 0x9bc66842); - let mut x2381: u32 = 0; - let mut x2382: u32 = 0; - fiat_bp512_mulx_u32(&mut x2381, &mut x2382, x2359, 0xaecda12a); - let mut x2383: u32 = 0; - let mut x2384: u32 = 0; - fiat_bp512_mulx_u32(&mut x2383, &mut x2384, x2359, 0xe6a380e6); - let mut x2385: u32 = 0; - let mut x2386: u32 = 0; - fiat_bp512_mulx_u32(&mut x2385, &mut x2386, x2359, 0x2881ff2f); - let mut x2387: u32 = 0; - let mut x2388: u32 = 0; - fiat_bp512_mulx_u32(&mut x2387, &mut x2388, x2359, 0x2d82c685); - let mut x2389: u32 = 0; - let mut x2390: u32 = 0; - fiat_bp512_mulx_u32(&mut x2389, &mut x2390, x2359, 0x28aa6056); - let mut x2391: u32 = 0; - let mut x2392: u32 = 0; - fiat_bp512_mulx_u32(&mut x2391, &mut x2392, x2359, 0x583a48f3); - let mut x2393: u32 = 0; - let mut x2394: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2393, &mut x2394, 0x0, x2392, x2389); - let mut x2395: u32 = 0; - let mut x2396: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2395, &mut x2396, x2394, x2390, x2387); - let mut x2397: u32 = 0; - let mut x2398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2397, &mut x2398, x2396, x2388, x2385); - let mut x2399: u32 = 0; - let mut x2400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2399, &mut x2400, x2398, x2386, x2383); - let mut x2401: u32 = 0; - let mut x2402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2401, &mut x2402, x2400, x2384, x2381); - let mut x2403: u32 = 0; - let mut x2404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2403, &mut x2404, x2402, x2382, x2379); - let mut x2405: u32 = 0; - let mut x2406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2405, &mut x2406, x2404, x2380, x2377); - let mut x2407: u32 = 0; - let mut x2408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2407, &mut x2408, x2406, x2378, x2375); - let mut x2409: u32 = 0; - let mut x2410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, x2408, x2376, x2373); - let mut x2411: u32 = 0; - let mut x2412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2374, x2371); - let mut x2413: u32 = 0; - let mut x2414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2372, x2369); - let mut x2415: u32 = 0; - let mut x2416: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2370, x2367); - let mut x2417: u32 = 0; - let mut x2418: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2368, x2365); - let mut x2419: u32 = 0; - let mut x2420: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2366, x2363); - let mut x2421: u32 = 0; - let mut x2422: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2364, x2361); - let mut x2423: u32 = 0; - let mut x2424: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, 0x0, x2327, x2391); - let mut x2425: u32 = 0; - let mut x2426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2393); - let mut x2427: u32 = 0; - let mut x2428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2395); - let mut x2429: u32 = 0; - let mut x2430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2397); - let mut x2431: u32 = 0; - let mut x2432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2399); - let mut x2433: u32 = 0; - let mut x2434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2401); - let mut x2435: u32 = 0; - let mut x2436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2403); - let mut x2437: u32 = 0; - let mut x2438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2405); - let mut x2439: u32 = 0; - let mut x2440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2407); - let mut x2441: u32 = 0; - let mut x2442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2409); - let mut x2443: u32 = 0; - let mut x2444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2443, &mut x2444, x2442, x2347, x2411); - let mut x2445: u32 = 0; - let mut x2446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2445, &mut x2446, x2444, x2349, x2413); - let mut x2447: u32 = 0; - let mut x2448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2447, &mut x2448, x2446, x2351, x2415); - let mut x2449: u32 = 0; - let mut x2450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2449, &mut x2450, x2448, x2353, x2417); - let mut x2451: u32 = 0; - let mut x2452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2451, &mut x2452, x2450, x2355, x2419); - let mut x2453: u32 = 0; - let mut x2454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2453, &mut x2454, x2452, x2357, x2421); - let mut x2455: u32 = 0; - let mut x2456: u32 = 0; - fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x13, 0x3c4c9d05); - let mut x2457: u32 = 0; - let mut x2458: u32 = 0; - fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x13, 0xa9ff6450); - let mut x2459: u32 = 0; - let mut x2460: u32 = 0; - fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x13, 0x202e1940); - let mut x2461: u32 = 0; - let mut x2462: u32 = 0; - fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x13, 0x2056eecc); - let mut x2463: u32 = 0; - let mut x2464: u32 = 0; - fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x13, 0xa16daa5f); - let mut x2465: u32 = 0; - let mut x2466: u32 = 0; - fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x13, 0xd42bff83); - let mut x2467: u32 = 0; - let mut x2468: u32 = 0; - fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x13, 0x19486fd8); - let mut x2469: u32 = 0; - let mut x2470: u32 = 0; - fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x13, 0xd5898057); - let mut x2471: u32 = 0; - let mut x2472: u32 = 0; - fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x13, 0xe0c19a77); - let mut x2473: u32 = 0; - let mut x2474: u32 = 0; - fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x13, 0x83514a25); - let mut x2475: u32 = 0; - let mut x2476: u32 = 0; - fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x13, 0x53b7f9bc); - let mut x2477: u32 = 0; - let mut x2478: u32 = 0; - fiat_bp512_mulx_u32(&mut x2477, &mut x2478, x13, 0x905affd3); - let mut x2479: u32 = 0; - let mut x2480: u32 = 0; - fiat_bp512_mulx_u32(&mut x2479, &mut x2480, x13, 0x793fb130); - let mut x2481: u32 = 0; - let mut x2482: u32 = 0; - fiat_bp512_mulx_u32(&mut x2481, &mut x2482, x13, 0x27157905); - let mut x2483: u32 = 0; - let mut x2484: u32 = 0; - fiat_bp512_mulx_u32(&mut x2483, &mut x2484, x13, 0x49ad144a); - let mut x2485: u32 = 0; - let mut x2486: u32 = 0; - fiat_bp512_mulx_u32(&mut x2485, &mut x2486, x13, 0x6158f205); - let mut x2487: u32 = 0; - let mut x2488: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, 0x0, x2486, x2483); - let mut x2489: u32 = 0; - let mut x2490: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2484, x2481); - let mut x2491: u32 = 0; - let mut x2492: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2482, x2479); - let mut x2493: u32 = 0; - let mut x2494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2480, x2477); - let mut x2495: u32 = 0; - let mut x2496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2478, x2475); - let mut x2497: u32 = 0; - let mut x2498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2476, x2473); - let mut x2499: u32 = 0; - let mut x2500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2474, x2471); - let mut x2501: u32 = 0; - let mut x2502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2472, x2469); - let mut x2503: u32 = 0; - let mut x2504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2470, x2467); - let mut x2505: u32 = 0; - let mut x2506: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2468, x2465); - let mut x2507: u32 = 0; - let mut x2508: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2507, &mut x2508, x2506, x2466, x2463); - let mut x2509: u32 = 0; - let mut x2510: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2509, &mut x2510, x2508, x2464, x2461); - let mut x2511: u32 = 0; - let mut x2512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2511, &mut x2512, x2510, x2462, x2459); - let mut x2513: u32 = 0; - let mut x2514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2513, &mut x2514, x2512, x2460, x2457); - let mut x2515: u32 = 0; - let mut x2516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2515, &mut x2516, x2514, x2458, x2455); - let mut x2517: u32 = 0; - let mut x2518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2517, &mut x2518, 0x0, x2425, x2485); - let mut x2519: u32 = 0; - let mut x2520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2519, &mut x2520, x2518, x2427, x2487); - let mut x2521: u32 = 0; - let mut x2522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2521, &mut x2522, x2520, x2429, x2489); - let mut x2523: u32 = 0; - let mut x2524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2523, &mut x2524, x2522, x2431, x2491); - let mut x2525: u32 = 0; - let mut x2526: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2525, &mut x2526, x2524, x2433, x2493); - let mut x2527: u32 = 0; - let mut x2528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2527, &mut x2528, x2526, x2435, x2495); - let mut x2529: u32 = 0; - let mut x2530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2529, &mut x2530, x2528, x2437, x2497); - let mut x2531: u32 = 0; - let mut x2532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2531, &mut x2532, x2530, x2439, x2499); - let mut x2533: u32 = 0; - let mut x2534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2533, &mut x2534, x2532, x2441, x2501); - let mut x2535: u32 = 0; - let mut x2536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2535, &mut x2536, x2534, x2443, x2503); - let mut x2537: u32 = 0; - let mut x2538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2537, &mut x2538, x2536, x2445, x2505); - let mut x2539: u32 = 0; - let mut x2540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2539, &mut x2540, x2538, x2447, x2507); - let mut x2541: u32 = 0; - let mut x2542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2541, &mut x2542, x2540, x2449, x2509); - let mut x2543: u32 = 0; - let mut x2544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2543, &mut x2544, x2542, x2451, x2511); - let mut x2545: u32 = 0; - let mut x2546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2545, &mut x2546, x2544, x2453, x2513); - let mut x2547: u32 = 0; - let mut x2548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2547, &mut x2548, x2546, (((x2454 as u32) + ((x2358 as u32) + ((x2326 as u32) + x2266))) + ((x2422 as u32) + x2362)), x2515); - let mut x2549: u32 = 0; - let mut x2550: u32 = 0; - fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x2517, 0x7d89efc5); - let mut x2551: u32 = 0; - let mut x2552: u32 = 0; - fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x2549, 0xaadd9db8); - let mut x2553: u32 = 0; - let mut x2554: u32 = 0; - fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x2549, 0xdbe9c48b); - let mut x2555: u32 = 0; - let mut x2556: u32 = 0; - fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x2549, 0x3fd4e6ae); - let mut x2557: u32 = 0; - let mut x2558: u32 = 0; - fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x2549, 0x33c9fc07); - let mut x2559: u32 = 0; - let mut x2560: u32 = 0; - fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x2549, 0xcb308db3); - let mut x2561: u32 = 0; - let mut x2562: u32 = 0; - fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x2549, 0xb3c9d20e); - let mut x2563: u32 = 0; - let mut x2564: u32 = 0; - fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x2549, 0xd6639cca); - let mut x2565: u32 = 0; - let mut x2566: u32 = 0; - fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x2549, 0x70330871); - let mut x2567: u32 = 0; - let mut x2568: u32 = 0; - fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x2549, 0x7d4d9b00); - let mut x2569: u32 = 0; - let mut x2570: u32 = 0; - fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x2549, 0x9bc66842); - let mut x2571: u32 = 0; - let mut x2572: u32 = 0; - fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x2549, 0xaecda12a); - let mut x2573: u32 = 0; - let mut x2574: u32 = 0; - fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x2549, 0xe6a380e6); - let mut x2575: u32 = 0; - let mut x2576: u32 = 0; - fiat_bp512_mulx_u32(&mut x2575, &mut x2576, x2549, 0x2881ff2f); - let mut x2577: u32 = 0; - let mut x2578: u32 = 0; - fiat_bp512_mulx_u32(&mut x2577, &mut x2578, x2549, 0x2d82c685); - let mut x2579: u32 = 0; - let mut x2580: u32 = 0; - fiat_bp512_mulx_u32(&mut x2579, &mut x2580, x2549, 0x28aa6056); - let mut x2581: u32 = 0; - let mut x2582: u32 = 0; - fiat_bp512_mulx_u32(&mut x2581, &mut x2582, x2549, 0x583a48f3); - let mut x2583: u32 = 0; - let mut x2584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, 0x0, x2582, x2579); - let mut x2585: u32 = 0; - let mut x2586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2580, x2577); - let mut x2587: u32 = 0; - let mut x2588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2578, x2575); - let mut x2589: u32 = 0; - let mut x2590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2576, x2573); - let mut x2591: u32 = 0; - let mut x2592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2574, x2571); - let mut x2593: u32 = 0; - let mut x2594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2572, x2569); - let mut x2595: u32 = 0; - let mut x2596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2570, x2567); - let mut x2597: u32 = 0; - let mut x2598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2568, x2565); - let mut x2599: u32 = 0; - let mut x2600: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2566, x2563); - let mut x2601: u32 = 0; - let mut x2602: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2564, x2561); - let mut x2603: u32 = 0; - let mut x2604: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2562, x2559); - let mut x2605: u32 = 0; - let mut x2606: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2605, &mut x2606, x2604, x2560, x2557); - let mut x2607: u32 = 0; - let mut x2608: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2607, &mut x2608, x2606, x2558, x2555); - let mut x2609: u32 = 0; - let mut x2610: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2609, &mut x2610, x2608, x2556, x2553); - let mut x2611: u32 = 0; - let mut x2612: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2611, &mut x2612, x2610, x2554, x2551); - let mut x2613: u32 = 0; - let mut x2614: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2613, &mut x2614, 0x0, x2517, x2581); - let mut x2615: u32 = 0; - let mut x2616: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2615, &mut x2616, x2614, x2519, x2583); - let mut x2617: u32 = 0; - let mut x2618: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2617, &mut x2618, x2616, x2521, x2585); - let mut x2619: u32 = 0; - let mut x2620: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2619, &mut x2620, x2618, x2523, x2587); - let mut x2621: u32 = 0; - let mut x2622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2621, &mut x2622, x2620, x2525, x2589); - let mut x2623: u32 = 0; - let mut x2624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2623, &mut x2624, x2622, x2527, x2591); - let mut x2625: u32 = 0; - let mut x2626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2625, &mut x2626, x2624, x2529, x2593); - let mut x2627: u32 = 0; - let mut x2628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2627, &mut x2628, x2626, x2531, x2595); - let mut x2629: u32 = 0; - let mut x2630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2629, &mut x2630, x2628, x2533, x2597); - let mut x2631: u32 = 0; - let mut x2632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2631, &mut x2632, x2630, x2535, x2599); - let mut x2633: u32 = 0; - let mut x2634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2633, &mut x2634, x2632, x2537, x2601); - let mut x2635: u32 = 0; - let mut x2636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2635, &mut x2636, x2634, x2539, x2603); - let mut x2637: u32 = 0; - let mut x2638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2637, &mut x2638, x2636, x2541, x2605); - let mut x2639: u32 = 0; - let mut x2640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2639, &mut x2640, x2638, x2543, x2607); - let mut x2641: u32 = 0; - let mut x2642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2641, &mut x2642, x2640, x2545, x2609); - let mut x2643: u32 = 0; - let mut x2644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2643, &mut x2644, x2642, x2547, x2611); - let mut x2645: u32 = 0; - let mut x2646: u32 = 0; - fiat_bp512_mulx_u32(&mut x2645, &mut x2646, x14, 0x3c4c9d05); - let mut x2647: u32 = 0; - let mut x2648: u32 = 0; - fiat_bp512_mulx_u32(&mut x2647, &mut x2648, x14, 0xa9ff6450); - let mut x2649: u32 = 0; - let mut x2650: u32 = 0; - fiat_bp512_mulx_u32(&mut x2649, &mut x2650, x14, 0x202e1940); - let mut x2651: u32 = 0; - let mut x2652: u32 = 0; - fiat_bp512_mulx_u32(&mut x2651, &mut x2652, x14, 0x2056eecc); - let mut x2653: u32 = 0; - let mut x2654: u32 = 0; - fiat_bp512_mulx_u32(&mut x2653, &mut x2654, x14, 0xa16daa5f); - let mut x2655: u32 = 0; - let mut x2656: u32 = 0; - fiat_bp512_mulx_u32(&mut x2655, &mut x2656, x14, 0xd42bff83); - let mut x2657: u32 = 0; - let mut x2658: u32 = 0; - fiat_bp512_mulx_u32(&mut x2657, &mut x2658, x14, 0x19486fd8); - let mut x2659: u32 = 0; - let mut x2660: u32 = 0; - fiat_bp512_mulx_u32(&mut x2659, &mut x2660, x14, 0xd5898057); - let mut x2661: u32 = 0; - let mut x2662: u32 = 0; - fiat_bp512_mulx_u32(&mut x2661, &mut x2662, x14, 0xe0c19a77); - let mut x2663: u32 = 0; - let mut x2664: u32 = 0; - fiat_bp512_mulx_u32(&mut x2663, &mut x2664, x14, 0x83514a25); - let mut x2665: u32 = 0; - let mut x2666: u32 = 0; - fiat_bp512_mulx_u32(&mut x2665, &mut x2666, x14, 0x53b7f9bc); - let mut x2667: u32 = 0; - let mut x2668: u32 = 0; - fiat_bp512_mulx_u32(&mut x2667, &mut x2668, x14, 0x905affd3); - let mut x2669: u32 = 0; - let mut x2670: u32 = 0; - fiat_bp512_mulx_u32(&mut x2669, &mut x2670, x14, 0x793fb130); - let mut x2671: u32 = 0; - let mut x2672: u32 = 0; - fiat_bp512_mulx_u32(&mut x2671, &mut x2672, x14, 0x27157905); - let mut x2673: u32 = 0; - let mut x2674: u32 = 0; - fiat_bp512_mulx_u32(&mut x2673, &mut x2674, x14, 0x49ad144a); - let mut x2675: u32 = 0; - let mut x2676: u32 = 0; - fiat_bp512_mulx_u32(&mut x2675, &mut x2676, x14, 0x6158f205); - let mut x2677: u32 = 0; - let mut x2678: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2677, &mut x2678, 0x0, x2676, x2673); - let mut x2679: u32 = 0; - let mut x2680: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2679, &mut x2680, x2678, x2674, x2671); - let mut x2681: u32 = 0; - let mut x2682: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2681, &mut x2682, x2680, x2672, x2669); - let mut x2683: u32 = 0; - let mut x2684: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2683, &mut x2684, x2682, x2670, x2667); - let mut x2685: u32 = 0; - let mut x2686: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2685, &mut x2686, x2684, x2668, x2665); - let mut x2687: u32 = 0; - let mut x2688: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2687, &mut x2688, x2686, x2666, x2663); - let mut x2689: u32 = 0; - let mut x2690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2689, &mut x2690, x2688, x2664, x2661); - let mut x2691: u32 = 0; - let mut x2692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2691, &mut x2692, x2690, x2662, x2659); - let mut x2693: u32 = 0; - let mut x2694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2693, &mut x2694, x2692, x2660, x2657); - let mut x2695: u32 = 0; - let mut x2696: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2695, &mut x2696, x2694, x2658, x2655); - let mut x2697: u32 = 0; - let mut x2698: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2697, &mut x2698, x2696, x2656, x2653); - let mut x2699: u32 = 0; - let mut x2700: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2699, &mut x2700, x2698, x2654, x2651); - let mut x2701: u32 = 0; - let mut x2702: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2701, &mut x2702, x2700, x2652, x2649); - let mut x2703: u32 = 0; - let mut x2704: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2703, &mut x2704, x2702, x2650, x2647); - let mut x2705: u32 = 0; - let mut x2706: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, x2704, x2648, x2645); - let mut x2707: u32 = 0; - let mut x2708: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, 0x0, x2615, x2675); - let mut x2709: u32 = 0; - let mut x2710: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2617, x2677); - let mut x2711: u32 = 0; - let mut x2712: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2619, x2679); - let mut x2713: u32 = 0; - let mut x2714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2621, x2681); - let mut x2715: u32 = 0; - let mut x2716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2623, x2683); - let mut x2717: u32 = 0; - let mut x2718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2625, x2685); - let mut x2719: u32 = 0; - let mut x2720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2627, x2687); - let mut x2721: u32 = 0; - let mut x2722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2629, x2689); - let mut x2723: u32 = 0; - let mut x2724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2631, x2691); - let mut x2725: u32 = 0; - let mut x2726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2633, x2693); - let mut x2727: u32 = 0; - let mut x2728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2635, x2695); - let mut x2729: u32 = 0; - let mut x2730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2637, x2697); - let mut x2731: u32 = 0; - let mut x2732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2639, x2699); - let mut x2733: u32 = 0; - let mut x2734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2641, x2701); - let mut x2735: u32 = 0; - let mut x2736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2643, x2703); - let mut x2737: u32 = 0; - let mut x2738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2737, &mut x2738, x2736, (((x2644 as u32) + ((x2548 as u32) + ((x2516 as u32) + x2456))) + ((x2612 as u32) + x2552)), x2705); - let mut x2739: u32 = 0; - let mut x2740: u32 = 0; - fiat_bp512_mulx_u32(&mut x2739, &mut x2740, x2707, 0x7d89efc5); - let mut x2741: u32 = 0; - let mut x2742: u32 = 0; - fiat_bp512_mulx_u32(&mut x2741, &mut x2742, x2739, 0xaadd9db8); - let mut x2743: u32 = 0; - let mut x2744: u32 = 0; - fiat_bp512_mulx_u32(&mut x2743, &mut x2744, x2739, 0xdbe9c48b); - let mut x2745: u32 = 0; - let mut x2746: u32 = 0; - fiat_bp512_mulx_u32(&mut x2745, &mut x2746, x2739, 0x3fd4e6ae); - let mut x2747: u32 = 0; - let mut x2748: u32 = 0; - fiat_bp512_mulx_u32(&mut x2747, &mut x2748, x2739, 0x33c9fc07); - let mut x2749: u32 = 0; - let mut x2750: u32 = 0; - fiat_bp512_mulx_u32(&mut x2749, &mut x2750, x2739, 0xcb308db3); - let mut x2751: u32 = 0; - let mut x2752: u32 = 0; - fiat_bp512_mulx_u32(&mut x2751, &mut x2752, x2739, 0xb3c9d20e); - let mut x2753: u32 = 0; - let mut x2754: u32 = 0; - fiat_bp512_mulx_u32(&mut x2753, &mut x2754, x2739, 0xd6639cca); - let mut x2755: u32 = 0; - let mut x2756: u32 = 0; - fiat_bp512_mulx_u32(&mut x2755, &mut x2756, x2739, 0x70330871); - let mut x2757: u32 = 0; - let mut x2758: u32 = 0; - fiat_bp512_mulx_u32(&mut x2757, &mut x2758, x2739, 0x7d4d9b00); - let mut x2759: u32 = 0; - let mut x2760: u32 = 0; - fiat_bp512_mulx_u32(&mut x2759, &mut x2760, x2739, 0x9bc66842); - let mut x2761: u32 = 0; - let mut x2762: u32 = 0; - fiat_bp512_mulx_u32(&mut x2761, &mut x2762, x2739, 0xaecda12a); - let mut x2763: u32 = 0; - let mut x2764: u32 = 0; - fiat_bp512_mulx_u32(&mut x2763, &mut x2764, x2739, 0xe6a380e6); - let mut x2765: u32 = 0; - let mut x2766: u32 = 0; - fiat_bp512_mulx_u32(&mut x2765, &mut x2766, x2739, 0x2881ff2f); - let mut x2767: u32 = 0; - let mut x2768: u32 = 0; - fiat_bp512_mulx_u32(&mut x2767, &mut x2768, x2739, 0x2d82c685); - let mut x2769: u32 = 0; - let mut x2770: u32 = 0; - fiat_bp512_mulx_u32(&mut x2769, &mut x2770, x2739, 0x28aa6056); - let mut x2771: u32 = 0; - let mut x2772: u32 = 0; - fiat_bp512_mulx_u32(&mut x2771, &mut x2772, x2739, 0x583a48f3); - let mut x2773: u32 = 0; - let mut x2774: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2773, &mut x2774, 0x0, x2772, x2769); - let mut x2775: u32 = 0; - let mut x2776: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2775, &mut x2776, x2774, x2770, x2767); - let mut x2777: u32 = 0; - let mut x2778: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2777, &mut x2778, x2776, x2768, x2765); - let mut x2779: u32 = 0; - let mut x2780: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2779, &mut x2780, x2778, x2766, x2763); - let mut x2781: u32 = 0; - let mut x2782: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2781, &mut x2782, x2780, x2764, x2761); - let mut x2783: u32 = 0; - let mut x2784: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2783, &mut x2784, x2782, x2762, x2759); - let mut x2785: u32 = 0; - let mut x2786: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2785, &mut x2786, x2784, x2760, x2757); - let mut x2787: u32 = 0; - let mut x2788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2787, &mut x2788, x2786, x2758, x2755); - let mut x2789: u32 = 0; - let mut x2790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2789, &mut x2790, x2788, x2756, x2753); - let mut x2791: u32 = 0; - let mut x2792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2791, &mut x2792, x2790, x2754, x2751); - let mut x2793: u32 = 0; - let mut x2794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2793, &mut x2794, x2792, x2752, x2749); - let mut x2795: u32 = 0; - let mut x2796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2795, &mut x2796, x2794, x2750, x2747); - let mut x2797: u32 = 0; - let mut x2798: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2797, &mut x2798, x2796, x2748, x2745); - let mut x2799: u32 = 0; - let mut x2800: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2799, &mut x2800, x2798, x2746, x2743); - let mut x2801: u32 = 0; - let mut x2802: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2801, &mut x2802, x2800, x2744, x2741); - let mut x2803: u32 = 0; - let mut x2804: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2771); - let mut x2805: u32 = 0; - let mut x2806: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2773); - let mut x2807: u32 = 0; - let mut x2808: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2775); - let mut x2809: u32 = 0; - let mut x2810: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2777); - let mut x2811: u32 = 0; - let mut x2812: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2779); - let mut x2813: u32 = 0; - let mut x2814: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2781); - let mut x2815: u32 = 0; - let mut x2816: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2783); - let mut x2817: u32 = 0; - let mut x2818: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2785); - let mut x2819: u32 = 0; - let mut x2820: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2787); - let mut x2821: u32 = 0; - let mut x2822: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2789); - let mut x2823: u32 = 0; - let mut x2824: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2791); - let mut x2825: u32 = 0; - let mut x2826: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2793); - let mut x2827: u32 = 0; - let mut x2828: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2795); - let mut x2829: u32 = 0; - let mut x2830: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2797); - let mut x2831: u32 = 0; - let mut x2832: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2799); - let mut x2833: u32 = 0; - let mut x2834: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2801); - let mut x2835: u32 = 0; - let mut x2836: u32 = 0; - fiat_bp512_mulx_u32(&mut x2835, &mut x2836, x15, 0x3c4c9d05); - let mut x2837: u32 = 0; - let mut x2838: u32 = 0; - fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x15, 0xa9ff6450); - let mut x2839: u32 = 0; - let mut x2840: u32 = 0; - fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x15, 0x202e1940); - let mut x2841: u32 = 0; - let mut x2842: u32 = 0; - fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x15, 0x2056eecc); - let mut x2843: u32 = 0; - let mut x2844: u32 = 0; - fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x15, 0xa16daa5f); - let mut x2845: u32 = 0; - let mut x2846: u32 = 0; - fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x15, 0xd42bff83); - let mut x2847: u32 = 0; - let mut x2848: u32 = 0; - fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x15, 0x19486fd8); - let mut x2849: u32 = 0; - let mut x2850: u32 = 0; - fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x15, 0xd5898057); - let mut x2851: u32 = 0; - let mut x2852: u32 = 0; - fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x15, 0xe0c19a77); - let mut x2853: u32 = 0; - let mut x2854: u32 = 0; - fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x15, 0x83514a25); - let mut x2855: u32 = 0; - let mut x2856: u32 = 0; - fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x15, 0x53b7f9bc); - let mut x2857: u32 = 0; - let mut x2858: u32 = 0; - fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x15, 0x905affd3); - let mut x2859: u32 = 0; - let mut x2860: u32 = 0; - fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x15, 0x793fb130); - let mut x2861: u32 = 0; - let mut x2862: u32 = 0; - fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x15, 0x27157905); - let mut x2863: u32 = 0; - let mut x2864: u32 = 0; - fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x15, 0x49ad144a); - let mut x2865: u32 = 0; - let mut x2866: u32 = 0; - fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x15, 0x6158f205); - let mut x2867: u32 = 0; - let mut x2868: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2867, &mut x2868, 0x0, x2866, x2863); - let mut x2869: u32 = 0; - let mut x2870: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2869, &mut x2870, x2868, x2864, x2861); - let mut x2871: u32 = 0; - let mut x2872: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, x2870, x2862, x2859); - let mut x2873: u32 = 0; - let mut x2874: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2860, x2857); - let mut x2875: u32 = 0; - let mut x2876: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2858, x2855); - let mut x2877: u32 = 0; - let mut x2878: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2856, x2853); - let mut x2879: u32 = 0; - let mut x2880: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2854, x2851); - let mut x2881: u32 = 0; - let mut x2882: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2852, x2849); - let mut x2883: u32 = 0; - let mut x2884: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2850, x2847); - let mut x2885: u32 = 0; - let mut x2886: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2848, x2845); - let mut x2887: u32 = 0; - let mut x2888: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2846, x2843); - let mut x2889: u32 = 0; - let mut x2890: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2844, x2841); - let mut x2891: u32 = 0; - let mut x2892: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2842, x2839); - let mut x2893: u32 = 0; - let mut x2894: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2840, x2837); - let mut x2895: u32 = 0; - let mut x2896: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2838, x2835); - let mut x2897: u32 = 0; - let mut x2898: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, 0x0, x2805, x2865); - let mut x2899: u32 = 0; - let mut x2900: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2807, x2867); - let mut x2901: u32 = 0; - let mut x2902: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2901, &mut x2902, x2900, x2809, x2869); - let mut x2903: u32 = 0; - let mut x2904: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2903, &mut x2904, x2902, x2811, x2871); - let mut x2905: u32 = 0; - let mut x2906: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2905, &mut x2906, x2904, x2813, x2873); - let mut x2907: u32 = 0; - let mut x2908: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2907, &mut x2908, x2906, x2815, x2875); - let mut x2909: u32 = 0; - let mut x2910: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2909, &mut x2910, x2908, x2817, x2877); - let mut x2911: u32 = 0; - let mut x2912: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2911, &mut x2912, x2910, x2819, x2879); - let mut x2913: u32 = 0; - let mut x2914: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2913, &mut x2914, x2912, x2821, x2881); - let mut x2915: u32 = 0; - let mut x2916: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2915, &mut x2916, x2914, x2823, x2883); - let mut x2917: u32 = 0; - let mut x2918: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2917, &mut x2918, x2916, x2825, x2885); - let mut x2919: u32 = 0; - let mut x2920: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2919, &mut x2920, x2918, x2827, x2887); - let mut x2921: u32 = 0; - let mut x2922: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2921, &mut x2922, x2920, x2829, x2889); - let mut x2923: u32 = 0; - let mut x2924: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2923, &mut x2924, x2922, x2831, x2891); - let mut x2925: u32 = 0; - let mut x2926: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2925, &mut x2926, x2924, x2833, x2893); - let mut x2927: u32 = 0; - let mut x2928: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2927, &mut x2928, x2926, (((x2834 as u32) + ((x2738 as u32) + ((x2706 as u32) + x2646))) + ((x2802 as u32) + x2742)), x2895); - let mut x2929: u32 = 0; - let mut x2930: u32 = 0; - fiat_bp512_mulx_u32(&mut x2929, &mut x2930, x2897, 0x7d89efc5); - let mut x2931: u32 = 0; - let mut x2932: u32 = 0; - fiat_bp512_mulx_u32(&mut x2931, &mut x2932, x2929, 0xaadd9db8); - let mut x2933: u32 = 0; - let mut x2934: u32 = 0; - fiat_bp512_mulx_u32(&mut x2933, &mut x2934, x2929, 0xdbe9c48b); - let mut x2935: u32 = 0; - let mut x2936: u32 = 0; - fiat_bp512_mulx_u32(&mut x2935, &mut x2936, x2929, 0x3fd4e6ae); - let mut x2937: u32 = 0; - let mut x2938: u32 = 0; - fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x2929, 0x33c9fc07); - let mut x2939: u32 = 0; - let mut x2940: u32 = 0; - fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x2929, 0xcb308db3); - let mut x2941: u32 = 0; - let mut x2942: u32 = 0; - fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x2929, 0xb3c9d20e); - let mut x2943: u32 = 0; - let mut x2944: u32 = 0; - fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x2929, 0xd6639cca); - let mut x2945: u32 = 0; - let mut x2946: u32 = 0; - fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x2929, 0x70330871); - let mut x2947: u32 = 0; - let mut x2948: u32 = 0; - fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x2929, 0x7d4d9b00); - let mut x2949: u32 = 0; - let mut x2950: u32 = 0; - fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x2929, 0x9bc66842); - let mut x2951: u32 = 0; - let mut x2952: u32 = 0; - fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x2929, 0xaecda12a); - let mut x2953: u32 = 0; - let mut x2954: u32 = 0; - fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x2929, 0xe6a380e6); - let mut x2955: u32 = 0; - let mut x2956: u32 = 0; - fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x2929, 0x2881ff2f); - let mut x2957: u32 = 0; - let mut x2958: u32 = 0; - fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x2929, 0x2d82c685); - let mut x2959: u32 = 0; - let mut x2960: u32 = 0; - fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x2929, 0x28aa6056); - let mut x2961: u32 = 0; - let mut x2962: u32 = 0; - fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x2929, 0x583a48f3); - let mut x2963: u32 = 0; - let mut x2964: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2963, &mut x2964, 0x0, x2962, x2959); - let mut x2965: u32 = 0; - let mut x2966: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2965, &mut x2966, x2964, x2960, x2957); - let mut x2967: u32 = 0; - let mut x2968: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2967, &mut x2968, x2966, x2958, x2955); - let mut x2969: u32 = 0; - let mut x2970: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, x2968, x2956, x2953); - let mut x2971: u32 = 0; - let mut x2972: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2954, x2951); - let mut x2973: u32 = 0; - let mut x2974: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2952, x2949); - let mut x2975: u32 = 0; - let mut x2976: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2950, x2947); - let mut x2977: u32 = 0; - let mut x2978: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2948, x2945); - let mut x2979: u32 = 0; - let mut x2980: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2946, x2943); - let mut x2981: u32 = 0; - let mut x2982: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2944, x2941); - let mut x2983: u32 = 0; - let mut x2984: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2942, x2939); - let mut x2985: u32 = 0; - let mut x2986: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2940, x2937); - let mut x2987: u32 = 0; - let mut x2988: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2938, x2935); - let mut x2989: u32 = 0; - let mut x2990: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2936, x2933); - let mut x2991: u32 = 0; - let mut x2992: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2934, x2931); - let mut x2993: u32 = 0; - let mut x2994: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, 0x0, x2897, x2961); - let mut x2995: u32 = 0; - let mut x2996: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2899, x2963); - let mut x2997: u32 = 0; - let mut x2998: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2901, x2965); - let mut x2999: u32 = 0; - let mut x3000: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x2999, &mut x3000, x2998, x2903, x2967); - let mut x3001: u32 = 0; - let mut x3002: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3001, &mut x3002, x3000, x2905, x2969); - let mut x3003: u32 = 0; - let mut x3004: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3003, &mut x3004, x3002, x2907, x2971); - let mut x3005: u32 = 0; - let mut x3006: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3005, &mut x3006, x3004, x2909, x2973); - let mut x3007: u32 = 0; - let mut x3008: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3007, &mut x3008, x3006, x2911, x2975); - let mut x3009: u32 = 0; - let mut x3010: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3009, &mut x3010, x3008, x2913, x2977); - let mut x3011: u32 = 0; - let mut x3012: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3011, &mut x3012, x3010, x2915, x2979); - let mut x3013: u32 = 0; - let mut x3014: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3013, &mut x3014, x3012, x2917, x2981); - let mut x3015: u32 = 0; - let mut x3016: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3015, &mut x3016, x3014, x2919, x2983); - let mut x3017: u32 = 0; - let mut x3018: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3017, &mut x3018, x3016, x2921, x2985); - let mut x3019: u32 = 0; - let mut x3020: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3019, &mut x3020, x3018, x2923, x2987); - let mut x3021: u32 = 0; - let mut x3022: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3021, &mut x3022, x3020, x2925, x2989); - let mut x3023: u32 = 0; - let mut x3024: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x3023, &mut x3024, x3022, x2927, x2991); - let x3025: u32 = (((x3024 as u32) + ((x2928 as u32) + ((x2896 as u32) + x2836))) + ((x2992 as u32) + x2932)); - let mut x3026: u32 = 0; - let mut x3027: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3026, &mut x3027, 0x0, x2995, 0x583a48f3); - let mut x3028: u32 = 0; - let mut x3029: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3028, &mut x3029, x3027, x2997, 0x28aa6056); - let mut x3030: u32 = 0; - let mut x3031: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3030, &mut x3031, x3029, x2999, 0x2d82c685); - let mut x3032: u32 = 0; - let mut x3033: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3032, &mut x3033, x3031, x3001, 0x2881ff2f); - let mut x3034: u32 = 0; - let mut x3035: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3034, &mut x3035, x3033, x3003, 0xe6a380e6); - let mut x3036: u32 = 0; - let mut x3037: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3036, &mut x3037, x3035, x3005, 0xaecda12a); - let mut x3038: u32 = 0; - let mut x3039: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3038, &mut x3039, x3037, x3007, 0x9bc66842); - let mut x3040: u32 = 0; - let mut x3041: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3040, &mut x3041, x3039, x3009, 0x7d4d9b00); - let mut x3042: u32 = 0; - let mut x3043: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3042, &mut x3043, x3041, x3011, 0x70330871); - let mut x3044: u32 = 0; - let mut x3045: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3044, &mut x3045, x3043, x3013, 0xd6639cca); - let mut x3046: u32 = 0; - let mut x3047: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3046, &mut x3047, x3045, x3015, 0xb3c9d20e); - let mut x3048: u32 = 0; - let mut x3049: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3048, &mut x3049, x3047, x3017, 0xcb308db3); - let mut x3050: u32 = 0; - let mut x3051: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3050, &mut x3051, x3049, x3019, 0x33c9fc07); - let mut x3052: u32 = 0; - let mut x3053: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3052, &mut x3053, x3051, x3021, 0x3fd4e6ae); - let mut x3054: u32 = 0; - let mut x3055: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3054, &mut x3055, x3053, x3023, 0xdbe9c48b); - let mut x3056: u32 = 0; - let mut x3057: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3056, &mut x3057, x3055, x3025, 0xaadd9db8); - let mut x3058: u32 = 0; - let mut x3059: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x3058, &mut x3059, x3057, (0x0 as u32), (0x0 as u32)); - let mut x3060: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3060, x3059, x3026, x2995); - let mut x3061: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3061, x3059, x3028, x2997); - let mut x3062: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3062, x3059, x3030, x2999); - let mut x3063: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3063, x3059, x3032, x3001); - let mut x3064: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3064, x3059, x3034, x3003); - let mut x3065: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3065, x3059, x3036, x3005); - let mut x3066: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3066, x3059, x3038, x3007); - let mut x3067: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3067, x3059, x3040, x3009); - let mut x3068: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3068, x3059, x3042, x3011); - let mut x3069: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3069, x3059, x3044, x3013); - let mut x3070: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3070, x3059, x3046, x3015); - let mut x3071: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3071, x3059, x3048, x3017); - let mut x3072: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3072, x3059, x3050, x3019); - let mut x3073: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3073, x3059, x3052, x3021); - let mut x3074: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3074, x3059, x3054, x3023); - let mut x3075: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3075, x3059, x3056, x3025); - out1[0] = x3060; - out1[1] = x3061; - out1[2] = x3062; - out1[3] = x3063; - out1[4] = x3064; - out1[5] = x3065; - out1[6] = x3066; - out1[7] = x3067; - out1[8] = x3068; - out1[9] = x3069; - out1[10] = x3070; - out1[11] = x3071; - out1[12] = x3072; - out1[13] = x3073; - out1[14] = x3074; - out1[15] = x3075; +pub fn fiat_bp512_to_montgomery( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_non_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_mulx_u32(&mut x17, &mut x18, x16, 0x3c4c9d05); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_mulx_u32(&mut x19, &mut x20, x16, 0xa9ff6450); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_mulx_u32(&mut x21, &mut x22, x16, 0x202e1940); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_mulx_u32(&mut x23, &mut x24, x16, 0x2056eecc); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_mulx_u32(&mut x25, &mut x26, x16, 0xa16daa5f); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_mulx_u32(&mut x27, &mut x28, x16, 0xd42bff83); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_mulx_u32(&mut x29, &mut x30, x16, 0x19486fd8); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_mulx_u32(&mut x31, &mut x32, x16, 0xd5898057); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_mulx_u32(&mut x33, &mut x34, x16, 0xe0c19a77); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_mulx_u32(&mut x35, &mut x36, x16, 0x83514a25); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_mulx_u32(&mut x37, &mut x38, x16, 0x53b7f9bc); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_mulx_u32(&mut x39, &mut x40, x16, 0x905affd3); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_mulx_u32(&mut x41, &mut x42, x16, 0x793fb130); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_mulx_u32(&mut x43, &mut x44, x16, 0x27157905); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_mulx_u32(&mut x45, &mut x46, x16, 0x49ad144a); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_mulx_u32(&mut x47, &mut x48, x16, 0x6158f205); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let mut x79: u32 = 0; + let mut x80: u32 = 0; + fiat_bp512_mulx_u32(&mut x79, &mut x80, x47, 0x7d89efc5); + let mut x81: u32 = 0; + let mut x82: u32 = 0; + fiat_bp512_mulx_u32(&mut x81, &mut x82, x79, 0xaadd9db8); + let mut x83: u32 = 0; + let mut x84: u32 = 0; + fiat_bp512_mulx_u32(&mut x83, &mut x84, x79, 0xdbe9c48b); + let mut x85: u32 = 0; + let mut x86: u32 = 0; + fiat_bp512_mulx_u32(&mut x85, &mut x86, x79, 0x3fd4e6ae); + let mut x87: u32 = 0; + let mut x88: u32 = 0; + fiat_bp512_mulx_u32(&mut x87, &mut x88, x79, 0x33c9fc07); + let mut x89: u32 = 0; + let mut x90: u32 = 0; + fiat_bp512_mulx_u32(&mut x89, &mut x90, x79, 0xcb308db3); + let mut x91: u32 = 0; + let mut x92: u32 = 0; + fiat_bp512_mulx_u32(&mut x91, &mut x92, x79, 0xb3c9d20e); + let mut x93: u32 = 0; + let mut x94: u32 = 0; + fiat_bp512_mulx_u32(&mut x93, &mut x94, x79, 0xd6639cca); + let mut x95: u32 = 0; + let mut x96: u32 = 0; + fiat_bp512_mulx_u32(&mut x95, &mut x96, x79, 0x70330871); + let mut x97: u32 = 0; + let mut x98: u32 = 0; + fiat_bp512_mulx_u32(&mut x97, &mut x98, x79, 0x7d4d9b00); + let mut x99: u32 = 0; + let mut x100: u32 = 0; + fiat_bp512_mulx_u32(&mut x99, &mut x100, x79, 0x9bc66842); + let mut x101: u32 = 0; + let mut x102: u32 = 0; + fiat_bp512_mulx_u32(&mut x101, &mut x102, x79, 0xaecda12a); + let mut x103: u32 = 0; + let mut x104: u32 = 0; + fiat_bp512_mulx_u32(&mut x103, &mut x104, x79, 0xe6a380e6); + let mut x105: u32 = 0; + let mut x106: u32 = 0; + fiat_bp512_mulx_u32(&mut x105, &mut x106, x79, 0x2881ff2f); + let mut x107: u32 = 0; + let mut x108: u32 = 0; + fiat_bp512_mulx_u32(&mut x107, &mut x108, x79, 0x2d82c685); + let mut x109: u32 = 0; + let mut x110: u32 = 0; + fiat_bp512_mulx_u32(&mut x109, &mut x110, x79, 0x28aa6056); + let mut x111: u32 = 0; + let mut x112: u32 = 0; + fiat_bp512_mulx_u32(&mut x111, &mut x112, x79, 0x583a48f3); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x113, &mut x114, 0x0, x112, x109); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x110, x107); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x108, x105); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x106, x103); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x104, x101); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x123, &mut x124, x122, x102, x99); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x125, &mut x126, x124, x100, x97); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x127, &mut x128, x126, x98, x95); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x129, &mut x130, x128, x96, x93); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x131, &mut x132, x130, x94, x91); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x133, &mut x134, x132, x92, x89); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x135, &mut x136, x134, x90, x87); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x137, &mut x138, x136, x88, x85); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x139, &mut x140, x138, x86, x83); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x141, &mut x142, x140, x84, x81); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x143, &mut x144, 0x0, x47, x111); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x145, &mut x146, x144, x49, x113); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x147, &mut x148, x146, x51, x115); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x149, &mut x150, x148, x53, x117); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x151, &mut x152, x150, x55, x119); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x153, &mut x154, x152, x57, x121); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x155, &mut x156, x154, x59, x123); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x157, &mut x158, x156, x61, x125); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x159, &mut x160, x158, x63, x127); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x161, &mut x162, x160, x65, x129); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x163, &mut x164, x162, x67, x131); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x165, &mut x166, x164, x69, x133); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x167, &mut x168, x166, x71, x135); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x169, &mut x170, x168, x73, x137); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x171, &mut x172, x170, x75, x139); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x173, &mut x174, x172, x77, x141); + let mut x175: u32 = 0; + let mut x176: u32 = 0; + fiat_bp512_mulx_u32(&mut x175, &mut x176, x1, 0x3c4c9d05); + let mut x177: u32 = 0; + let mut x178: u32 = 0; + fiat_bp512_mulx_u32(&mut x177, &mut x178, x1, 0xa9ff6450); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_mulx_u32(&mut x179, &mut x180, x1, 0x202e1940); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_mulx_u32(&mut x181, &mut x182, x1, 0x2056eecc); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_mulx_u32(&mut x183, &mut x184, x1, 0xa16daa5f); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_mulx_u32(&mut x185, &mut x186, x1, 0xd42bff83); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_mulx_u32(&mut x187, &mut x188, x1, 0x19486fd8); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_mulx_u32(&mut x189, &mut x190, x1, 0xd5898057); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_mulx_u32(&mut x191, &mut x192, x1, 0xe0c19a77); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_mulx_u32(&mut x193, &mut x194, x1, 0x83514a25); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_mulx_u32(&mut x195, &mut x196, x1, 0x53b7f9bc); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_mulx_u32(&mut x197, &mut x198, x1, 0x905affd3); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_mulx_u32(&mut x199, &mut x200, x1, 0x793fb130); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_mulx_u32(&mut x201, &mut x202, x1, 0x27157905); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_mulx_u32(&mut x203, &mut x204, x1, 0x49ad144a); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_mulx_u32(&mut x205, &mut x206, x1, 0x6158f205); + let mut x207: u32 = 0; + let mut x208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x207, &mut x208, 0x0, x206, x203); + let mut x209: u32 = 0; + let mut x210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x209, &mut x210, x208, x204, x201); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x211, &mut x212, x210, x202, x199); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x213, &mut x214, x212, x200, x197); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x215, &mut x216, x214, x198, x195); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x217, &mut x218, x216, x196, x193); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x219, &mut x220, x218, x194, x191); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x221, &mut x222, x220, x192, x189); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x223, &mut x224, x222, x190, x187); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x225, &mut x226, x224, x188, x185); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x227, &mut x228, x226, x186, x183); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x229, &mut x230, x228, x184, x181); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x231, &mut x232, x230, x182, x179); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x233, &mut x234, x232, x180, x177); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x235, &mut x236, x234, x178, x175); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x237, &mut x238, 0x0, x145, x205); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x239, &mut x240, x238, x147, x207); + let mut x241: u32 = 0; + let mut x242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x241, &mut x242, x240, x149, x209); + let mut x243: u32 = 0; + let mut x244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x243, &mut x244, x242, x151, x211); + let mut x245: u32 = 0; + let mut x246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x245, &mut x246, x244, x153, x213); + let mut x247: u32 = 0; + let mut x248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x247, &mut x248, x246, x155, x215); + let mut x249: u32 = 0; + let mut x250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x249, &mut x250, x248, x157, x217); + let mut x251: u32 = 0; + let mut x252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x251, &mut x252, x250, x159, x219); + let mut x253: u32 = 0; + let mut x254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x253, &mut x254, x252, x161, x221); + let mut x255: u32 = 0; + let mut x256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x255, &mut x256, x254, x163, x223); + let mut x257: u32 = 0; + let mut x258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x257, &mut x258, x256, x165, x225); + let mut x259: u32 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x259, &mut x260, x258, x167, x227); + let mut x261: u32 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x261, &mut x262, x260, x169, x229); + let mut x263: u32 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x263, &mut x264, x262, x171, x231); + let mut x265: u32 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x265, &mut x266, x264, x173, x233); + let mut x267: u32 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x267, + &mut x268, + x266, + (((x174 as u32) + ((x78 as u32) + x18)) + ((x142 as u32) + x82)), + x235, + ); + let mut x269: u32 = 0; + let mut x270: u32 = 0; + fiat_bp512_mulx_u32(&mut x269, &mut x270, x237, 0x7d89efc5); + let mut x271: u32 = 0; + let mut x272: u32 = 0; + fiat_bp512_mulx_u32(&mut x271, &mut x272, x269, 0xaadd9db8); + let mut x273: u32 = 0; + let mut x274: u32 = 0; + fiat_bp512_mulx_u32(&mut x273, &mut x274, x269, 0xdbe9c48b); + let mut x275: u32 = 0; + let mut x276: u32 = 0; + fiat_bp512_mulx_u32(&mut x275, &mut x276, x269, 0x3fd4e6ae); + let mut x277: u32 = 0; + let mut x278: u32 = 0; + fiat_bp512_mulx_u32(&mut x277, &mut x278, x269, 0x33c9fc07); + let mut x279: u32 = 0; + let mut x280: u32 = 0; + fiat_bp512_mulx_u32(&mut x279, &mut x280, x269, 0xcb308db3); + let mut x281: u32 = 0; + let mut x282: u32 = 0; + fiat_bp512_mulx_u32(&mut x281, &mut x282, x269, 0xb3c9d20e); + let mut x283: u32 = 0; + let mut x284: u32 = 0; + fiat_bp512_mulx_u32(&mut x283, &mut x284, x269, 0xd6639cca); + let mut x285: u32 = 0; + let mut x286: u32 = 0; + fiat_bp512_mulx_u32(&mut x285, &mut x286, x269, 0x70330871); + let mut x287: u32 = 0; + let mut x288: u32 = 0; + fiat_bp512_mulx_u32(&mut x287, &mut x288, x269, 0x7d4d9b00); + let mut x289: u32 = 0; + let mut x290: u32 = 0; + fiat_bp512_mulx_u32(&mut x289, &mut x290, x269, 0x9bc66842); + let mut x291: u32 = 0; + let mut x292: u32 = 0; + fiat_bp512_mulx_u32(&mut x291, &mut x292, x269, 0xaecda12a); + let mut x293: u32 = 0; + let mut x294: u32 = 0; + fiat_bp512_mulx_u32(&mut x293, &mut x294, x269, 0xe6a380e6); + let mut x295: u32 = 0; + let mut x296: u32 = 0; + fiat_bp512_mulx_u32(&mut x295, &mut x296, x269, 0x2881ff2f); + let mut x297: u32 = 0; + let mut x298: u32 = 0; + fiat_bp512_mulx_u32(&mut x297, &mut x298, x269, 0x2d82c685); + let mut x299: u32 = 0; + let mut x300: u32 = 0; + fiat_bp512_mulx_u32(&mut x299, &mut x300, x269, 0x28aa6056); + let mut x301: u32 = 0; + let mut x302: u32 = 0; + fiat_bp512_mulx_u32(&mut x301, &mut x302, x269, 0x583a48f3); + let mut x303: u32 = 0; + let mut x304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x303, &mut x304, 0x0, x302, x299); + let mut x305: u32 = 0; + let mut x306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x305, &mut x306, x304, x300, x297); + let mut x307: u32 = 0; + let mut x308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x307, &mut x308, x306, x298, x295); + let mut x309: u32 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x309, &mut x310, x308, x296, x293); + let mut x311: u32 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x311, &mut x312, x310, x294, x291); + let mut x313: u32 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x313, &mut x314, x312, x292, x289); + let mut x315: u32 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x315, &mut x316, x314, x290, x287); + let mut x317: u32 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x317, &mut x318, x316, x288, x285); + let mut x319: u32 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x319, &mut x320, x318, x286, x283); + let mut x321: u32 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x321, &mut x322, x320, x284, x281); + let mut x323: u32 = 0; + let mut x324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x323, &mut x324, x322, x282, x279); + let mut x325: u32 = 0; + let mut x326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x325, &mut x326, x324, x280, x277); + let mut x327: u32 = 0; + let mut x328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x327, &mut x328, x326, x278, x275); + let mut x329: u32 = 0; + let mut x330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x329, &mut x330, x328, x276, x273); + let mut x331: u32 = 0; + let mut x332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x331, &mut x332, x330, x274, x271); + let mut x333: u32 = 0; + let mut x334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x333, &mut x334, 0x0, x237, x301); + let mut x335: u32 = 0; + let mut x336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x335, &mut x336, x334, x239, x303); + let mut x337: u32 = 0; + let mut x338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x337, &mut x338, x336, x241, x305); + let mut x339: u32 = 0; + let mut x340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x339, &mut x340, x338, x243, x307); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x341, &mut x342, x340, x245, x309); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x343, &mut x344, x342, x247, x311); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x345, &mut x346, x344, x249, x313); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x347, &mut x348, x346, x251, x315); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x349, &mut x350, x348, x253, x317); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x351, &mut x352, x350, x255, x319); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x353, &mut x354, x352, x257, x321); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x355, &mut x356, x354, x259, x323); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x357, &mut x358, x356, x261, x325); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x359, &mut x360, x358, x263, x327); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x361, &mut x362, x360, x265, x329); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x363, &mut x364, x362, x267, x331); + let mut x365: u32 = 0; + let mut x366: u32 = 0; + fiat_bp512_mulx_u32(&mut x365, &mut x366, x2, 0x3c4c9d05); + let mut x367: u32 = 0; + let mut x368: u32 = 0; + fiat_bp512_mulx_u32(&mut x367, &mut x368, x2, 0xa9ff6450); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp512_mulx_u32(&mut x369, &mut x370, x2, 0x202e1940); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp512_mulx_u32(&mut x371, &mut x372, x2, 0x2056eecc); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp512_mulx_u32(&mut x373, &mut x374, x2, 0xa16daa5f); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp512_mulx_u32(&mut x375, &mut x376, x2, 0xd42bff83); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp512_mulx_u32(&mut x377, &mut x378, x2, 0x19486fd8); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp512_mulx_u32(&mut x379, &mut x380, x2, 0xd5898057); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp512_mulx_u32(&mut x381, &mut x382, x2, 0xe0c19a77); + let mut x383: u32 = 0; + let mut x384: u32 = 0; + fiat_bp512_mulx_u32(&mut x383, &mut x384, x2, 0x83514a25); + let mut x385: u32 = 0; + let mut x386: u32 = 0; + fiat_bp512_mulx_u32(&mut x385, &mut x386, x2, 0x53b7f9bc); + let mut x387: u32 = 0; + let mut x388: u32 = 0; + fiat_bp512_mulx_u32(&mut x387, &mut x388, x2, 0x905affd3); + let mut x389: u32 = 0; + let mut x390: u32 = 0; + fiat_bp512_mulx_u32(&mut x389, &mut x390, x2, 0x793fb130); + let mut x391: u32 = 0; + let mut x392: u32 = 0; + fiat_bp512_mulx_u32(&mut x391, &mut x392, x2, 0x27157905); + let mut x393: u32 = 0; + let mut x394: u32 = 0; + fiat_bp512_mulx_u32(&mut x393, &mut x394, x2, 0x49ad144a); + let mut x395: u32 = 0; + let mut x396: u32 = 0; + fiat_bp512_mulx_u32(&mut x395, &mut x396, x2, 0x6158f205); + let mut x397: u32 = 0; + let mut x398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x397, &mut x398, 0x0, x396, x393); + let mut x399: u32 = 0; + let mut x400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x399, &mut x400, x398, x394, x391); + let mut x401: u32 = 0; + let mut x402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x401, &mut x402, x400, x392, x389); + let mut x403: u32 = 0; + let mut x404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x403, &mut x404, x402, x390, x387); + let mut x405: u32 = 0; + let mut x406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x405, &mut x406, x404, x388, x385); + let mut x407: u32 = 0; + let mut x408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x407, &mut x408, x406, x386, x383); + let mut x409: u32 = 0; + let mut x410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x409, &mut x410, x408, x384, x381); + let mut x411: u32 = 0; + let mut x412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x411, &mut x412, x410, x382, x379); + let mut x413: u32 = 0; + let mut x414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x413, &mut x414, x412, x380, x377); + let mut x415: u32 = 0; + let mut x416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x415, &mut x416, x414, x378, x375); + let mut x417: u32 = 0; + let mut x418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x417, &mut x418, x416, x376, x373); + let mut x419: u32 = 0; + let mut x420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x419, &mut x420, x418, x374, x371); + let mut x421: u32 = 0; + let mut x422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x421, &mut x422, x420, x372, x369); + let mut x423: u32 = 0; + let mut x424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x423, &mut x424, x422, x370, x367); + let mut x425: u32 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x425, &mut x426, x424, x368, x365); + let mut x427: u32 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x427, &mut x428, 0x0, x335, x395); + let mut x429: u32 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x429, &mut x430, x428, x337, x397); + let mut x431: u32 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x431, &mut x432, x430, x339, x399); + let mut x433: u32 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x433, &mut x434, x432, x341, x401); + let mut x435: u32 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x435, &mut x436, x434, x343, x403); + let mut x437: u32 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x437, &mut x438, x436, x345, x405); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x439, &mut x440, x438, x347, x407); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x441, &mut x442, x440, x349, x409); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x443, &mut x444, x442, x351, x411); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x445, &mut x446, x444, x353, x413); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x447, &mut x448, x446, x355, x415); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x449, &mut x450, x448, x357, x417); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x451, &mut x452, x450, x359, x419); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x453, &mut x454, x452, x361, x421); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x455, &mut x456, x454, x363, x423); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x457, + &mut x458, + x456, + (((x364 as u32) + ((x268 as u32) + ((x236 as u32) + x176))) + ((x332 as u32) + x272)), + x425, + ); + let mut x459: u32 = 0; + let mut x460: u32 = 0; + fiat_bp512_mulx_u32(&mut x459, &mut x460, x427, 0x7d89efc5); + let mut x461: u32 = 0; + let mut x462: u32 = 0; + fiat_bp512_mulx_u32(&mut x461, &mut x462, x459, 0xaadd9db8); + let mut x463: u32 = 0; + let mut x464: u32 = 0; + fiat_bp512_mulx_u32(&mut x463, &mut x464, x459, 0xdbe9c48b); + let mut x465: u32 = 0; + let mut x466: u32 = 0; + fiat_bp512_mulx_u32(&mut x465, &mut x466, x459, 0x3fd4e6ae); + let mut x467: u32 = 0; + let mut x468: u32 = 0; + fiat_bp512_mulx_u32(&mut x467, &mut x468, x459, 0x33c9fc07); + let mut x469: u32 = 0; + let mut x470: u32 = 0; + fiat_bp512_mulx_u32(&mut x469, &mut x470, x459, 0xcb308db3); + let mut x471: u32 = 0; + let mut x472: u32 = 0; + fiat_bp512_mulx_u32(&mut x471, &mut x472, x459, 0xb3c9d20e); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_mulx_u32(&mut x473, &mut x474, x459, 0xd6639cca); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_mulx_u32(&mut x475, &mut x476, x459, 0x70330871); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_mulx_u32(&mut x477, &mut x478, x459, 0x7d4d9b00); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_mulx_u32(&mut x479, &mut x480, x459, 0x9bc66842); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_mulx_u32(&mut x481, &mut x482, x459, 0xaecda12a); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_mulx_u32(&mut x483, &mut x484, x459, 0xe6a380e6); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_mulx_u32(&mut x485, &mut x486, x459, 0x2881ff2f); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_mulx_u32(&mut x487, &mut x488, x459, 0x2d82c685); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_mulx_u32(&mut x489, &mut x490, x459, 0x28aa6056); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_mulx_u32(&mut x491, &mut x492, x459, 0x583a48f3); + let mut x493: u32 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x493, &mut x494, 0x0, x492, x489); + let mut x495: u32 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x495, &mut x496, x494, x490, x487); + let mut x497: u32 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x497, &mut x498, x496, x488, x485); + let mut x499: u32 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x499, &mut x500, x498, x486, x483); + let mut x501: u32 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x501, &mut x502, x500, x484, x481); + let mut x503: u32 = 0; + let mut x504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x503, &mut x504, x502, x482, x479); + let mut x505: u32 = 0; + let mut x506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x505, &mut x506, x504, x480, x477); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x507, &mut x508, x506, x478, x475); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x509, &mut x510, x508, x476, x473); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x511, &mut x512, x510, x474, x471); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x513, &mut x514, x512, x472, x469); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x515, &mut x516, x514, x470, x467); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x517, &mut x518, x516, x468, x465); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x519, &mut x520, x518, x466, x463); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x521, &mut x522, x520, x464, x461); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x523, &mut x524, 0x0, x427, x491); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x525, &mut x526, x524, x429, x493); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x527, &mut x528, x526, x431, x495); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x529, &mut x530, x528, x433, x497); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x531, &mut x532, x530, x435, x499); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x533, &mut x534, x532, x437, x501); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x535, &mut x536, x534, x439, x503); + let mut x537: u32 = 0; + let mut x538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x537, &mut x538, x536, x441, x505); + let mut x539: u32 = 0; + let mut x540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x539, &mut x540, x538, x443, x507); + let mut x541: u32 = 0; + let mut x542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x541, &mut x542, x540, x445, x509); + let mut x543: u32 = 0; + let mut x544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x543, &mut x544, x542, x447, x511); + let mut x545: u32 = 0; + let mut x546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x545, &mut x546, x544, x449, x513); + let mut x547: u32 = 0; + let mut x548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x547, &mut x548, x546, x451, x515); + let mut x549: u32 = 0; + let mut x550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x549, &mut x550, x548, x453, x517); + let mut x551: u32 = 0; + let mut x552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x551, &mut x552, x550, x455, x519); + let mut x553: u32 = 0; + let mut x554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x553, &mut x554, x552, x457, x521); + let mut x555: u32 = 0; + let mut x556: u32 = 0; + fiat_bp512_mulx_u32(&mut x555, &mut x556, x3, 0x3c4c9d05); + let mut x557: u32 = 0; + let mut x558: u32 = 0; + fiat_bp512_mulx_u32(&mut x557, &mut x558, x3, 0xa9ff6450); + let mut x559: u32 = 0; + let mut x560: u32 = 0; + fiat_bp512_mulx_u32(&mut x559, &mut x560, x3, 0x202e1940); + let mut x561: u32 = 0; + let mut x562: u32 = 0; + fiat_bp512_mulx_u32(&mut x561, &mut x562, x3, 0x2056eecc); + let mut x563: u32 = 0; + let mut x564: u32 = 0; + fiat_bp512_mulx_u32(&mut x563, &mut x564, x3, 0xa16daa5f); + let mut x565: u32 = 0; + let mut x566: u32 = 0; + fiat_bp512_mulx_u32(&mut x565, &mut x566, x3, 0xd42bff83); + let mut x567: u32 = 0; + let mut x568: u32 = 0; + fiat_bp512_mulx_u32(&mut x567, &mut x568, x3, 0x19486fd8); + let mut x569: u32 = 0; + let mut x570: u32 = 0; + fiat_bp512_mulx_u32(&mut x569, &mut x570, x3, 0xd5898057); + let mut x571: u32 = 0; + let mut x572: u32 = 0; + fiat_bp512_mulx_u32(&mut x571, &mut x572, x3, 0xe0c19a77); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_mulx_u32(&mut x573, &mut x574, x3, 0x83514a25); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_mulx_u32(&mut x575, &mut x576, x3, 0x53b7f9bc); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_mulx_u32(&mut x577, &mut x578, x3, 0x905affd3); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_mulx_u32(&mut x579, &mut x580, x3, 0x793fb130); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_mulx_u32(&mut x581, &mut x582, x3, 0x27157905); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_mulx_u32(&mut x583, &mut x584, x3, 0x49ad144a); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_mulx_u32(&mut x585, &mut x586, x3, 0x6158f205); + let mut x587: u32 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x587, &mut x588, 0x0, x586, x583); + let mut x589: u32 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x589, &mut x590, x588, x584, x581); + let mut x591: u32 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x591, &mut x592, x590, x582, x579); + let mut x593: u32 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x593, &mut x594, x592, x580, x577); + let mut x595: u32 = 0; + let mut x596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x595, &mut x596, x594, x578, x575); + let mut x597: u32 = 0; + let mut x598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x597, &mut x598, x596, x576, x573); + let mut x599: u32 = 0; + let mut x600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x599, &mut x600, x598, x574, x571); + let mut x601: u32 = 0; + let mut x602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x601, &mut x602, x600, x572, x569); + let mut x603: u32 = 0; + let mut x604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x603, &mut x604, x602, x570, x567); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x605, &mut x606, x604, x568, x565); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x607, &mut x608, x606, x566, x563); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x609, &mut x610, x608, x564, x561); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x611, &mut x612, x610, x562, x559); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x613, &mut x614, x612, x560, x557); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x615, &mut x616, x614, x558, x555); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x617, &mut x618, 0x0, x525, x585); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x619, &mut x620, x618, x527, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x621, &mut x622, x620, x529, x589); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x623, &mut x624, x622, x531, x591); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x625, &mut x626, x624, x533, x593); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x627, &mut x628, x626, x535, x595); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x629, &mut x630, x628, x537, x597); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x631, &mut x632, x630, x539, x599); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x633, &mut x634, x632, x541, x601); + let mut x635: u32 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x635, &mut x636, x634, x543, x603); + let mut x637: u32 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x637, &mut x638, x636, x545, x605); + let mut x639: u32 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x639, &mut x640, x638, x547, x607); + let mut x641: u32 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x641, &mut x642, x640, x549, x609); + let mut x643: u32 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x643, &mut x644, x642, x551, x611); + let mut x645: u32 = 0; + let mut x646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x645, &mut x646, x644, x553, x613); + let mut x647: u32 = 0; + let mut x648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x647, + &mut x648, + x646, + (((x554 as u32) + ((x458 as u32) + ((x426 as u32) + x366))) + ((x522 as u32) + x462)), + x615, + ); + let mut x649: u32 = 0; + let mut x650: u32 = 0; + fiat_bp512_mulx_u32(&mut x649, &mut x650, x617, 0x7d89efc5); + let mut x651: u32 = 0; + let mut x652: u32 = 0; + fiat_bp512_mulx_u32(&mut x651, &mut x652, x649, 0xaadd9db8); + let mut x653: u32 = 0; + let mut x654: u32 = 0; + fiat_bp512_mulx_u32(&mut x653, &mut x654, x649, 0xdbe9c48b); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp512_mulx_u32(&mut x655, &mut x656, x649, 0x3fd4e6ae); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp512_mulx_u32(&mut x657, &mut x658, x649, 0x33c9fc07); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp512_mulx_u32(&mut x659, &mut x660, x649, 0xcb308db3); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp512_mulx_u32(&mut x661, &mut x662, x649, 0xb3c9d20e); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp512_mulx_u32(&mut x663, &mut x664, x649, 0xd6639cca); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp512_mulx_u32(&mut x665, &mut x666, x649, 0x70330871); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp512_mulx_u32(&mut x667, &mut x668, x649, 0x7d4d9b00); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp512_mulx_u32(&mut x669, &mut x670, x649, 0x9bc66842); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp512_mulx_u32(&mut x671, &mut x672, x649, 0xaecda12a); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp512_mulx_u32(&mut x673, &mut x674, x649, 0xe6a380e6); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp512_mulx_u32(&mut x675, &mut x676, x649, 0x2881ff2f); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp512_mulx_u32(&mut x677, &mut x678, x649, 0x2d82c685); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp512_mulx_u32(&mut x679, &mut x680, x649, 0x28aa6056); + let mut x681: u32 = 0; + let mut x682: u32 = 0; + fiat_bp512_mulx_u32(&mut x681, &mut x682, x649, 0x583a48f3); + let mut x683: u32 = 0; + let mut x684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x683, &mut x684, 0x0, x682, x679); + let mut x685: u32 = 0; + let mut x686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x685, &mut x686, x684, x680, x677); + let mut x687: u32 = 0; + let mut x688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x687, &mut x688, x686, x678, x675); + let mut x689: u32 = 0; + let mut x690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x689, &mut x690, x688, x676, x673); + let mut x691: u32 = 0; + let mut x692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x691, &mut x692, x690, x674, x671); + let mut x693: u32 = 0; + let mut x694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x693, &mut x694, x692, x672, x669); + let mut x695: u32 = 0; + let mut x696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x695, &mut x696, x694, x670, x667); + let mut x697: u32 = 0; + let mut x698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x697, &mut x698, x696, x668, x665); + let mut x699: u32 = 0; + let mut x700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x699, &mut x700, x698, x666, x663); + let mut x701: u32 = 0; + let mut x702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x701, &mut x702, x700, x664, x661); + let mut x703: u32 = 0; + let mut x704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x703, &mut x704, x702, x662, x659); + let mut x705: u32 = 0; + let mut x706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x705, &mut x706, x704, x660, x657); + let mut x707: u32 = 0; + let mut x708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x707, &mut x708, x706, x658, x655); + let mut x709: u32 = 0; + let mut x710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x709, &mut x710, x708, x656, x653); + let mut x711: u32 = 0; + let mut x712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x711, &mut x712, x710, x654, x651); + let mut x713: u32 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x713, &mut x714, 0x0, x617, x681); + let mut x715: u32 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x715, &mut x716, x714, x619, x683); + let mut x717: u32 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x717, &mut x718, x716, x621, x685); + let mut x719: u32 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x719, &mut x720, x718, x623, x687); + let mut x721: u32 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x721, &mut x722, x720, x625, x689); + let mut x723: u32 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x723, &mut x724, x722, x627, x691); + let mut x725: u32 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x725, &mut x726, x724, x629, x693); + let mut x727: u32 = 0; + let mut x728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x727, &mut x728, x726, x631, x695); + let mut x729: u32 = 0; + let mut x730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x729, &mut x730, x728, x633, x697); + let mut x731: u32 = 0; + let mut x732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x731, &mut x732, x730, x635, x699); + let mut x733: u32 = 0; + let mut x734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x733, &mut x734, x732, x637, x701); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x735, &mut x736, x734, x639, x703); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x737, &mut x738, x736, x641, x705); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x739, &mut x740, x738, x643, x707); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x741, &mut x742, x740, x645, x709); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x743, &mut x744, x742, x647, x711); + let mut x745: u32 = 0; + let mut x746: u32 = 0; + fiat_bp512_mulx_u32(&mut x745, &mut x746, x4, 0x3c4c9d05); + let mut x747: u32 = 0; + let mut x748: u32 = 0; + fiat_bp512_mulx_u32(&mut x747, &mut x748, x4, 0xa9ff6450); + let mut x749: u32 = 0; + let mut x750: u32 = 0; + fiat_bp512_mulx_u32(&mut x749, &mut x750, x4, 0x202e1940); + let mut x751: u32 = 0; + let mut x752: u32 = 0; + fiat_bp512_mulx_u32(&mut x751, &mut x752, x4, 0x2056eecc); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp512_mulx_u32(&mut x753, &mut x754, x4, 0xa16daa5f); + let mut x755: u32 = 0; + let mut x756: u32 = 0; + fiat_bp512_mulx_u32(&mut x755, &mut x756, x4, 0xd42bff83); + let mut x757: u32 = 0; + let mut x758: u32 = 0; + fiat_bp512_mulx_u32(&mut x757, &mut x758, x4, 0x19486fd8); + let mut x759: u32 = 0; + let mut x760: u32 = 0; + fiat_bp512_mulx_u32(&mut x759, &mut x760, x4, 0xd5898057); + let mut x761: u32 = 0; + let mut x762: u32 = 0; + fiat_bp512_mulx_u32(&mut x761, &mut x762, x4, 0xe0c19a77); + let mut x763: u32 = 0; + let mut x764: u32 = 0; + fiat_bp512_mulx_u32(&mut x763, &mut x764, x4, 0x83514a25); + let mut x765: u32 = 0; + let mut x766: u32 = 0; + fiat_bp512_mulx_u32(&mut x765, &mut x766, x4, 0x53b7f9bc); + let mut x767: u32 = 0; + let mut x768: u32 = 0; + fiat_bp512_mulx_u32(&mut x767, &mut x768, x4, 0x905affd3); + let mut x769: u32 = 0; + let mut x770: u32 = 0; + fiat_bp512_mulx_u32(&mut x769, &mut x770, x4, 0x793fb130); + let mut x771: u32 = 0; + let mut x772: u32 = 0; + fiat_bp512_mulx_u32(&mut x771, &mut x772, x4, 0x27157905); + let mut x773: u32 = 0; + let mut x774: u32 = 0; + fiat_bp512_mulx_u32(&mut x773, &mut x774, x4, 0x49ad144a); + let mut x775: u32 = 0; + let mut x776: u32 = 0; + fiat_bp512_mulx_u32(&mut x775, &mut x776, x4, 0x6158f205); + let mut x777: u32 = 0; + let mut x778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x777, &mut x778, 0x0, x776, x773); + let mut x779: u32 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x779, &mut x780, x778, x774, x771); + let mut x781: u32 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x781, &mut x782, x780, x772, x769); + let mut x783: u32 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x783, &mut x784, x782, x770, x767); + let mut x785: u32 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x785, &mut x786, x784, x768, x765); + let mut x787: u32 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x787, &mut x788, x786, x766, x763); + let mut x789: u32 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x789, &mut x790, x788, x764, x761); + let mut x791: u32 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x791, &mut x792, x790, x762, x759); + let mut x793: u32 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x793, &mut x794, x792, x760, x757); + let mut x795: u32 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x795, &mut x796, x794, x758, x755); + let mut x797: u32 = 0; + let mut x798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x797, &mut x798, x796, x756, x753); + let mut x799: u32 = 0; + let mut x800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x799, &mut x800, x798, x754, x751); + let mut x801: u32 = 0; + let mut x802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x801, &mut x802, x800, x752, x749); + let mut x803: u32 = 0; + let mut x804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x803, &mut x804, x802, x750, x747); + let mut x805: u32 = 0; + let mut x806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x805, &mut x806, x804, x748, x745); + let mut x807: u32 = 0; + let mut x808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x807, &mut x808, 0x0, x715, x775); + let mut x809: u32 = 0; + let mut x810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x809, &mut x810, x808, x717, x777); + let mut x811: u32 = 0; + let mut x812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x811, &mut x812, x810, x719, x779); + let mut x813: u32 = 0; + let mut x814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x813, &mut x814, x812, x721, x781); + let mut x815: u32 = 0; + let mut x816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x815, &mut x816, x814, x723, x783); + let mut x817: u32 = 0; + let mut x818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x817, &mut x818, x816, x725, x785); + let mut x819: u32 = 0; + let mut x820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x819, &mut x820, x818, x727, x787); + let mut x821: u32 = 0; + let mut x822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x821, &mut x822, x820, x729, x789); + let mut x823: u32 = 0; + let mut x824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x823, &mut x824, x822, x731, x791); + let mut x825: u32 = 0; + let mut x826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x825, &mut x826, x824, x733, x793); + let mut x827: u32 = 0; + let mut x828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x827, &mut x828, x826, x735, x795); + let mut x829: u32 = 0; + let mut x830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x829, &mut x830, x828, x737, x797); + let mut x831: u32 = 0; + let mut x832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x831, &mut x832, x830, x739, x799); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x833, &mut x834, x832, x741, x801); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x835, &mut x836, x834, x743, x803); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x837, + &mut x838, + x836, + (((x744 as u32) + ((x648 as u32) + ((x616 as u32) + x556))) + ((x712 as u32) + x652)), + x805, + ); + let mut x839: u32 = 0; + let mut x840: u32 = 0; + fiat_bp512_mulx_u32(&mut x839, &mut x840, x807, 0x7d89efc5); + let mut x841: u32 = 0; + let mut x842: u32 = 0; + fiat_bp512_mulx_u32(&mut x841, &mut x842, x839, 0xaadd9db8); + let mut x843: u32 = 0; + let mut x844: u32 = 0; + fiat_bp512_mulx_u32(&mut x843, &mut x844, x839, 0xdbe9c48b); + let mut x845: u32 = 0; + let mut x846: u32 = 0; + fiat_bp512_mulx_u32(&mut x845, &mut x846, x839, 0x3fd4e6ae); + let mut x847: u32 = 0; + let mut x848: u32 = 0; + fiat_bp512_mulx_u32(&mut x847, &mut x848, x839, 0x33c9fc07); + let mut x849: u32 = 0; + let mut x850: u32 = 0; + fiat_bp512_mulx_u32(&mut x849, &mut x850, x839, 0xcb308db3); + let mut x851: u32 = 0; + let mut x852: u32 = 0; + fiat_bp512_mulx_u32(&mut x851, &mut x852, x839, 0xb3c9d20e); + let mut x853: u32 = 0; + let mut x854: u32 = 0; + fiat_bp512_mulx_u32(&mut x853, &mut x854, x839, 0xd6639cca); + let mut x855: u32 = 0; + let mut x856: u32 = 0; + fiat_bp512_mulx_u32(&mut x855, &mut x856, x839, 0x70330871); + let mut x857: u32 = 0; + let mut x858: u32 = 0; + fiat_bp512_mulx_u32(&mut x857, &mut x858, x839, 0x7d4d9b00); + let mut x859: u32 = 0; + let mut x860: u32 = 0; + fiat_bp512_mulx_u32(&mut x859, &mut x860, x839, 0x9bc66842); + let mut x861: u32 = 0; + let mut x862: u32 = 0; + fiat_bp512_mulx_u32(&mut x861, &mut x862, x839, 0xaecda12a); + let mut x863: u32 = 0; + let mut x864: u32 = 0; + fiat_bp512_mulx_u32(&mut x863, &mut x864, x839, 0xe6a380e6); + let mut x865: u32 = 0; + let mut x866: u32 = 0; + fiat_bp512_mulx_u32(&mut x865, &mut x866, x839, 0x2881ff2f); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_mulx_u32(&mut x867, &mut x868, x839, 0x2d82c685); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_mulx_u32(&mut x869, &mut x870, x839, 0x28aa6056); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_mulx_u32(&mut x871, &mut x872, x839, 0x583a48f3); + let mut x873: u32 = 0; + let mut x874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x873, &mut x874, 0x0, x872, x869); + let mut x875: u32 = 0; + let mut x876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x875, &mut x876, x874, x870, x867); + let mut x877: u32 = 0; + let mut x878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x877, &mut x878, x876, x868, x865); + let mut x879: u32 = 0; + let mut x880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x879, &mut x880, x878, x866, x863); + let mut x881: u32 = 0; + let mut x882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x881, &mut x882, x880, x864, x861); + let mut x883: u32 = 0; + let mut x884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x883, &mut x884, x882, x862, x859); + let mut x885: u32 = 0; + let mut x886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x885, &mut x886, x884, x860, x857); + let mut x887: u32 = 0; + let mut x888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x887, &mut x888, x886, x858, x855); + let mut x889: u32 = 0; + let mut x890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x889, &mut x890, x888, x856, x853); + let mut x891: u32 = 0; + let mut x892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x891, &mut x892, x890, x854, x851); + let mut x893: u32 = 0; + let mut x894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x893, &mut x894, x892, x852, x849); + let mut x895: u32 = 0; + let mut x896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x895, &mut x896, x894, x850, x847); + let mut x897: u32 = 0; + let mut x898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x897, &mut x898, x896, x848, x845); + let mut x899: u32 = 0; + let mut x900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x899, &mut x900, x898, x846, x843); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x901, &mut x902, x900, x844, x841); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x903, &mut x904, 0x0, x807, x871); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x905, &mut x906, x904, x809, x873); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x907, &mut x908, x906, x811, x875); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x909, &mut x910, x908, x813, x877); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x911, &mut x912, x910, x815, x879); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x913, &mut x914, x912, x817, x881); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x915, &mut x916, x914, x819, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x917, &mut x918, x916, x821, x885); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x919, &mut x920, x918, x823, x887); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x921, &mut x922, x920, x825, x889); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x923, &mut x924, x922, x827, x891); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x925, &mut x926, x924, x829, x893); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x927, &mut x928, x926, x831, x895); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x929, &mut x930, x928, x833, x897); + let mut x931: u32 = 0; + let mut x932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x931, &mut x932, x930, x835, x899); + let mut x933: u32 = 0; + let mut x934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x933, &mut x934, x932, x837, x901); + let mut x935: u32 = 0; + let mut x936: u32 = 0; + fiat_bp512_mulx_u32(&mut x935, &mut x936, x5, 0x3c4c9d05); + let mut x937: u32 = 0; + let mut x938: u32 = 0; + fiat_bp512_mulx_u32(&mut x937, &mut x938, x5, 0xa9ff6450); + let mut x939: u32 = 0; + let mut x940: u32 = 0; + fiat_bp512_mulx_u32(&mut x939, &mut x940, x5, 0x202e1940); + let mut x941: u32 = 0; + let mut x942: u32 = 0; + fiat_bp512_mulx_u32(&mut x941, &mut x942, x5, 0x2056eecc); + let mut x943: u32 = 0; + let mut x944: u32 = 0; + fiat_bp512_mulx_u32(&mut x943, &mut x944, x5, 0xa16daa5f); + let mut x945: u32 = 0; + let mut x946: u32 = 0; + fiat_bp512_mulx_u32(&mut x945, &mut x946, x5, 0xd42bff83); + let mut x947: u32 = 0; + let mut x948: u32 = 0; + fiat_bp512_mulx_u32(&mut x947, &mut x948, x5, 0x19486fd8); + let mut x949: u32 = 0; + let mut x950: u32 = 0; + fiat_bp512_mulx_u32(&mut x949, &mut x950, x5, 0xd5898057); + let mut x951: u32 = 0; + let mut x952: u32 = 0; + fiat_bp512_mulx_u32(&mut x951, &mut x952, x5, 0xe0c19a77); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp512_mulx_u32(&mut x953, &mut x954, x5, 0x83514a25); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp512_mulx_u32(&mut x955, &mut x956, x5, 0x53b7f9bc); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp512_mulx_u32(&mut x957, &mut x958, x5, 0x905affd3); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp512_mulx_u32(&mut x959, &mut x960, x5, 0x793fb130); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp512_mulx_u32(&mut x961, &mut x962, x5, 0x27157905); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp512_mulx_u32(&mut x963, &mut x964, x5, 0x49ad144a); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp512_mulx_u32(&mut x965, &mut x966, x5, 0x6158f205); + let mut x967: u32 = 0; + let mut x968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x967, &mut x968, 0x0, x966, x963); + let mut x969: u32 = 0; + let mut x970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x969, &mut x970, x968, x964, x961); + let mut x971: u32 = 0; + let mut x972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x971, &mut x972, x970, x962, x959); + let mut x973: u32 = 0; + let mut x974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x973, &mut x974, x972, x960, x957); + let mut x975: u32 = 0; + let mut x976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x975, &mut x976, x974, x958, x955); + let mut x977: u32 = 0; + let mut x978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x977, &mut x978, x976, x956, x953); + let mut x979: u32 = 0; + let mut x980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x979, &mut x980, x978, x954, x951); + let mut x981: u32 = 0; + let mut x982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x981, &mut x982, x980, x952, x949); + let mut x983: u32 = 0; + let mut x984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x983, &mut x984, x982, x950, x947); + let mut x985: u32 = 0; + let mut x986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x985, &mut x986, x984, x948, x945); + let mut x987: u32 = 0; + let mut x988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x987, &mut x988, x986, x946, x943); + let mut x989: u32 = 0; + let mut x990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x989, &mut x990, x988, x944, x941); + let mut x991: u32 = 0; + let mut x992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x991, &mut x992, x990, x942, x939); + let mut x993: u32 = 0; + let mut x994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x993, &mut x994, x992, x940, x937); + let mut x995: u32 = 0; + let mut x996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x995, &mut x996, x994, x938, x935); + let mut x997: u32 = 0; + let mut x998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x997, &mut x998, 0x0, x905, x965); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x999, &mut x1000, x998, x907, x967); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1001, &mut x1002, x1000, x909, x969); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1003, &mut x1004, x1002, x911, x971); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1005, &mut x1006, x1004, x913, x973); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1007, &mut x1008, x1006, x915, x975); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1009, &mut x1010, x1008, x917, x977); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1011, &mut x1012, x1010, x919, x979); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1013, &mut x1014, x1012, x921, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1015, &mut x1016, x1014, x923, x983); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1017, &mut x1018, x1016, x925, x985); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1019, &mut x1020, x1018, x927, x987); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1021, &mut x1022, x1020, x929, x989); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1023, &mut x1024, x1022, x931, x991); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1025, &mut x1026, x1024, x933, x993); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1027, + &mut x1028, + x1026, + (((x934 as u32) + ((x838 as u32) + ((x806 as u32) + x746))) + ((x902 as u32) + x842)), + x995, + ); + let mut x1029: u32 = 0; + let mut x1030: u32 = 0; + fiat_bp512_mulx_u32(&mut x1029, &mut x1030, x997, 0x7d89efc5); + let mut x1031: u32 = 0; + let mut x1032: u32 = 0; + fiat_bp512_mulx_u32(&mut x1031, &mut x1032, x1029, 0xaadd9db8); + let mut x1033: u32 = 0; + let mut x1034: u32 = 0; + fiat_bp512_mulx_u32(&mut x1033, &mut x1034, x1029, 0xdbe9c48b); + let mut x1035: u32 = 0; + let mut x1036: u32 = 0; + fiat_bp512_mulx_u32(&mut x1035, &mut x1036, x1029, 0x3fd4e6ae); + let mut x1037: u32 = 0; + let mut x1038: u32 = 0; + fiat_bp512_mulx_u32(&mut x1037, &mut x1038, x1029, 0x33c9fc07); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp512_mulx_u32(&mut x1039, &mut x1040, x1029, 0xcb308db3); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp512_mulx_u32(&mut x1041, &mut x1042, x1029, 0xb3c9d20e); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp512_mulx_u32(&mut x1043, &mut x1044, x1029, 0xd6639cca); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp512_mulx_u32(&mut x1045, &mut x1046, x1029, 0x70330871); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp512_mulx_u32(&mut x1047, &mut x1048, x1029, 0x7d4d9b00); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp512_mulx_u32(&mut x1049, &mut x1050, x1029, 0x9bc66842); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp512_mulx_u32(&mut x1051, &mut x1052, x1029, 0xaecda12a); + let mut x1053: u32 = 0; + let mut x1054: u32 = 0; + fiat_bp512_mulx_u32(&mut x1053, &mut x1054, x1029, 0xe6a380e6); + let mut x1055: u32 = 0; + let mut x1056: u32 = 0; + fiat_bp512_mulx_u32(&mut x1055, &mut x1056, x1029, 0x2881ff2f); + let mut x1057: u32 = 0; + let mut x1058: u32 = 0; + fiat_bp512_mulx_u32(&mut x1057, &mut x1058, x1029, 0x2d82c685); + let mut x1059: u32 = 0; + let mut x1060: u32 = 0; + fiat_bp512_mulx_u32(&mut x1059, &mut x1060, x1029, 0x28aa6056); + let mut x1061: u32 = 0; + let mut x1062: u32 = 0; + fiat_bp512_mulx_u32(&mut x1061, &mut x1062, x1029, 0x583a48f3); + let mut x1063: u32 = 0; + let mut x1064: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1063, &mut x1064, 0x0, x1062, x1059); + let mut x1065: u32 = 0; + let mut x1066: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1065, &mut x1066, x1064, x1060, x1057); + let mut x1067: u32 = 0; + let mut x1068: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1067, &mut x1068, x1066, x1058, x1055); + let mut x1069: u32 = 0; + let mut x1070: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1069, &mut x1070, x1068, x1056, x1053); + let mut x1071: u32 = 0; + let mut x1072: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1071, &mut x1072, x1070, x1054, x1051); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1073, &mut x1074, x1072, x1052, x1049); + let mut x1075: u32 = 0; + let mut x1076: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1075, &mut x1076, x1074, x1050, x1047); + let mut x1077: u32 = 0; + let mut x1078: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1077, &mut x1078, x1076, x1048, x1045); + let mut x1079: u32 = 0; + let mut x1080: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1079, &mut x1080, x1078, x1046, x1043); + let mut x1081: u32 = 0; + let mut x1082: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1044, x1041); + let mut x1083: u32 = 0; + let mut x1084: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1042, x1039); + let mut x1085: u32 = 0; + let mut x1086: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1040, x1037); + let mut x1087: u32 = 0; + let mut x1088: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1038, x1035); + let mut x1089: u32 = 0; + let mut x1090: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1036, x1033); + let mut x1091: u32 = 0; + let mut x1092: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1034, x1031); + let mut x1093: u32 = 0; + let mut x1094: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1093, &mut x1094, 0x0, x997, x1061); + let mut x1095: u32 = 0; + let mut x1096: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1095, &mut x1096, x1094, x999, x1063); + let mut x1097: u32 = 0; + let mut x1098: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1001, x1065); + let mut x1099: u32 = 0; + let mut x1100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1003, x1067); + let mut x1101: u32 = 0; + let mut x1102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1101, &mut x1102, x1100, x1005, x1069); + let mut x1103: u32 = 0; + let mut x1104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1103, &mut x1104, x1102, x1007, x1071); + let mut x1105: u32 = 0; + let mut x1106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1009, x1073); + let mut x1107: u32 = 0; + let mut x1108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1011, x1075); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1013, x1077); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1015, x1079); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1017, x1081); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1019, x1083); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1021, x1085); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1023, x1087); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1025, x1089); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1027, x1091); + let mut x1125: u32 = 0; + let mut x1126: u32 = 0; + fiat_bp512_mulx_u32(&mut x1125, &mut x1126, x6, 0x3c4c9d05); + let mut x1127: u32 = 0; + let mut x1128: u32 = 0; + fiat_bp512_mulx_u32(&mut x1127, &mut x1128, x6, 0xa9ff6450); + let mut x1129: u32 = 0; + let mut x1130: u32 = 0; + fiat_bp512_mulx_u32(&mut x1129, &mut x1130, x6, 0x202e1940); + let mut x1131: u32 = 0; + let mut x1132: u32 = 0; + fiat_bp512_mulx_u32(&mut x1131, &mut x1132, x6, 0x2056eecc); + let mut x1133: u32 = 0; + let mut x1134: u32 = 0; + fiat_bp512_mulx_u32(&mut x1133, &mut x1134, x6, 0xa16daa5f); + let mut x1135: u32 = 0; + let mut x1136: u32 = 0; + fiat_bp512_mulx_u32(&mut x1135, &mut x1136, x6, 0xd42bff83); + let mut x1137: u32 = 0; + let mut x1138: u32 = 0; + fiat_bp512_mulx_u32(&mut x1137, &mut x1138, x6, 0x19486fd8); + let mut x1139: u32 = 0; + let mut x1140: u32 = 0; + fiat_bp512_mulx_u32(&mut x1139, &mut x1140, x6, 0xd5898057); + let mut x1141: u32 = 0; + let mut x1142: u32 = 0; + fiat_bp512_mulx_u32(&mut x1141, &mut x1142, x6, 0xe0c19a77); + let mut x1143: u32 = 0; + let mut x1144: u32 = 0; + fiat_bp512_mulx_u32(&mut x1143, &mut x1144, x6, 0x83514a25); + let mut x1145: u32 = 0; + let mut x1146: u32 = 0; + fiat_bp512_mulx_u32(&mut x1145, &mut x1146, x6, 0x53b7f9bc); + let mut x1147: u32 = 0; + let mut x1148: u32 = 0; + fiat_bp512_mulx_u32(&mut x1147, &mut x1148, x6, 0x905affd3); + let mut x1149: u32 = 0; + let mut x1150: u32 = 0; + fiat_bp512_mulx_u32(&mut x1149, &mut x1150, x6, 0x793fb130); + let mut x1151: u32 = 0; + let mut x1152: u32 = 0; + fiat_bp512_mulx_u32(&mut x1151, &mut x1152, x6, 0x27157905); + let mut x1153: u32 = 0; + let mut x1154: u32 = 0; + fiat_bp512_mulx_u32(&mut x1153, &mut x1154, x6, 0x49ad144a); + let mut x1155: u32 = 0; + let mut x1156: u32 = 0; + fiat_bp512_mulx_u32(&mut x1155, &mut x1156, x6, 0x6158f205); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1157, &mut x1158, 0x0, x1156, x1153); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1154, x1151); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1152, x1149); + let mut x1163: u32 = 0; + let mut x1164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1163, &mut x1164, x1162, x1150, x1147); + let mut x1165: u32 = 0; + let mut x1166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1165, &mut x1166, x1164, x1148, x1145); + let mut x1167: u32 = 0; + let mut x1168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1167, &mut x1168, x1166, x1146, x1143); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1169, &mut x1170, x1168, x1144, x1141); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1142, x1139); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1140, x1137); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1138, x1135); + let mut x1177: u32 = 0; + let mut x1178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1136, x1133); + let mut x1179: u32 = 0; + let mut x1180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1134, x1131); + let mut x1181: u32 = 0; + let mut x1182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1132, x1129); + let mut x1183: u32 = 0; + let mut x1184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1130, x1127); + let mut x1185: u32 = 0; + let mut x1186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1128, x1125); + let mut x1187: u32 = 0; + let mut x1188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1187, &mut x1188, 0x0, x1095, x1155); + let mut x1189: u32 = 0; + let mut x1190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1097, x1157); + let mut x1191: u32 = 0; + let mut x1192: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1099, x1159); + let mut x1193: u32 = 0; + let mut x1194: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1193, &mut x1194, x1192, x1101, x1161); + let mut x1195: u32 = 0; + let mut x1196: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1195, &mut x1196, x1194, x1103, x1163); + let mut x1197: u32 = 0; + let mut x1198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1197, &mut x1198, x1196, x1105, x1165); + let mut x1199: u32 = 0; + let mut x1200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1199, &mut x1200, x1198, x1107, x1167); + let mut x1201: u32 = 0; + let mut x1202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1201, &mut x1202, x1200, x1109, x1169); + let mut x1203: u32 = 0; + let mut x1204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1203, &mut x1204, x1202, x1111, x1171); + let mut x1205: u32 = 0; + let mut x1206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1205, &mut x1206, x1204, x1113, x1173); + let mut x1207: u32 = 0; + let mut x1208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1207, &mut x1208, x1206, x1115, x1175); + let mut x1209: u32 = 0; + let mut x1210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1209, &mut x1210, x1208, x1117, x1177); + let mut x1211: u32 = 0; + let mut x1212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1211, &mut x1212, x1210, x1119, x1179); + let mut x1213: u32 = 0; + let mut x1214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1213, &mut x1214, x1212, x1121, x1181); + let mut x1215: u32 = 0; + let mut x1216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1215, &mut x1216, x1214, x1123, x1183); + let mut x1217: u32 = 0; + let mut x1218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1217, + &mut x1218, + x1216, + (((x1124 as u32) + ((x1028 as u32) + ((x996 as u32) + x936))) + ((x1092 as u32) + x1032)), + x1185, + ); + let mut x1219: u32 = 0; + let mut x1220: u32 = 0; + fiat_bp512_mulx_u32(&mut x1219, &mut x1220, x1187, 0x7d89efc5); + let mut x1221: u32 = 0; + let mut x1222: u32 = 0; + fiat_bp512_mulx_u32(&mut x1221, &mut x1222, x1219, 0xaadd9db8); + let mut x1223: u32 = 0; + let mut x1224: u32 = 0; + fiat_bp512_mulx_u32(&mut x1223, &mut x1224, x1219, 0xdbe9c48b); + let mut x1225: u32 = 0; + let mut x1226: u32 = 0; + fiat_bp512_mulx_u32(&mut x1225, &mut x1226, x1219, 0x3fd4e6ae); + let mut x1227: u32 = 0; + let mut x1228: u32 = 0; + fiat_bp512_mulx_u32(&mut x1227, &mut x1228, x1219, 0x33c9fc07); + let mut x1229: u32 = 0; + let mut x1230: u32 = 0; + fiat_bp512_mulx_u32(&mut x1229, &mut x1230, x1219, 0xcb308db3); + let mut x1231: u32 = 0; + let mut x1232: u32 = 0; + fiat_bp512_mulx_u32(&mut x1231, &mut x1232, x1219, 0xb3c9d20e); + let mut x1233: u32 = 0; + let mut x1234: u32 = 0; + fiat_bp512_mulx_u32(&mut x1233, &mut x1234, x1219, 0xd6639cca); + let mut x1235: u32 = 0; + let mut x1236: u32 = 0; + fiat_bp512_mulx_u32(&mut x1235, &mut x1236, x1219, 0x70330871); + let mut x1237: u32 = 0; + let mut x1238: u32 = 0; + fiat_bp512_mulx_u32(&mut x1237, &mut x1238, x1219, 0x7d4d9b00); + let mut x1239: u32 = 0; + let mut x1240: u32 = 0; + fiat_bp512_mulx_u32(&mut x1239, &mut x1240, x1219, 0x9bc66842); + let mut x1241: u32 = 0; + let mut x1242: u32 = 0; + fiat_bp512_mulx_u32(&mut x1241, &mut x1242, x1219, 0xaecda12a); + let mut x1243: u32 = 0; + let mut x1244: u32 = 0; + fiat_bp512_mulx_u32(&mut x1243, &mut x1244, x1219, 0xe6a380e6); + let mut x1245: u32 = 0; + let mut x1246: u32 = 0; + fiat_bp512_mulx_u32(&mut x1245, &mut x1246, x1219, 0x2881ff2f); + let mut x1247: u32 = 0; + let mut x1248: u32 = 0; + fiat_bp512_mulx_u32(&mut x1247, &mut x1248, x1219, 0x2d82c685); + let mut x1249: u32 = 0; + let mut x1250: u32 = 0; + fiat_bp512_mulx_u32(&mut x1249, &mut x1250, x1219, 0x28aa6056); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp512_mulx_u32(&mut x1251, &mut x1252, x1219, 0x583a48f3); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1253, &mut x1254, 0x0, x1252, x1249); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1250, x1247); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1248, x1245); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1246, x1243); + let mut x1261: u32 = 0; + let mut x1262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1261, &mut x1262, x1260, x1244, x1241); + let mut x1263: u32 = 0; + let mut x1264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1263, &mut x1264, x1262, x1242, x1239); + let mut x1265: u32 = 0; + let mut x1266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1265, &mut x1266, x1264, x1240, x1237); + let mut x1267: u32 = 0; + let mut x1268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1267, &mut x1268, x1266, x1238, x1235); + let mut x1269: u32 = 0; + let mut x1270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1269, &mut x1270, x1268, x1236, x1233); + let mut x1271: u32 = 0; + let mut x1272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1271, &mut x1272, x1270, x1234, x1231); + let mut x1273: u32 = 0; + let mut x1274: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1273, &mut x1274, x1272, x1232, x1229); + let mut x1275: u32 = 0; + let mut x1276: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1275, &mut x1276, x1274, x1230, x1227); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1277, &mut x1278, x1276, x1228, x1225); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1226, x1223); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1224, x1221); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1283, &mut x1284, 0x0, x1187, x1251); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1189, x1253); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1191, x1255); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1193, x1257); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1195, x1259); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1197, x1261); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1295, &mut x1296, x1294, x1199, x1263); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1201, x1265); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1203, x1267); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1205, x1269); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1207, x1271); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1209, x1273); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1211, x1275); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1213, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1215, x1279); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1217, x1281); + let mut x1315: u32 = 0; + let mut x1316: u32 = 0; + fiat_bp512_mulx_u32(&mut x1315, &mut x1316, x7, 0x3c4c9d05); + let mut x1317: u32 = 0; + let mut x1318: u32 = 0; + fiat_bp512_mulx_u32(&mut x1317, &mut x1318, x7, 0xa9ff6450); + let mut x1319: u32 = 0; + let mut x1320: u32 = 0; + fiat_bp512_mulx_u32(&mut x1319, &mut x1320, x7, 0x202e1940); + let mut x1321: u32 = 0; + let mut x1322: u32 = 0; + fiat_bp512_mulx_u32(&mut x1321, &mut x1322, x7, 0x2056eecc); + let mut x1323: u32 = 0; + let mut x1324: u32 = 0; + fiat_bp512_mulx_u32(&mut x1323, &mut x1324, x7, 0xa16daa5f); + let mut x1325: u32 = 0; + let mut x1326: u32 = 0; + fiat_bp512_mulx_u32(&mut x1325, &mut x1326, x7, 0xd42bff83); + let mut x1327: u32 = 0; + let mut x1328: u32 = 0; + fiat_bp512_mulx_u32(&mut x1327, &mut x1328, x7, 0x19486fd8); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp512_mulx_u32(&mut x1329, &mut x1330, x7, 0xd5898057); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp512_mulx_u32(&mut x1331, &mut x1332, x7, 0xe0c19a77); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp512_mulx_u32(&mut x1333, &mut x1334, x7, 0x83514a25); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp512_mulx_u32(&mut x1335, &mut x1336, x7, 0x53b7f9bc); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp512_mulx_u32(&mut x1337, &mut x1338, x7, 0x905affd3); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp512_mulx_u32(&mut x1339, &mut x1340, x7, 0x793fb130); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp512_mulx_u32(&mut x1341, &mut x1342, x7, 0x27157905); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp512_mulx_u32(&mut x1343, &mut x1344, x7, 0x49ad144a); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp512_mulx_u32(&mut x1345, &mut x1346, x7, 0x6158f205); + let mut x1347: u32 = 0; + let mut x1348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1347, &mut x1348, 0x0, x1346, x1343); + let mut x1349: u32 = 0; + let mut x1350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1349, &mut x1350, x1348, x1344, x1341); + let mut x1351: u32 = 0; + let mut x1352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1351, &mut x1352, x1350, x1342, x1339); + let mut x1353: u32 = 0; + let mut x1354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1353, &mut x1354, x1352, x1340, x1337); + let mut x1355: u32 = 0; + let mut x1356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1355, &mut x1356, x1354, x1338, x1335); + let mut x1357: u32 = 0; + let mut x1358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1357, &mut x1358, x1356, x1336, x1333); + let mut x1359: u32 = 0; + let mut x1360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1359, &mut x1360, x1358, x1334, x1331); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1361, &mut x1362, x1360, x1332, x1329); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1330, x1327); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1328, x1325); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1326, x1323); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1324, x1321); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1322, x1319); + let mut x1373: u32 = 0; + let mut x1374: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1320, x1317); + let mut x1375: u32 = 0; + let mut x1376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1318, x1315); + let mut x1377: u32 = 0; + let mut x1378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1377, &mut x1378, 0x0, x1285, x1345); + let mut x1379: u32 = 0; + let mut x1380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1287, x1347); + let mut x1381: u32 = 0; + let mut x1382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1289, x1349); + let mut x1383: u32 = 0; + let mut x1384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1291, x1351); + let mut x1385: u32 = 0; + let mut x1386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1385, &mut x1386, x1384, x1293, x1353); + let mut x1387: u32 = 0; + let mut x1388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1295, x1355); + let mut x1389: u32 = 0; + let mut x1390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1297, x1357); + let mut x1391: u32 = 0; + let mut x1392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1391, &mut x1392, x1390, x1299, x1359); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1301, x1361); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1303, x1363); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1305, x1365); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1307, x1367); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1309, x1369); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1311, x1371); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1313, x1373); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1407, + &mut x1408, + x1406, + (((x1314 as u32) + ((x1218 as u32) + ((x1186 as u32) + x1126))) + ((x1282 as u32) + x1222)), + x1375, + ); + let mut x1409: u32 = 0; + let mut x1410: u32 = 0; + fiat_bp512_mulx_u32(&mut x1409, &mut x1410, x1377, 0x7d89efc5); + let mut x1411: u32 = 0; + let mut x1412: u32 = 0; + fiat_bp512_mulx_u32(&mut x1411, &mut x1412, x1409, 0xaadd9db8); + let mut x1413: u32 = 0; + let mut x1414: u32 = 0; + fiat_bp512_mulx_u32(&mut x1413, &mut x1414, x1409, 0xdbe9c48b); + let mut x1415: u32 = 0; + let mut x1416: u32 = 0; + fiat_bp512_mulx_u32(&mut x1415, &mut x1416, x1409, 0x3fd4e6ae); + let mut x1417: u32 = 0; + let mut x1418: u32 = 0; + fiat_bp512_mulx_u32(&mut x1417, &mut x1418, x1409, 0x33c9fc07); + let mut x1419: u32 = 0; + let mut x1420: u32 = 0; + fiat_bp512_mulx_u32(&mut x1419, &mut x1420, x1409, 0xcb308db3); + let mut x1421: u32 = 0; + let mut x1422: u32 = 0; + fiat_bp512_mulx_u32(&mut x1421, &mut x1422, x1409, 0xb3c9d20e); + let mut x1423: u32 = 0; + let mut x1424: u32 = 0; + fiat_bp512_mulx_u32(&mut x1423, &mut x1424, x1409, 0xd6639cca); + let mut x1425: u32 = 0; + let mut x1426: u32 = 0; + fiat_bp512_mulx_u32(&mut x1425, &mut x1426, x1409, 0x70330871); + let mut x1427: u32 = 0; + let mut x1428: u32 = 0; + fiat_bp512_mulx_u32(&mut x1427, &mut x1428, x1409, 0x7d4d9b00); + let mut x1429: u32 = 0; + let mut x1430: u32 = 0; + fiat_bp512_mulx_u32(&mut x1429, &mut x1430, x1409, 0x9bc66842); + let mut x1431: u32 = 0; + let mut x1432: u32 = 0; + fiat_bp512_mulx_u32(&mut x1431, &mut x1432, x1409, 0xaecda12a); + let mut x1433: u32 = 0; + let mut x1434: u32 = 0; + fiat_bp512_mulx_u32(&mut x1433, &mut x1434, x1409, 0xe6a380e6); + let mut x1435: u32 = 0; + let mut x1436: u32 = 0; + fiat_bp512_mulx_u32(&mut x1435, &mut x1436, x1409, 0x2881ff2f); + let mut x1437: u32 = 0; + let mut x1438: u32 = 0; + fiat_bp512_mulx_u32(&mut x1437, &mut x1438, x1409, 0x2d82c685); + let mut x1439: u32 = 0; + let mut x1440: u32 = 0; + fiat_bp512_mulx_u32(&mut x1439, &mut x1440, x1409, 0x28aa6056); + let mut x1441: u32 = 0; + let mut x1442: u32 = 0; + fiat_bp512_mulx_u32(&mut x1441, &mut x1442, x1409, 0x583a48f3); + let mut x1443: u32 = 0; + let mut x1444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1443, &mut x1444, 0x0, x1442, x1439); + let mut x1445: u32 = 0; + let mut x1446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1445, &mut x1446, x1444, x1440, x1437); + let mut x1447: u32 = 0; + let mut x1448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1447, &mut x1448, x1446, x1438, x1435); + let mut x1449: u32 = 0; + let mut x1450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1449, &mut x1450, x1448, x1436, x1433); + let mut x1451: u32 = 0; + let mut x1452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1451, &mut x1452, x1450, x1434, x1431); + let mut x1453: u32 = 0; + let mut x1454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1453, &mut x1454, x1452, x1432, x1429); + let mut x1455: u32 = 0; + let mut x1456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1455, &mut x1456, x1454, x1430, x1427); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1457, &mut x1458, x1456, x1428, x1425); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1426, x1423); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1424, x1421); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1422, x1419); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1420, x1417); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1418, x1415); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1416, x1413); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1414, x1411); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1473, &mut x1474, 0x0, x1377, x1441); + let mut x1475: u32 = 0; + let mut x1476: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1379, x1443); + let mut x1477: u32 = 0; + let mut x1478: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1477, &mut x1478, x1476, x1381, x1445); + let mut x1479: u32 = 0; + let mut x1480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1479, &mut x1480, x1478, x1383, x1447); + let mut x1481: u32 = 0; + let mut x1482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1481, &mut x1482, x1480, x1385, x1449); + let mut x1483: u32 = 0; + let mut x1484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1483, &mut x1484, x1482, x1387, x1451); + let mut x1485: u32 = 0; + let mut x1486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1485, &mut x1486, x1484, x1389, x1453); + let mut x1487: u32 = 0; + let mut x1488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1487, &mut x1488, x1486, x1391, x1455); + let mut x1489: u32 = 0; + let mut x1490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1489, &mut x1490, x1488, x1393, x1457); + let mut x1491: u32 = 0; + let mut x1492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1491, &mut x1492, x1490, x1395, x1459); + let mut x1493: u32 = 0; + let mut x1494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1493, &mut x1494, x1492, x1397, x1461); + let mut x1495: u32 = 0; + let mut x1496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1495, &mut x1496, x1494, x1399, x1463); + let mut x1497: u32 = 0; + let mut x1498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1497, &mut x1498, x1496, x1401, x1465); + let mut x1499: u32 = 0; + let mut x1500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1499, &mut x1500, x1498, x1403, x1467); + let mut x1501: u32 = 0; + let mut x1502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1501, &mut x1502, x1500, x1405, x1469); + let mut x1503: u32 = 0; + let mut x1504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1503, &mut x1504, x1502, x1407, x1471); + let mut x1505: u32 = 0; + let mut x1506: u32 = 0; + fiat_bp512_mulx_u32(&mut x1505, &mut x1506, x8, 0x3c4c9d05); + let mut x1507: u32 = 0; + let mut x1508: u32 = 0; + fiat_bp512_mulx_u32(&mut x1507, &mut x1508, x8, 0xa9ff6450); + let mut x1509: u32 = 0; + let mut x1510: u32 = 0; + fiat_bp512_mulx_u32(&mut x1509, &mut x1510, x8, 0x202e1940); + let mut x1511: u32 = 0; + let mut x1512: u32 = 0; + fiat_bp512_mulx_u32(&mut x1511, &mut x1512, x8, 0x2056eecc); + let mut x1513: u32 = 0; + let mut x1514: u32 = 0; + fiat_bp512_mulx_u32(&mut x1513, &mut x1514, x8, 0xa16daa5f); + let mut x1515: u32 = 0; + let mut x1516: u32 = 0; + fiat_bp512_mulx_u32(&mut x1515, &mut x1516, x8, 0xd42bff83); + let mut x1517: u32 = 0; + let mut x1518: u32 = 0; + fiat_bp512_mulx_u32(&mut x1517, &mut x1518, x8, 0x19486fd8); + let mut x1519: u32 = 0; + let mut x1520: u32 = 0; + fiat_bp512_mulx_u32(&mut x1519, &mut x1520, x8, 0xd5898057); + let mut x1521: u32 = 0; + let mut x1522: u32 = 0; + fiat_bp512_mulx_u32(&mut x1521, &mut x1522, x8, 0xe0c19a77); + let mut x1523: u32 = 0; + let mut x1524: u32 = 0; + fiat_bp512_mulx_u32(&mut x1523, &mut x1524, x8, 0x83514a25); + let mut x1525: u32 = 0; + let mut x1526: u32 = 0; + fiat_bp512_mulx_u32(&mut x1525, &mut x1526, x8, 0x53b7f9bc); + let mut x1527: u32 = 0; + let mut x1528: u32 = 0; + fiat_bp512_mulx_u32(&mut x1527, &mut x1528, x8, 0x905affd3); + let mut x1529: u32 = 0; + let mut x1530: u32 = 0; + fiat_bp512_mulx_u32(&mut x1529, &mut x1530, x8, 0x793fb130); + let mut x1531: u32 = 0; + let mut x1532: u32 = 0; + fiat_bp512_mulx_u32(&mut x1531, &mut x1532, x8, 0x27157905); + let mut x1533: u32 = 0; + let mut x1534: u32 = 0; + fiat_bp512_mulx_u32(&mut x1533, &mut x1534, x8, 0x49ad144a); + let mut x1535: u32 = 0; + let mut x1536: u32 = 0; + fiat_bp512_mulx_u32(&mut x1535, &mut x1536, x8, 0x6158f205); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1537, &mut x1538, 0x0, x1536, x1533); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1534, x1531); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1532, x1529); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1530, x1527); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1528, x1525); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1526, x1523); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1524, x1521); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1522, x1519); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1520, x1517); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1518, x1515); + let mut x1557: u32 = 0; + let mut x1558: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1557, &mut x1558, x1556, x1516, x1513); + let mut x1559: u32 = 0; + let mut x1560: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1559, &mut x1560, x1558, x1514, x1511); + let mut x1561: u32 = 0; + let mut x1562: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1561, &mut x1562, x1560, x1512, x1509); + let mut x1563: u32 = 0; + let mut x1564: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1563, &mut x1564, x1562, x1510, x1507); + let mut x1565: u32 = 0; + let mut x1566: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1565, &mut x1566, x1564, x1508, x1505); + let mut x1567: u32 = 0; + let mut x1568: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1567, &mut x1568, 0x0, x1475, x1535); + let mut x1569: u32 = 0; + let mut x1570: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1569, &mut x1570, x1568, x1477, x1537); + let mut x1571: u32 = 0; + let mut x1572: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1571, &mut x1572, x1570, x1479, x1539); + let mut x1573: u32 = 0; + let mut x1574: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1573, &mut x1574, x1572, x1481, x1541); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1575, &mut x1576, x1574, x1483, x1543); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1485, x1545); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1487, x1547); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1489, x1549); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1583, &mut x1584, x1582, x1491, x1551); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1493, x1553); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1495, x1555); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1497, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1499, x1559); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1501, x1561); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1503, x1563); + let mut x1597: u32 = 0; + let mut x1598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1597, + &mut x1598, + x1596, + (((x1504 as u32) + ((x1408 as u32) + ((x1376 as u32) + x1316))) + ((x1472 as u32) + x1412)), + x1565, + ); + let mut x1599: u32 = 0; + let mut x1600: u32 = 0; + fiat_bp512_mulx_u32(&mut x1599, &mut x1600, x1567, 0x7d89efc5); + let mut x1601: u32 = 0; + let mut x1602: u32 = 0; + fiat_bp512_mulx_u32(&mut x1601, &mut x1602, x1599, 0xaadd9db8); + let mut x1603: u32 = 0; + let mut x1604: u32 = 0; + fiat_bp512_mulx_u32(&mut x1603, &mut x1604, x1599, 0xdbe9c48b); + let mut x1605: u32 = 0; + let mut x1606: u32 = 0; + fiat_bp512_mulx_u32(&mut x1605, &mut x1606, x1599, 0x3fd4e6ae); + let mut x1607: u32 = 0; + let mut x1608: u32 = 0; + fiat_bp512_mulx_u32(&mut x1607, &mut x1608, x1599, 0x33c9fc07); + let mut x1609: u32 = 0; + let mut x1610: u32 = 0; + fiat_bp512_mulx_u32(&mut x1609, &mut x1610, x1599, 0xcb308db3); + let mut x1611: u32 = 0; + let mut x1612: u32 = 0; + fiat_bp512_mulx_u32(&mut x1611, &mut x1612, x1599, 0xb3c9d20e); + let mut x1613: u32 = 0; + let mut x1614: u32 = 0; + fiat_bp512_mulx_u32(&mut x1613, &mut x1614, x1599, 0xd6639cca); + let mut x1615: u32 = 0; + let mut x1616: u32 = 0; + fiat_bp512_mulx_u32(&mut x1615, &mut x1616, x1599, 0x70330871); + let mut x1617: u32 = 0; + let mut x1618: u32 = 0; + fiat_bp512_mulx_u32(&mut x1617, &mut x1618, x1599, 0x7d4d9b00); + let mut x1619: u32 = 0; + let mut x1620: u32 = 0; + fiat_bp512_mulx_u32(&mut x1619, &mut x1620, x1599, 0x9bc66842); + let mut x1621: u32 = 0; + let mut x1622: u32 = 0; + fiat_bp512_mulx_u32(&mut x1621, &mut x1622, x1599, 0xaecda12a); + let mut x1623: u32 = 0; + let mut x1624: u32 = 0; + fiat_bp512_mulx_u32(&mut x1623, &mut x1624, x1599, 0xe6a380e6); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp512_mulx_u32(&mut x1625, &mut x1626, x1599, 0x2881ff2f); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp512_mulx_u32(&mut x1627, &mut x1628, x1599, 0x2d82c685); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp512_mulx_u32(&mut x1629, &mut x1630, x1599, 0x28aa6056); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp512_mulx_u32(&mut x1631, &mut x1632, x1599, 0x583a48f3); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1633, &mut x1634, 0x0, x1632, x1629); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1630, x1627); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1628, x1625); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1626, x1623); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1624, x1621); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1622, x1619); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1620, x1617); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1618, x1615); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1616, x1613); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1614, x1611); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1612, x1609); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1610, x1607); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1608, x1605); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1606, x1603); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1604, x1601); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1663, &mut x1664, 0x0, x1567, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1569, x1633); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1571, x1635); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1573, x1637); + let mut x1671: u32 = 0; + let mut x1672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1575, x1639); + let mut x1673: u32 = 0; + let mut x1674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1577, x1641); + let mut x1675: u32 = 0; + let mut x1676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1579, x1643); + let mut x1677: u32 = 0; + let mut x1678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1581, x1645); + let mut x1679: u32 = 0; + let mut x1680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1679, &mut x1680, x1678, x1583, x1647); + let mut x1681: u32 = 0; + let mut x1682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1585, x1649); + let mut x1683: u32 = 0; + let mut x1684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1587, x1651); + let mut x1685: u32 = 0; + let mut x1686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1589, x1653); + let mut x1687: u32 = 0; + let mut x1688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1591, x1655); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1593, x1657); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1595, x1659); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1597, x1661); + let mut x1695: u32 = 0; + let mut x1696: u32 = 0; + fiat_bp512_mulx_u32(&mut x1695, &mut x1696, x9, 0x3c4c9d05); + let mut x1697: u32 = 0; + let mut x1698: u32 = 0; + fiat_bp512_mulx_u32(&mut x1697, &mut x1698, x9, 0xa9ff6450); + let mut x1699: u32 = 0; + let mut x1700: u32 = 0; + fiat_bp512_mulx_u32(&mut x1699, &mut x1700, x9, 0x202e1940); + let mut x1701: u32 = 0; + let mut x1702: u32 = 0; + fiat_bp512_mulx_u32(&mut x1701, &mut x1702, x9, 0x2056eecc); + let mut x1703: u32 = 0; + let mut x1704: u32 = 0; + fiat_bp512_mulx_u32(&mut x1703, &mut x1704, x9, 0xa16daa5f); + let mut x1705: u32 = 0; + let mut x1706: u32 = 0; + fiat_bp512_mulx_u32(&mut x1705, &mut x1706, x9, 0xd42bff83); + let mut x1707: u32 = 0; + let mut x1708: u32 = 0; + fiat_bp512_mulx_u32(&mut x1707, &mut x1708, x9, 0x19486fd8); + let mut x1709: u32 = 0; + let mut x1710: u32 = 0; + fiat_bp512_mulx_u32(&mut x1709, &mut x1710, x9, 0xd5898057); + let mut x1711: u32 = 0; + let mut x1712: u32 = 0; + fiat_bp512_mulx_u32(&mut x1711, &mut x1712, x9, 0xe0c19a77); + let mut x1713: u32 = 0; + let mut x1714: u32 = 0; + fiat_bp512_mulx_u32(&mut x1713, &mut x1714, x9, 0x83514a25); + let mut x1715: u32 = 0; + let mut x1716: u32 = 0; + fiat_bp512_mulx_u32(&mut x1715, &mut x1716, x9, 0x53b7f9bc); + let mut x1717: u32 = 0; + let mut x1718: u32 = 0; + fiat_bp512_mulx_u32(&mut x1717, &mut x1718, x9, 0x905affd3); + let mut x1719: u32 = 0; + let mut x1720: u32 = 0; + fiat_bp512_mulx_u32(&mut x1719, &mut x1720, x9, 0x793fb130); + let mut x1721: u32 = 0; + let mut x1722: u32 = 0; + fiat_bp512_mulx_u32(&mut x1721, &mut x1722, x9, 0x27157905); + let mut x1723: u32 = 0; + let mut x1724: u32 = 0; + fiat_bp512_mulx_u32(&mut x1723, &mut x1724, x9, 0x49ad144a); + let mut x1725: u32 = 0; + let mut x1726: u32 = 0; + fiat_bp512_mulx_u32(&mut x1725, &mut x1726, x9, 0x6158f205); + let mut x1727: u32 = 0; + let mut x1728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1727, &mut x1728, 0x0, x1726, x1723); + let mut x1729: u32 = 0; + let mut x1730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1729, &mut x1730, x1728, x1724, x1721); + let mut x1731: u32 = 0; + let mut x1732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1731, &mut x1732, x1730, x1722, x1719); + let mut x1733: u32 = 0; + let mut x1734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1733, &mut x1734, x1732, x1720, x1717); + let mut x1735: u32 = 0; + let mut x1736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1735, &mut x1736, x1734, x1718, x1715); + let mut x1737: u32 = 0; + let mut x1738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1737, &mut x1738, x1736, x1716, x1713); + let mut x1739: u32 = 0; + let mut x1740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1739, &mut x1740, x1738, x1714, x1711); + let mut x1741: u32 = 0; + let mut x1742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1741, &mut x1742, x1740, x1712, x1709); + let mut x1743: u32 = 0; + let mut x1744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1743, &mut x1744, x1742, x1710, x1707); + let mut x1745: u32 = 0; + let mut x1746: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1745, &mut x1746, x1744, x1708, x1705); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1747, &mut x1748, x1746, x1706, x1703); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1704, x1701); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1702, x1699); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1700, x1697); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1698, x1695); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1757, &mut x1758, 0x0, x1665, x1725); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1667, x1727); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1669, x1729); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1671, x1731); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1673, x1733); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1675, x1735); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1677, x1737); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1679, x1739); + let mut x1773: u32 = 0; + let mut x1774: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1773, &mut x1774, x1772, x1681, x1741); + let mut x1775: u32 = 0; + let mut x1776: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1775, &mut x1776, x1774, x1683, x1743); + let mut x1777: u32 = 0; + let mut x1778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1777, &mut x1778, x1776, x1685, x1745); + let mut x1779: u32 = 0; + let mut x1780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1779, &mut x1780, x1778, x1687, x1747); + let mut x1781: u32 = 0; + let mut x1782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1781, &mut x1782, x1780, x1689, x1749); + let mut x1783: u32 = 0; + let mut x1784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1783, &mut x1784, x1782, x1691, x1751); + let mut x1785: u32 = 0; + let mut x1786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1785, &mut x1786, x1784, x1693, x1753); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1787, + &mut x1788, + x1786, + (((x1694 as u32) + ((x1598 as u32) + ((x1566 as u32) + x1506))) + ((x1662 as u32) + x1602)), + x1755, + ); + let mut x1789: u32 = 0; + let mut x1790: u32 = 0; + fiat_bp512_mulx_u32(&mut x1789, &mut x1790, x1757, 0x7d89efc5); + let mut x1791: u32 = 0; + let mut x1792: u32 = 0; + fiat_bp512_mulx_u32(&mut x1791, &mut x1792, x1789, 0xaadd9db8); + let mut x1793: u32 = 0; + let mut x1794: u32 = 0; + fiat_bp512_mulx_u32(&mut x1793, &mut x1794, x1789, 0xdbe9c48b); + let mut x1795: u32 = 0; + let mut x1796: u32 = 0; + fiat_bp512_mulx_u32(&mut x1795, &mut x1796, x1789, 0x3fd4e6ae); + let mut x1797: u32 = 0; + let mut x1798: u32 = 0; + fiat_bp512_mulx_u32(&mut x1797, &mut x1798, x1789, 0x33c9fc07); + let mut x1799: u32 = 0; + let mut x1800: u32 = 0; + fiat_bp512_mulx_u32(&mut x1799, &mut x1800, x1789, 0xcb308db3); + let mut x1801: u32 = 0; + let mut x1802: u32 = 0; + fiat_bp512_mulx_u32(&mut x1801, &mut x1802, x1789, 0xb3c9d20e); + let mut x1803: u32 = 0; + let mut x1804: u32 = 0; + fiat_bp512_mulx_u32(&mut x1803, &mut x1804, x1789, 0xd6639cca); + let mut x1805: u32 = 0; + let mut x1806: u32 = 0; + fiat_bp512_mulx_u32(&mut x1805, &mut x1806, x1789, 0x70330871); + let mut x1807: u32 = 0; + let mut x1808: u32 = 0; + fiat_bp512_mulx_u32(&mut x1807, &mut x1808, x1789, 0x7d4d9b00); + let mut x1809: u32 = 0; + let mut x1810: u32 = 0; + fiat_bp512_mulx_u32(&mut x1809, &mut x1810, x1789, 0x9bc66842); + let mut x1811: u32 = 0; + let mut x1812: u32 = 0; + fiat_bp512_mulx_u32(&mut x1811, &mut x1812, x1789, 0xaecda12a); + let mut x1813: u32 = 0; + let mut x1814: u32 = 0; + fiat_bp512_mulx_u32(&mut x1813, &mut x1814, x1789, 0xe6a380e6); + let mut x1815: u32 = 0; + let mut x1816: u32 = 0; + fiat_bp512_mulx_u32(&mut x1815, &mut x1816, x1789, 0x2881ff2f); + let mut x1817: u32 = 0; + let mut x1818: u32 = 0; + fiat_bp512_mulx_u32(&mut x1817, &mut x1818, x1789, 0x2d82c685); + let mut x1819: u32 = 0; + let mut x1820: u32 = 0; + fiat_bp512_mulx_u32(&mut x1819, &mut x1820, x1789, 0x28aa6056); + let mut x1821: u32 = 0; + let mut x1822: u32 = 0; + fiat_bp512_mulx_u32(&mut x1821, &mut x1822, x1789, 0x583a48f3); + let mut x1823: u32 = 0; + let mut x1824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1823, &mut x1824, 0x0, x1822, x1819); + let mut x1825: u32 = 0; + let mut x1826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1825, &mut x1826, x1824, x1820, x1817); + let mut x1827: u32 = 0; + let mut x1828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1827, &mut x1828, x1826, x1818, x1815); + let mut x1829: u32 = 0; + let mut x1830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1829, &mut x1830, x1828, x1816, x1813); + let mut x1831: u32 = 0; + let mut x1832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1831, &mut x1832, x1830, x1814, x1811); + let mut x1833: u32 = 0; + let mut x1834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1833, &mut x1834, x1832, x1812, x1809); + let mut x1835: u32 = 0; + let mut x1836: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1835, &mut x1836, x1834, x1810, x1807); + let mut x1837: u32 = 0; + let mut x1838: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1837, &mut x1838, x1836, x1808, x1805); + let mut x1839: u32 = 0; + let mut x1840: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1839, &mut x1840, x1838, x1806, x1803); + let mut x1841: u32 = 0; + let mut x1842: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1841, &mut x1842, x1840, x1804, x1801); + let mut x1843: u32 = 0; + let mut x1844: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1843, &mut x1844, x1842, x1802, x1799); + let mut x1845: u32 = 0; + let mut x1846: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1845, &mut x1846, x1844, x1800, x1797); + let mut x1847: u32 = 0; + let mut x1848: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1847, &mut x1848, x1846, x1798, x1795); + let mut x1849: u32 = 0; + let mut x1850: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1849, &mut x1850, x1848, x1796, x1793); + let mut x1851: u32 = 0; + let mut x1852: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1851, &mut x1852, x1850, x1794, x1791); + let mut x1853: u32 = 0; + let mut x1854: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1853, &mut x1854, 0x0, x1757, x1821); + let mut x1855: u32 = 0; + let mut x1856: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1855, &mut x1856, x1854, x1759, x1823); + let mut x1857: u32 = 0; + let mut x1858: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1857, &mut x1858, x1856, x1761, x1825); + let mut x1859: u32 = 0; + let mut x1860: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1859, &mut x1860, x1858, x1763, x1827); + let mut x1861: u32 = 0; + let mut x1862: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1861, &mut x1862, x1860, x1765, x1829); + let mut x1863: u32 = 0; + let mut x1864: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1863, &mut x1864, x1862, x1767, x1831); + let mut x1865: u32 = 0; + let mut x1866: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1865, &mut x1866, x1864, x1769, x1833); + let mut x1867: u32 = 0; + let mut x1868: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1867, &mut x1868, x1866, x1771, x1835); + let mut x1869: u32 = 0; + let mut x1870: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1869, &mut x1870, x1868, x1773, x1837); + let mut x1871: u32 = 0; + let mut x1872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1871, &mut x1872, x1870, x1775, x1839); + let mut x1873: u32 = 0; + let mut x1874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1873, &mut x1874, x1872, x1777, x1841); + let mut x1875: u32 = 0; + let mut x1876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1875, &mut x1876, x1874, x1779, x1843); + let mut x1877: u32 = 0; + let mut x1878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1877, &mut x1878, x1876, x1781, x1845); + let mut x1879: u32 = 0; + let mut x1880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1879, &mut x1880, x1878, x1783, x1847); + let mut x1881: u32 = 0; + let mut x1882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1881, &mut x1882, x1880, x1785, x1849); + let mut x1883: u32 = 0; + let mut x1884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1883, &mut x1884, x1882, x1787, x1851); + let mut x1885: u32 = 0; + let mut x1886: u32 = 0; + fiat_bp512_mulx_u32(&mut x1885, &mut x1886, x10, 0x3c4c9d05); + let mut x1887: u32 = 0; + let mut x1888: u32 = 0; + fiat_bp512_mulx_u32(&mut x1887, &mut x1888, x10, 0xa9ff6450); + let mut x1889: u32 = 0; + let mut x1890: u32 = 0; + fiat_bp512_mulx_u32(&mut x1889, &mut x1890, x10, 0x202e1940); + let mut x1891: u32 = 0; + let mut x1892: u32 = 0; + fiat_bp512_mulx_u32(&mut x1891, &mut x1892, x10, 0x2056eecc); + let mut x1893: u32 = 0; + let mut x1894: u32 = 0; + fiat_bp512_mulx_u32(&mut x1893, &mut x1894, x10, 0xa16daa5f); + let mut x1895: u32 = 0; + let mut x1896: u32 = 0; + fiat_bp512_mulx_u32(&mut x1895, &mut x1896, x10, 0xd42bff83); + let mut x1897: u32 = 0; + let mut x1898: u32 = 0; + fiat_bp512_mulx_u32(&mut x1897, &mut x1898, x10, 0x19486fd8); + let mut x1899: u32 = 0; + let mut x1900: u32 = 0; + fiat_bp512_mulx_u32(&mut x1899, &mut x1900, x10, 0xd5898057); + let mut x1901: u32 = 0; + let mut x1902: u32 = 0; + fiat_bp512_mulx_u32(&mut x1901, &mut x1902, x10, 0xe0c19a77); + let mut x1903: u32 = 0; + let mut x1904: u32 = 0; + fiat_bp512_mulx_u32(&mut x1903, &mut x1904, x10, 0x83514a25); + let mut x1905: u32 = 0; + let mut x1906: u32 = 0; + fiat_bp512_mulx_u32(&mut x1905, &mut x1906, x10, 0x53b7f9bc); + let mut x1907: u32 = 0; + let mut x1908: u32 = 0; + fiat_bp512_mulx_u32(&mut x1907, &mut x1908, x10, 0x905affd3); + let mut x1909: u32 = 0; + let mut x1910: u32 = 0; + fiat_bp512_mulx_u32(&mut x1909, &mut x1910, x10, 0x793fb130); + let mut x1911: u32 = 0; + let mut x1912: u32 = 0; + fiat_bp512_mulx_u32(&mut x1911, &mut x1912, x10, 0x27157905); + let mut x1913: u32 = 0; + let mut x1914: u32 = 0; + fiat_bp512_mulx_u32(&mut x1913, &mut x1914, x10, 0x49ad144a); + let mut x1915: u32 = 0; + let mut x1916: u32 = 0; + fiat_bp512_mulx_u32(&mut x1915, &mut x1916, x10, 0x6158f205); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1916, x1913); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1914, x1911); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1912, x1909); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1910, x1907); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1908, x1905); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1906, x1903); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1904, x1901); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1902, x1899); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1900, x1897); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1898, x1895); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1896, x1893); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1894, x1891); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1892, x1889); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1890, x1887); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1888, x1885); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1947, &mut x1948, 0x0, x1855, x1915); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1857, x1917); + let mut x1951: u32 = 0; + let mut x1952: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1951, &mut x1952, x1950, x1859, x1919); + let mut x1953: u32 = 0; + let mut x1954: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1953, &mut x1954, x1952, x1861, x1921); + let mut x1955: u32 = 0; + let mut x1956: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1955, &mut x1956, x1954, x1863, x1923); + let mut x1957: u32 = 0; + let mut x1958: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1957, &mut x1958, x1956, x1865, x1925); + let mut x1959: u32 = 0; + let mut x1960: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1959, &mut x1960, x1958, x1867, x1927); + let mut x1961: u32 = 0; + let mut x1962: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1961, &mut x1962, x1960, x1869, x1929); + let mut x1963: u32 = 0; + let mut x1964: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1963, &mut x1964, x1962, x1871, x1931); + let mut x1965: u32 = 0; + let mut x1966: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1965, &mut x1966, x1964, x1873, x1933); + let mut x1967: u32 = 0; + let mut x1968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1967, &mut x1968, x1966, x1875, x1935); + let mut x1969: u32 = 0; + let mut x1970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1969, &mut x1970, x1968, x1877, x1937); + let mut x1971: u32 = 0; + let mut x1972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1971, &mut x1972, x1970, x1879, x1939); + let mut x1973: u32 = 0; + let mut x1974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1973, &mut x1974, x1972, x1881, x1941); + let mut x1975: u32 = 0; + let mut x1976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1975, &mut x1976, x1974, x1883, x1943); + let mut x1977: u32 = 0; + let mut x1978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x1977, + &mut x1978, + x1976, + (((x1884 as u32) + ((x1788 as u32) + ((x1756 as u32) + x1696))) + ((x1852 as u32) + x1792)), + x1945, + ); + let mut x1979: u32 = 0; + let mut x1980: u32 = 0; + fiat_bp512_mulx_u32(&mut x1979, &mut x1980, x1947, 0x7d89efc5); + let mut x1981: u32 = 0; + let mut x1982: u32 = 0; + fiat_bp512_mulx_u32(&mut x1981, &mut x1982, x1979, 0xaadd9db8); + let mut x1983: u32 = 0; + let mut x1984: u32 = 0; + fiat_bp512_mulx_u32(&mut x1983, &mut x1984, x1979, 0xdbe9c48b); + let mut x1985: u32 = 0; + let mut x1986: u32 = 0; + fiat_bp512_mulx_u32(&mut x1985, &mut x1986, x1979, 0x3fd4e6ae); + let mut x1987: u32 = 0; + let mut x1988: u32 = 0; + fiat_bp512_mulx_u32(&mut x1987, &mut x1988, x1979, 0x33c9fc07); + let mut x1989: u32 = 0; + let mut x1990: u32 = 0; + fiat_bp512_mulx_u32(&mut x1989, &mut x1990, x1979, 0xcb308db3); + let mut x1991: u32 = 0; + let mut x1992: u32 = 0; + fiat_bp512_mulx_u32(&mut x1991, &mut x1992, x1979, 0xb3c9d20e); + let mut x1993: u32 = 0; + let mut x1994: u32 = 0; + fiat_bp512_mulx_u32(&mut x1993, &mut x1994, x1979, 0xd6639cca); + let mut x1995: u32 = 0; + let mut x1996: u32 = 0; + fiat_bp512_mulx_u32(&mut x1995, &mut x1996, x1979, 0x70330871); + let mut x1997: u32 = 0; + let mut x1998: u32 = 0; + fiat_bp512_mulx_u32(&mut x1997, &mut x1998, x1979, 0x7d4d9b00); + let mut x1999: u32 = 0; + let mut x2000: u32 = 0; + fiat_bp512_mulx_u32(&mut x1999, &mut x2000, x1979, 0x9bc66842); + let mut x2001: u32 = 0; + let mut x2002: u32 = 0; + fiat_bp512_mulx_u32(&mut x2001, &mut x2002, x1979, 0xaecda12a); + let mut x2003: u32 = 0; + let mut x2004: u32 = 0; + fiat_bp512_mulx_u32(&mut x2003, &mut x2004, x1979, 0xe6a380e6); + let mut x2005: u32 = 0; + let mut x2006: u32 = 0; + fiat_bp512_mulx_u32(&mut x2005, &mut x2006, x1979, 0x2881ff2f); + let mut x2007: u32 = 0; + let mut x2008: u32 = 0; + fiat_bp512_mulx_u32(&mut x2007, &mut x2008, x1979, 0x2d82c685); + let mut x2009: u32 = 0; + let mut x2010: u32 = 0; + fiat_bp512_mulx_u32(&mut x2009, &mut x2010, x1979, 0x28aa6056); + let mut x2011: u32 = 0; + let mut x2012: u32 = 0; + fiat_bp512_mulx_u32(&mut x2011, &mut x2012, x1979, 0x583a48f3); + let mut x2013: u32 = 0; + let mut x2014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2013, &mut x2014, 0x0, x2012, x2009); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2015, &mut x2016, x2014, x2010, x2007); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2017, &mut x2018, x2016, x2008, x2005); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2019, &mut x2020, x2018, x2006, x2003); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2021, &mut x2022, x2020, x2004, x2001); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2023, &mut x2024, x2022, x2002, x1999); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2025, &mut x2026, x2024, x2000, x1997); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1998, x1995); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1996, x1993); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1994, x1991); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1992, x1989); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1990, x1987); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1988, x1985); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1986, x1983); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1984, x1981); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2043, &mut x2044, 0x0, x1947, x2011); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2013); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2015); + let mut x2049: u32 = 0; + let mut x2050: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2049, &mut x2050, x2048, x1953, x2017); + let mut x2051: u32 = 0; + let mut x2052: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2051, &mut x2052, x2050, x1955, x2019); + let mut x2053: u32 = 0; + let mut x2054: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2053, &mut x2054, x2052, x1957, x2021); + let mut x2055: u32 = 0; + let mut x2056: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2055, &mut x2056, x2054, x1959, x2023); + let mut x2057: u32 = 0; + let mut x2058: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2057, &mut x2058, x2056, x1961, x2025); + let mut x2059: u32 = 0; + let mut x2060: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2059, &mut x2060, x2058, x1963, x2027); + let mut x2061: u32 = 0; + let mut x2062: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2061, &mut x2062, x2060, x1965, x2029); + let mut x2063: u32 = 0; + let mut x2064: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2063, &mut x2064, x2062, x1967, x2031); + let mut x2065: u32 = 0; + let mut x2066: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2065, &mut x2066, x2064, x1969, x2033); + let mut x2067: u32 = 0; + let mut x2068: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2067, &mut x2068, x2066, x1971, x2035); + let mut x2069: u32 = 0; + let mut x2070: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2069, &mut x2070, x2068, x1973, x2037); + let mut x2071: u32 = 0; + let mut x2072: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2071, &mut x2072, x2070, x1975, x2039); + let mut x2073: u32 = 0; + let mut x2074: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2073, &mut x2074, x2072, x1977, x2041); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_mulx_u32(&mut x2075, &mut x2076, x11, 0x3c4c9d05); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_mulx_u32(&mut x2077, &mut x2078, x11, 0xa9ff6450); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_mulx_u32(&mut x2079, &mut x2080, x11, 0x202e1940); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_mulx_u32(&mut x2081, &mut x2082, x11, 0x2056eecc); + let mut x2083: u32 = 0; + let mut x2084: u32 = 0; + fiat_bp512_mulx_u32(&mut x2083, &mut x2084, x11, 0xa16daa5f); + let mut x2085: u32 = 0; + let mut x2086: u32 = 0; + fiat_bp512_mulx_u32(&mut x2085, &mut x2086, x11, 0xd42bff83); + let mut x2087: u32 = 0; + let mut x2088: u32 = 0; + fiat_bp512_mulx_u32(&mut x2087, &mut x2088, x11, 0x19486fd8); + let mut x2089: u32 = 0; + let mut x2090: u32 = 0; + fiat_bp512_mulx_u32(&mut x2089, &mut x2090, x11, 0xd5898057); + let mut x2091: u32 = 0; + let mut x2092: u32 = 0; + fiat_bp512_mulx_u32(&mut x2091, &mut x2092, x11, 0xe0c19a77); + let mut x2093: u32 = 0; + let mut x2094: u32 = 0; + fiat_bp512_mulx_u32(&mut x2093, &mut x2094, x11, 0x83514a25); + let mut x2095: u32 = 0; + let mut x2096: u32 = 0; + fiat_bp512_mulx_u32(&mut x2095, &mut x2096, x11, 0x53b7f9bc); + let mut x2097: u32 = 0; + let mut x2098: u32 = 0; + fiat_bp512_mulx_u32(&mut x2097, &mut x2098, x11, 0x905affd3); + let mut x2099: u32 = 0; + let mut x2100: u32 = 0; + fiat_bp512_mulx_u32(&mut x2099, &mut x2100, x11, 0x793fb130); + let mut x2101: u32 = 0; + let mut x2102: u32 = 0; + fiat_bp512_mulx_u32(&mut x2101, &mut x2102, x11, 0x27157905); + let mut x2103: u32 = 0; + let mut x2104: u32 = 0; + fiat_bp512_mulx_u32(&mut x2103, &mut x2104, x11, 0x49ad144a); + let mut x2105: u32 = 0; + let mut x2106: u32 = 0; + fiat_bp512_mulx_u32(&mut x2105, &mut x2106, x11, 0x6158f205); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2107, &mut x2108, 0x0, x2106, x2103); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2104, x2101); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2102, x2099); + let mut x2113: u32 = 0; + let mut x2114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2113, &mut x2114, x2112, x2100, x2097); + let mut x2115: u32 = 0; + let mut x2116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2115, &mut x2116, x2114, x2098, x2095); + let mut x2117: u32 = 0; + let mut x2118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2117, &mut x2118, x2116, x2096, x2093); + let mut x2119: u32 = 0; + let mut x2120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2119, &mut x2120, x2118, x2094, x2091); + let mut x2121: u32 = 0; + let mut x2122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2121, &mut x2122, x2120, x2092, x2089); + let mut x2123: u32 = 0; + let mut x2124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2123, &mut x2124, x2122, x2090, x2087); + let mut x2125: u32 = 0; + let mut x2126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2125, &mut x2126, x2124, x2088, x2085); + let mut x2127: u32 = 0; + let mut x2128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2127, &mut x2128, x2126, x2086, x2083); + let mut x2129: u32 = 0; + let mut x2130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2129, &mut x2130, x2128, x2084, x2081); + let mut x2131: u32 = 0; + let mut x2132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2131, &mut x2132, x2130, x2082, x2079); + let mut x2133: u32 = 0; + let mut x2134: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2133, &mut x2134, x2132, x2080, x2077); + let mut x2135: u32 = 0; + let mut x2136: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2135, &mut x2136, x2134, x2078, x2075); + let mut x2137: u32 = 0; + let mut x2138: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2137, &mut x2138, 0x0, x2045, x2105); + let mut x2139: u32 = 0; + let mut x2140: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2139, &mut x2140, x2138, x2047, x2107); + let mut x2141: u32 = 0; + let mut x2142: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2141, &mut x2142, x2140, x2049, x2109); + let mut x2143: u32 = 0; + let mut x2144: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2143, &mut x2144, x2142, x2051, x2111); + let mut x2145: u32 = 0; + let mut x2146: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2145, &mut x2146, x2144, x2053, x2113); + let mut x2147: u32 = 0; + let mut x2148: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2147, &mut x2148, x2146, x2055, x2115); + let mut x2149: u32 = 0; + let mut x2150: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2149, &mut x2150, x2148, x2057, x2117); + let mut x2151: u32 = 0; + let mut x2152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2151, &mut x2152, x2150, x2059, x2119); + let mut x2153: u32 = 0; + let mut x2154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2153, &mut x2154, x2152, x2061, x2121); + let mut x2155: u32 = 0; + let mut x2156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2155, &mut x2156, x2154, x2063, x2123); + let mut x2157: u32 = 0; + let mut x2158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2157, &mut x2158, x2156, x2065, x2125); + let mut x2159: u32 = 0; + let mut x2160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2159, &mut x2160, x2158, x2067, x2127); + let mut x2161: u32 = 0; + let mut x2162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2161, &mut x2162, x2160, x2069, x2129); + let mut x2163: u32 = 0; + let mut x2164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2163, &mut x2164, x2162, x2071, x2131); + let mut x2165: u32 = 0; + let mut x2166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2165, &mut x2166, x2164, x2073, x2133); + let mut x2167: u32 = 0; + let mut x2168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x2167, + &mut x2168, + x2166, + (((x2074 as u32) + ((x1978 as u32) + ((x1946 as u32) + x1886))) + ((x2042 as u32) + x1982)), + x2135, + ); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_mulx_u32(&mut x2169, &mut x2170, x2137, 0x7d89efc5); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_mulx_u32(&mut x2171, &mut x2172, x2169, 0xaadd9db8); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_mulx_u32(&mut x2173, &mut x2174, x2169, 0xdbe9c48b); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_mulx_u32(&mut x2175, &mut x2176, x2169, 0x3fd4e6ae); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_mulx_u32(&mut x2177, &mut x2178, x2169, 0x33c9fc07); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_mulx_u32(&mut x2179, &mut x2180, x2169, 0xcb308db3); + let mut x2181: u32 = 0; + let mut x2182: u32 = 0; + fiat_bp512_mulx_u32(&mut x2181, &mut x2182, x2169, 0xb3c9d20e); + let mut x2183: u32 = 0; + let mut x2184: u32 = 0; + fiat_bp512_mulx_u32(&mut x2183, &mut x2184, x2169, 0xd6639cca); + let mut x2185: u32 = 0; + let mut x2186: u32 = 0; + fiat_bp512_mulx_u32(&mut x2185, &mut x2186, x2169, 0x70330871); + let mut x2187: u32 = 0; + let mut x2188: u32 = 0; + fiat_bp512_mulx_u32(&mut x2187, &mut x2188, x2169, 0x7d4d9b00); + let mut x2189: u32 = 0; + let mut x2190: u32 = 0; + fiat_bp512_mulx_u32(&mut x2189, &mut x2190, x2169, 0x9bc66842); + let mut x2191: u32 = 0; + let mut x2192: u32 = 0; + fiat_bp512_mulx_u32(&mut x2191, &mut x2192, x2169, 0xaecda12a); + let mut x2193: u32 = 0; + let mut x2194: u32 = 0; + fiat_bp512_mulx_u32(&mut x2193, &mut x2194, x2169, 0xe6a380e6); + let mut x2195: u32 = 0; + let mut x2196: u32 = 0; + fiat_bp512_mulx_u32(&mut x2195, &mut x2196, x2169, 0x2881ff2f); + let mut x2197: u32 = 0; + let mut x2198: u32 = 0; + fiat_bp512_mulx_u32(&mut x2197, &mut x2198, x2169, 0x2d82c685); + let mut x2199: u32 = 0; + let mut x2200: u32 = 0; + fiat_bp512_mulx_u32(&mut x2199, &mut x2200, x2169, 0x28aa6056); + let mut x2201: u32 = 0; + let mut x2202: u32 = 0; + fiat_bp512_mulx_u32(&mut x2201, &mut x2202, x2169, 0x583a48f3); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2203, &mut x2204, 0x0, x2202, x2199); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2200, x2197); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2198, x2195); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2196, x2193); + let mut x2211: u32 = 0; + let mut x2212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2211, &mut x2212, x2210, x2194, x2191); + let mut x2213: u32 = 0; + let mut x2214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2213, &mut x2214, x2212, x2192, x2189); + let mut x2215: u32 = 0; + let mut x2216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2215, &mut x2216, x2214, x2190, x2187); + let mut x2217: u32 = 0; + let mut x2218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2217, &mut x2218, x2216, x2188, x2185); + let mut x2219: u32 = 0; + let mut x2220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2219, &mut x2220, x2218, x2186, x2183); + let mut x2221: u32 = 0; + let mut x2222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2221, &mut x2222, x2220, x2184, x2181); + let mut x2223: u32 = 0; + let mut x2224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2223, &mut x2224, x2222, x2182, x2179); + let mut x2225: u32 = 0; + let mut x2226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2225, &mut x2226, x2224, x2180, x2177); + let mut x2227: u32 = 0; + let mut x2228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2227, &mut x2228, x2226, x2178, x2175); + let mut x2229: u32 = 0; + let mut x2230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2229, &mut x2230, x2228, x2176, x2173); + let mut x2231: u32 = 0; + let mut x2232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2231, &mut x2232, x2230, x2174, x2171); + let mut x2233: u32 = 0; + let mut x2234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2233, &mut x2234, 0x0, x2137, x2201); + let mut x2235: u32 = 0; + let mut x2236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2235, &mut x2236, x2234, x2139, x2203); + let mut x2237: u32 = 0; + let mut x2238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2237, &mut x2238, x2236, x2141, x2205); + let mut x2239: u32 = 0; + let mut x2240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2239, &mut x2240, x2238, x2143, x2207); + let mut x2241: u32 = 0; + let mut x2242: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2241, &mut x2242, x2240, x2145, x2209); + let mut x2243: u32 = 0; + let mut x2244: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2243, &mut x2244, x2242, x2147, x2211); + let mut x2245: u32 = 0; + let mut x2246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2245, &mut x2246, x2244, x2149, x2213); + let mut x2247: u32 = 0; + let mut x2248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2247, &mut x2248, x2246, x2151, x2215); + let mut x2249: u32 = 0; + let mut x2250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2249, &mut x2250, x2248, x2153, x2217); + let mut x2251: u32 = 0; + let mut x2252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2251, &mut x2252, x2250, x2155, x2219); + let mut x2253: u32 = 0; + let mut x2254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2253, &mut x2254, x2252, x2157, x2221); + let mut x2255: u32 = 0; + let mut x2256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2255, &mut x2256, x2254, x2159, x2223); + let mut x2257: u32 = 0; + let mut x2258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2257, &mut x2258, x2256, x2161, x2225); + let mut x2259: u32 = 0; + let mut x2260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2259, &mut x2260, x2258, x2163, x2227); + let mut x2261: u32 = 0; + let mut x2262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2261, &mut x2262, x2260, x2165, x2229); + let mut x2263: u32 = 0; + let mut x2264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2263, &mut x2264, x2262, x2167, x2231); + let mut x2265: u32 = 0; + let mut x2266: u32 = 0; + fiat_bp512_mulx_u32(&mut x2265, &mut x2266, x12, 0x3c4c9d05); + let mut x2267: u32 = 0; + let mut x2268: u32 = 0; + fiat_bp512_mulx_u32(&mut x2267, &mut x2268, x12, 0xa9ff6450); + let mut x2269: u32 = 0; + let mut x2270: u32 = 0; + fiat_bp512_mulx_u32(&mut x2269, &mut x2270, x12, 0x202e1940); + let mut x2271: u32 = 0; + let mut x2272: u32 = 0; + fiat_bp512_mulx_u32(&mut x2271, &mut x2272, x12, 0x2056eecc); + let mut x2273: u32 = 0; + let mut x2274: u32 = 0; + fiat_bp512_mulx_u32(&mut x2273, &mut x2274, x12, 0xa16daa5f); + let mut x2275: u32 = 0; + let mut x2276: u32 = 0; + fiat_bp512_mulx_u32(&mut x2275, &mut x2276, x12, 0xd42bff83); + let mut x2277: u32 = 0; + let mut x2278: u32 = 0; + fiat_bp512_mulx_u32(&mut x2277, &mut x2278, x12, 0x19486fd8); + let mut x2279: u32 = 0; + let mut x2280: u32 = 0; + fiat_bp512_mulx_u32(&mut x2279, &mut x2280, x12, 0xd5898057); + let mut x2281: u32 = 0; + let mut x2282: u32 = 0; + fiat_bp512_mulx_u32(&mut x2281, &mut x2282, x12, 0xe0c19a77); + let mut x2283: u32 = 0; + let mut x2284: u32 = 0; + fiat_bp512_mulx_u32(&mut x2283, &mut x2284, x12, 0x83514a25); + let mut x2285: u32 = 0; + let mut x2286: u32 = 0; + fiat_bp512_mulx_u32(&mut x2285, &mut x2286, x12, 0x53b7f9bc); + let mut x2287: u32 = 0; + let mut x2288: u32 = 0; + fiat_bp512_mulx_u32(&mut x2287, &mut x2288, x12, 0x905affd3); + let mut x2289: u32 = 0; + let mut x2290: u32 = 0; + fiat_bp512_mulx_u32(&mut x2289, &mut x2290, x12, 0x793fb130); + let mut x2291: u32 = 0; + let mut x2292: u32 = 0; + fiat_bp512_mulx_u32(&mut x2291, &mut x2292, x12, 0x27157905); + let mut x2293: u32 = 0; + let mut x2294: u32 = 0; + fiat_bp512_mulx_u32(&mut x2293, &mut x2294, x12, 0x49ad144a); + let mut x2295: u32 = 0; + let mut x2296: u32 = 0; + fiat_bp512_mulx_u32(&mut x2295, &mut x2296, x12, 0x6158f205); + let mut x2297: u32 = 0; + let mut x2298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2297, &mut x2298, 0x0, x2296, x2293); + let mut x2299: u32 = 0; + let mut x2300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2299, &mut x2300, x2298, x2294, x2291); + let mut x2301: u32 = 0; + let mut x2302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2301, &mut x2302, x2300, x2292, x2289); + let mut x2303: u32 = 0; + let mut x2304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2303, &mut x2304, x2302, x2290, x2287); + let mut x2305: u32 = 0; + let mut x2306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2305, &mut x2306, x2304, x2288, x2285); + let mut x2307: u32 = 0; + let mut x2308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2307, &mut x2308, x2306, x2286, x2283); + let mut x2309: u32 = 0; + let mut x2310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2309, &mut x2310, x2308, x2284, x2281); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2311, &mut x2312, x2310, x2282, x2279); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2280, x2277); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2278, x2275); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2276, x2273); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2274, x2271); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2272, x2269); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2270, x2267); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2268, x2265); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2327, &mut x2328, 0x0, x2235, x2295); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2237, x2297); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2239, x2299); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2241, x2301); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2243, x2303); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2245, x2305); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2247, x2307); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2249, x2309); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2251, x2311); + let mut x2345: u32 = 0; + let mut x2346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2345, &mut x2346, x2344, x2253, x2313); + let mut x2347: u32 = 0; + let mut x2348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2347, &mut x2348, x2346, x2255, x2315); + let mut x2349: u32 = 0; + let mut x2350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2349, &mut x2350, x2348, x2257, x2317); + let mut x2351: u32 = 0; + let mut x2352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2351, &mut x2352, x2350, x2259, x2319); + let mut x2353: u32 = 0; + let mut x2354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2353, &mut x2354, x2352, x2261, x2321); + let mut x2355: u32 = 0; + let mut x2356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2355, &mut x2356, x2354, x2263, x2323); + let mut x2357: u32 = 0; + let mut x2358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x2357, + &mut x2358, + x2356, + (((x2264 as u32) + ((x2168 as u32) + ((x2136 as u32) + x2076))) + ((x2232 as u32) + x2172)), + x2325, + ); + let mut x2359: u32 = 0; + let mut x2360: u32 = 0; + fiat_bp512_mulx_u32(&mut x2359, &mut x2360, x2327, 0x7d89efc5); + let mut x2361: u32 = 0; + let mut x2362: u32 = 0; + fiat_bp512_mulx_u32(&mut x2361, &mut x2362, x2359, 0xaadd9db8); + let mut x2363: u32 = 0; + let mut x2364: u32 = 0; + fiat_bp512_mulx_u32(&mut x2363, &mut x2364, x2359, 0xdbe9c48b); + let mut x2365: u32 = 0; + let mut x2366: u32 = 0; + fiat_bp512_mulx_u32(&mut x2365, &mut x2366, x2359, 0x3fd4e6ae); + let mut x2367: u32 = 0; + let mut x2368: u32 = 0; + fiat_bp512_mulx_u32(&mut x2367, &mut x2368, x2359, 0x33c9fc07); + let mut x2369: u32 = 0; + let mut x2370: u32 = 0; + fiat_bp512_mulx_u32(&mut x2369, &mut x2370, x2359, 0xcb308db3); + let mut x2371: u32 = 0; + let mut x2372: u32 = 0; + fiat_bp512_mulx_u32(&mut x2371, &mut x2372, x2359, 0xb3c9d20e); + let mut x2373: u32 = 0; + let mut x2374: u32 = 0; + fiat_bp512_mulx_u32(&mut x2373, &mut x2374, x2359, 0xd6639cca); + let mut x2375: u32 = 0; + let mut x2376: u32 = 0; + fiat_bp512_mulx_u32(&mut x2375, &mut x2376, x2359, 0x70330871); + let mut x2377: u32 = 0; + let mut x2378: u32 = 0; + fiat_bp512_mulx_u32(&mut x2377, &mut x2378, x2359, 0x7d4d9b00); + let mut x2379: u32 = 0; + let mut x2380: u32 = 0; + fiat_bp512_mulx_u32(&mut x2379, &mut x2380, x2359, 0x9bc66842); + let mut x2381: u32 = 0; + let mut x2382: u32 = 0; + fiat_bp512_mulx_u32(&mut x2381, &mut x2382, x2359, 0xaecda12a); + let mut x2383: u32 = 0; + let mut x2384: u32 = 0; + fiat_bp512_mulx_u32(&mut x2383, &mut x2384, x2359, 0xe6a380e6); + let mut x2385: u32 = 0; + let mut x2386: u32 = 0; + fiat_bp512_mulx_u32(&mut x2385, &mut x2386, x2359, 0x2881ff2f); + let mut x2387: u32 = 0; + let mut x2388: u32 = 0; + fiat_bp512_mulx_u32(&mut x2387, &mut x2388, x2359, 0x2d82c685); + let mut x2389: u32 = 0; + let mut x2390: u32 = 0; + fiat_bp512_mulx_u32(&mut x2389, &mut x2390, x2359, 0x28aa6056); + let mut x2391: u32 = 0; + let mut x2392: u32 = 0; + fiat_bp512_mulx_u32(&mut x2391, &mut x2392, x2359, 0x583a48f3); + let mut x2393: u32 = 0; + let mut x2394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2393, &mut x2394, 0x0, x2392, x2389); + let mut x2395: u32 = 0; + let mut x2396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2395, &mut x2396, x2394, x2390, x2387); + let mut x2397: u32 = 0; + let mut x2398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2397, &mut x2398, x2396, x2388, x2385); + let mut x2399: u32 = 0; + let mut x2400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2399, &mut x2400, x2398, x2386, x2383); + let mut x2401: u32 = 0; + let mut x2402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2401, &mut x2402, x2400, x2384, x2381); + let mut x2403: u32 = 0; + let mut x2404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2403, &mut x2404, x2402, x2382, x2379); + let mut x2405: u32 = 0; + let mut x2406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2405, &mut x2406, x2404, x2380, x2377); + let mut x2407: u32 = 0; + let mut x2408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2407, &mut x2408, x2406, x2378, x2375); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2409, &mut x2410, x2408, x2376, x2373); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2374, x2371); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2372, x2369); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2370, x2367); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2368, x2365); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2366, x2363); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2364, x2361); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2423, &mut x2424, 0x0, x2327, x2391); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2393); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2395); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2397); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2399); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2401); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2403); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2405); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2407); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2409); + let mut x2443: u32 = 0; + let mut x2444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2443, &mut x2444, x2442, x2347, x2411); + let mut x2445: u32 = 0; + let mut x2446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2445, &mut x2446, x2444, x2349, x2413); + let mut x2447: u32 = 0; + let mut x2448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2447, &mut x2448, x2446, x2351, x2415); + let mut x2449: u32 = 0; + let mut x2450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2449, &mut x2450, x2448, x2353, x2417); + let mut x2451: u32 = 0; + let mut x2452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2451, &mut x2452, x2450, x2355, x2419); + let mut x2453: u32 = 0; + let mut x2454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2453, &mut x2454, x2452, x2357, x2421); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_mulx_u32(&mut x2455, &mut x2456, x13, 0x3c4c9d05); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_mulx_u32(&mut x2457, &mut x2458, x13, 0xa9ff6450); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_mulx_u32(&mut x2459, &mut x2460, x13, 0x202e1940); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_mulx_u32(&mut x2461, &mut x2462, x13, 0x2056eecc); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_mulx_u32(&mut x2463, &mut x2464, x13, 0xa16daa5f); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_mulx_u32(&mut x2465, &mut x2466, x13, 0xd42bff83); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_mulx_u32(&mut x2467, &mut x2468, x13, 0x19486fd8); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_mulx_u32(&mut x2469, &mut x2470, x13, 0xd5898057); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_mulx_u32(&mut x2471, &mut x2472, x13, 0xe0c19a77); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_mulx_u32(&mut x2473, &mut x2474, x13, 0x83514a25); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_mulx_u32(&mut x2475, &mut x2476, x13, 0x53b7f9bc); + let mut x2477: u32 = 0; + let mut x2478: u32 = 0; + fiat_bp512_mulx_u32(&mut x2477, &mut x2478, x13, 0x905affd3); + let mut x2479: u32 = 0; + let mut x2480: u32 = 0; + fiat_bp512_mulx_u32(&mut x2479, &mut x2480, x13, 0x793fb130); + let mut x2481: u32 = 0; + let mut x2482: u32 = 0; + fiat_bp512_mulx_u32(&mut x2481, &mut x2482, x13, 0x27157905); + let mut x2483: u32 = 0; + let mut x2484: u32 = 0; + fiat_bp512_mulx_u32(&mut x2483, &mut x2484, x13, 0x49ad144a); + let mut x2485: u32 = 0; + let mut x2486: u32 = 0; + fiat_bp512_mulx_u32(&mut x2485, &mut x2486, x13, 0x6158f205); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2487, &mut x2488, 0x0, x2486, x2483); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2484, x2481); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2482, x2479); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2480, x2477); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2478, x2475); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2476, x2473); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2474, x2471); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2472, x2469); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2470, x2467); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2468, x2465); + let mut x2507: u32 = 0; + let mut x2508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2507, &mut x2508, x2506, x2466, x2463); + let mut x2509: u32 = 0; + let mut x2510: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2509, &mut x2510, x2508, x2464, x2461); + let mut x2511: u32 = 0; + let mut x2512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2511, &mut x2512, x2510, x2462, x2459); + let mut x2513: u32 = 0; + let mut x2514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2513, &mut x2514, x2512, x2460, x2457); + let mut x2515: u32 = 0; + let mut x2516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2515, &mut x2516, x2514, x2458, x2455); + let mut x2517: u32 = 0; + let mut x2518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2517, &mut x2518, 0x0, x2425, x2485); + let mut x2519: u32 = 0; + let mut x2520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2519, &mut x2520, x2518, x2427, x2487); + let mut x2521: u32 = 0; + let mut x2522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2521, &mut x2522, x2520, x2429, x2489); + let mut x2523: u32 = 0; + let mut x2524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2523, &mut x2524, x2522, x2431, x2491); + let mut x2525: u32 = 0; + let mut x2526: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2525, &mut x2526, x2524, x2433, x2493); + let mut x2527: u32 = 0; + let mut x2528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2527, &mut x2528, x2526, x2435, x2495); + let mut x2529: u32 = 0; + let mut x2530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2529, &mut x2530, x2528, x2437, x2497); + let mut x2531: u32 = 0; + let mut x2532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2531, &mut x2532, x2530, x2439, x2499); + let mut x2533: u32 = 0; + let mut x2534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2533, &mut x2534, x2532, x2441, x2501); + let mut x2535: u32 = 0; + let mut x2536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2535, &mut x2536, x2534, x2443, x2503); + let mut x2537: u32 = 0; + let mut x2538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2537, &mut x2538, x2536, x2445, x2505); + let mut x2539: u32 = 0; + let mut x2540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2539, &mut x2540, x2538, x2447, x2507); + let mut x2541: u32 = 0; + let mut x2542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2541, &mut x2542, x2540, x2449, x2509); + let mut x2543: u32 = 0; + let mut x2544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2543, &mut x2544, x2542, x2451, x2511); + let mut x2545: u32 = 0; + let mut x2546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2545, &mut x2546, x2544, x2453, x2513); + let mut x2547: u32 = 0; + let mut x2548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x2547, + &mut x2548, + x2546, + (((x2454 as u32) + ((x2358 as u32) + ((x2326 as u32) + x2266))) + ((x2422 as u32) + x2362)), + x2515, + ); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_mulx_u32(&mut x2549, &mut x2550, x2517, 0x7d89efc5); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_mulx_u32(&mut x2551, &mut x2552, x2549, 0xaadd9db8); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_mulx_u32(&mut x2553, &mut x2554, x2549, 0xdbe9c48b); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_mulx_u32(&mut x2555, &mut x2556, x2549, 0x3fd4e6ae); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_mulx_u32(&mut x2557, &mut x2558, x2549, 0x33c9fc07); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_mulx_u32(&mut x2559, &mut x2560, x2549, 0xcb308db3); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_mulx_u32(&mut x2561, &mut x2562, x2549, 0xb3c9d20e); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_mulx_u32(&mut x2563, &mut x2564, x2549, 0xd6639cca); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_mulx_u32(&mut x2565, &mut x2566, x2549, 0x70330871); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_mulx_u32(&mut x2567, &mut x2568, x2549, 0x7d4d9b00); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_mulx_u32(&mut x2569, &mut x2570, x2549, 0x9bc66842); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_mulx_u32(&mut x2571, &mut x2572, x2549, 0xaecda12a); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_mulx_u32(&mut x2573, &mut x2574, x2549, 0xe6a380e6); + let mut x2575: u32 = 0; + let mut x2576: u32 = 0; + fiat_bp512_mulx_u32(&mut x2575, &mut x2576, x2549, 0x2881ff2f); + let mut x2577: u32 = 0; + let mut x2578: u32 = 0; + fiat_bp512_mulx_u32(&mut x2577, &mut x2578, x2549, 0x2d82c685); + let mut x2579: u32 = 0; + let mut x2580: u32 = 0; + fiat_bp512_mulx_u32(&mut x2579, &mut x2580, x2549, 0x28aa6056); + let mut x2581: u32 = 0; + let mut x2582: u32 = 0; + fiat_bp512_mulx_u32(&mut x2581, &mut x2582, x2549, 0x583a48f3); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2583, &mut x2584, 0x0, x2582, x2579); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2580, x2577); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2578, x2575); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2576, x2573); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2574, x2571); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2572, x2569); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2570, x2567); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2568, x2565); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2566, x2563); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2564, x2561); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2562, x2559); + let mut x2605: u32 = 0; + let mut x2606: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2605, &mut x2606, x2604, x2560, x2557); + let mut x2607: u32 = 0; + let mut x2608: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2607, &mut x2608, x2606, x2558, x2555); + let mut x2609: u32 = 0; + let mut x2610: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2609, &mut x2610, x2608, x2556, x2553); + let mut x2611: u32 = 0; + let mut x2612: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2611, &mut x2612, x2610, x2554, x2551); + let mut x2613: u32 = 0; + let mut x2614: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2613, &mut x2614, 0x0, x2517, x2581); + let mut x2615: u32 = 0; + let mut x2616: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2615, &mut x2616, x2614, x2519, x2583); + let mut x2617: u32 = 0; + let mut x2618: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2617, &mut x2618, x2616, x2521, x2585); + let mut x2619: u32 = 0; + let mut x2620: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2619, &mut x2620, x2618, x2523, x2587); + let mut x2621: u32 = 0; + let mut x2622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2621, &mut x2622, x2620, x2525, x2589); + let mut x2623: u32 = 0; + let mut x2624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2623, &mut x2624, x2622, x2527, x2591); + let mut x2625: u32 = 0; + let mut x2626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2625, &mut x2626, x2624, x2529, x2593); + let mut x2627: u32 = 0; + let mut x2628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2627, &mut x2628, x2626, x2531, x2595); + let mut x2629: u32 = 0; + let mut x2630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2629, &mut x2630, x2628, x2533, x2597); + let mut x2631: u32 = 0; + let mut x2632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2631, &mut x2632, x2630, x2535, x2599); + let mut x2633: u32 = 0; + let mut x2634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2633, &mut x2634, x2632, x2537, x2601); + let mut x2635: u32 = 0; + let mut x2636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2635, &mut x2636, x2634, x2539, x2603); + let mut x2637: u32 = 0; + let mut x2638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2637, &mut x2638, x2636, x2541, x2605); + let mut x2639: u32 = 0; + let mut x2640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2639, &mut x2640, x2638, x2543, x2607); + let mut x2641: u32 = 0; + let mut x2642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2641, &mut x2642, x2640, x2545, x2609); + let mut x2643: u32 = 0; + let mut x2644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2643, &mut x2644, x2642, x2547, x2611); + let mut x2645: u32 = 0; + let mut x2646: u32 = 0; + fiat_bp512_mulx_u32(&mut x2645, &mut x2646, x14, 0x3c4c9d05); + let mut x2647: u32 = 0; + let mut x2648: u32 = 0; + fiat_bp512_mulx_u32(&mut x2647, &mut x2648, x14, 0xa9ff6450); + let mut x2649: u32 = 0; + let mut x2650: u32 = 0; + fiat_bp512_mulx_u32(&mut x2649, &mut x2650, x14, 0x202e1940); + let mut x2651: u32 = 0; + let mut x2652: u32 = 0; + fiat_bp512_mulx_u32(&mut x2651, &mut x2652, x14, 0x2056eecc); + let mut x2653: u32 = 0; + let mut x2654: u32 = 0; + fiat_bp512_mulx_u32(&mut x2653, &mut x2654, x14, 0xa16daa5f); + let mut x2655: u32 = 0; + let mut x2656: u32 = 0; + fiat_bp512_mulx_u32(&mut x2655, &mut x2656, x14, 0xd42bff83); + let mut x2657: u32 = 0; + let mut x2658: u32 = 0; + fiat_bp512_mulx_u32(&mut x2657, &mut x2658, x14, 0x19486fd8); + let mut x2659: u32 = 0; + let mut x2660: u32 = 0; + fiat_bp512_mulx_u32(&mut x2659, &mut x2660, x14, 0xd5898057); + let mut x2661: u32 = 0; + let mut x2662: u32 = 0; + fiat_bp512_mulx_u32(&mut x2661, &mut x2662, x14, 0xe0c19a77); + let mut x2663: u32 = 0; + let mut x2664: u32 = 0; + fiat_bp512_mulx_u32(&mut x2663, &mut x2664, x14, 0x83514a25); + let mut x2665: u32 = 0; + let mut x2666: u32 = 0; + fiat_bp512_mulx_u32(&mut x2665, &mut x2666, x14, 0x53b7f9bc); + let mut x2667: u32 = 0; + let mut x2668: u32 = 0; + fiat_bp512_mulx_u32(&mut x2667, &mut x2668, x14, 0x905affd3); + let mut x2669: u32 = 0; + let mut x2670: u32 = 0; + fiat_bp512_mulx_u32(&mut x2669, &mut x2670, x14, 0x793fb130); + let mut x2671: u32 = 0; + let mut x2672: u32 = 0; + fiat_bp512_mulx_u32(&mut x2671, &mut x2672, x14, 0x27157905); + let mut x2673: u32 = 0; + let mut x2674: u32 = 0; + fiat_bp512_mulx_u32(&mut x2673, &mut x2674, x14, 0x49ad144a); + let mut x2675: u32 = 0; + let mut x2676: u32 = 0; + fiat_bp512_mulx_u32(&mut x2675, &mut x2676, x14, 0x6158f205); + let mut x2677: u32 = 0; + let mut x2678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2677, &mut x2678, 0x0, x2676, x2673); + let mut x2679: u32 = 0; + let mut x2680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2679, &mut x2680, x2678, x2674, x2671); + let mut x2681: u32 = 0; + let mut x2682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2681, &mut x2682, x2680, x2672, x2669); + let mut x2683: u32 = 0; + let mut x2684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2683, &mut x2684, x2682, x2670, x2667); + let mut x2685: u32 = 0; + let mut x2686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2685, &mut x2686, x2684, x2668, x2665); + let mut x2687: u32 = 0; + let mut x2688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2687, &mut x2688, x2686, x2666, x2663); + let mut x2689: u32 = 0; + let mut x2690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2689, &mut x2690, x2688, x2664, x2661); + let mut x2691: u32 = 0; + let mut x2692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2691, &mut x2692, x2690, x2662, x2659); + let mut x2693: u32 = 0; + let mut x2694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2693, &mut x2694, x2692, x2660, x2657); + let mut x2695: u32 = 0; + let mut x2696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2695, &mut x2696, x2694, x2658, x2655); + let mut x2697: u32 = 0; + let mut x2698: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2697, &mut x2698, x2696, x2656, x2653); + let mut x2699: u32 = 0; + let mut x2700: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2699, &mut x2700, x2698, x2654, x2651); + let mut x2701: u32 = 0; + let mut x2702: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2701, &mut x2702, x2700, x2652, x2649); + let mut x2703: u32 = 0; + let mut x2704: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2703, &mut x2704, x2702, x2650, x2647); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2705, &mut x2706, x2704, x2648, x2645); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2707, &mut x2708, 0x0, x2615, x2675); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2617, x2677); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2619, x2679); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2621, x2681); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2623, x2683); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2625, x2685); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2627, x2687); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2629, x2689); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2631, x2691); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2633, x2693); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2635, x2695); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2637, x2697); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2639, x2699); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2641, x2701); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2643, x2703); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x2737, + &mut x2738, + x2736, + (((x2644 as u32) + ((x2548 as u32) + ((x2516 as u32) + x2456))) + ((x2612 as u32) + x2552)), + x2705, + ); + let mut x2739: u32 = 0; + let mut x2740: u32 = 0; + fiat_bp512_mulx_u32(&mut x2739, &mut x2740, x2707, 0x7d89efc5); + let mut x2741: u32 = 0; + let mut x2742: u32 = 0; + fiat_bp512_mulx_u32(&mut x2741, &mut x2742, x2739, 0xaadd9db8); + let mut x2743: u32 = 0; + let mut x2744: u32 = 0; + fiat_bp512_mulx_u32(&mut x2743, &mut x2744, x2739, 0xdbe9c48b); + let mut x2745: u32 = 0; + let mut x2746: u32 = 0; + fiat_bp512_mulx_u32(&mut x2745, &mut x2746, x2739, 0x3fd4e6ae); + let mut x2747: u32 = 0; + let mut x2748: u32 = 0; + fiat_bp512_mulx_u32(&mut x2747, &mut x2748, x2739, 0x33c9fc07); + let mut x2749: u32 = 0; + let mut x2750: u32 = 0; + fiat_bp512_mulx_u32(&mut x2749, &mut x2750, x2739, 0xcb308db3); + let mut x2751: u32 = 0; + let mut x2752: u32 = 0; + fiat_bp512_mulx_u32(&mut x2751, &mut x2752, x2739, 0xb3c9d20e); + let mut x2753: u32 = 0; + let mut x2754: u32 = 0; + fiat_bp512_mulx_u32(&mut x2753, &mut x2754, x2739, 0xd6639cca); + let mut x2755: u32 = 0; + let mut x2756: u32 = 0; + fiat_bp512_mulx_u32(&mut x2755, &mut x2756, x2739, 0x70330871); + let mut x2757: u32 = 0; + let mut x2758: u32 = 0; + fiat_bp512_mulx_u32(&mut x2757, &mut x2758, x2739, 0x7d4d9b00); + let mut x2759: u32 = 0; + let mut x2760: u32 = 0; + fiat_bp512_mulx_u32(&mut x2759, &mut x2760, x2739, 0x9bc66842); + let mut x2761: u32 = 0; + let mut x2762: u32 = 0; + fiat_bp512_mulx_u32(&mut x2761, &mut x2762, x2739, 0xaecda12a); + let mut x2763: u32 = 0; + let mut x2764: u32 = 0; + fiat_bp512_mulx_u32(&mut x2763, &mut x2764, x2739, 0xe6a380e6); + let mut x2765: u32 = 0; + let mut x2766: u32 = 0; + fiat_bp512_mulx_u32(&mut x2765, &mut x2766, x2739, 0x2881ff2f); + let mut x2767: u32 = 0; + let mut x2768: u32 = 0; + fiat_bp512_mulx_u32(&mut x2767, &mut x2768, x2739, 0x2d82c685); + let mut x2769: u32 = 0; + let mut x2770: u32 = 0; + fiat_bp512_mulx_u32(&mut x2769, &mut x2770, x2739, 0x28aa6056); + let mut x2771: u32 = 0; + let mut x2772: u32 = 0; + fiat_bp512_mulx_u32(&mut x2771, &mut x2772, x2739, 0x583a48f3); + let mut x2773: u32 = 0; + let mut x2774: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2773, &mut x2774, 0x0, x2772, x2769); + let mut x2775: u32 = 0; + let mut x2776: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2775, &mut x2776, x2774, x2770, x2767); + let mut x2777: u32 = 0; + let mut x2778: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2777, &mut x2778, x2776, x2768, x2765); + let mut x2779: u32 = 0; + let mut x2780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2779, &mut x2780, x2778, x2766, x2763); + let mut x2781: u32 = 0; + let mut x2782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2781, &mut x2782, x2780, x2764, x2761); + let mut x2783: u32 = 0; + let mut x2784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2783, &mut x2784, x2782, x2762, x2759); + let mut x2785: u32 = 0; + let mut x2786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2785, &mut x2786, x2784, x2760, x2757); + let mut x2787: u32 = 0; + let mut x2788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2787, &mut x2788, x2786, x2758, x2755); + let mut x2789: u32 = 0; + let mut x2790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2789, &mut x2790, x2788, x2756, x2753); + let mut x2791: u32 = 0; + let mut x2792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2791, &mut x2792, x2790, x2754, x2751); + let mut x2793: u32 = 0; + let mut x2794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2793, &mut x2794, x2792, x2752, x2749); + let mut x2795: u32 = 0; + let mut x2796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2795, &mut x2796, x2794, x2750, x2747); + let mut x2797: u32 = 0; + let mut x2798: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2797, &mut x2798, x2796, x2748, x2745); + let mut x2799: u32 = 0; + let mut x2800: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2799, &mut x2800, x2798, x2746, x2743); + let mut x2801: u32 = 0; + let mut x2802: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2801, &mut x2802, x2800, x2744, x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2771); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2773); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2775); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2777); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2779); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2781); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2783); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2785); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2787); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2789); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2791); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2793); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2795); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2797); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2799); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2801); + let mut x2835: u32 = 0; + let mut x2836: u32 = 0; + fiat_bp512_mulx_u32(&mut x2835, &mut x2836, x15, 0x3c4c9d05); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_mulx_u32(&mut x2837, &mut x2838, x15, 0xa9ff6450); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_mulx_u32(&mut x2839, &mut x2840, x15, 0x202e1940); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_mulx_u32(&mut x2841, &mut x2842, x15, 0x2056eecc); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_mulx_u32(&mut x2843, &mut x2844, x15, 0xa16daa5f); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_mulx_u32(&mut x2845, &mut x2846, x15, 0xd42bff83); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_mulx_u32(&mut x2847, &mut x2848, x15, 0x19486fd8); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_mulx_u32(&mut x2849, &mut x2850, x15, 0xd5898057); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_mulx_u32(&mut x2851, &mut x2852, x15, 0xe0c19a77); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_mulx_u32(&mut x2853, &mut x2854, x15, 0x83514a25); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_mulx_u32(&mut x2855, &mut x2856, x15, 0x53b7f9bc); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_mulx_u32(&mut x2857, &mut x2858, x15, 0x905affd3); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_mulx_u32(&mut x2859, &mut x2860, x15, 0x793fb130); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_mulx_u32(&mut x2861, &mut x2862, x15, 0x27157905); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_mulx_u32(&mut x2863, &mut x2864, x15, 0x49ad144a); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_mulx_u32(&mut x2865, &mut x2866, x15, 0x6158f205); + let mut x2867: u32 = 0; + let mut x2868: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2867, &mut x2868, 0x0, x2866, x2863); + let mut x2869: u32 = 0; + let mut x2870: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2869, &mut x2870, x2868, x2864, x2861); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2871, &mut x2872, x2870, x2862, x2859); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2860, x2857); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2858, x2855); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2856, x2853); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2854, x2851); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2852, x2849); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2850, x2847); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2848, x2845); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2846, x2843); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2844, x2841); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2842, x2839); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2840, x2837); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2838, x2835); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2897, &mut x2898, 0x0, x2805, x2865); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2807, x2867); + let mut x2901: u32 = 0; + let mut x2902: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2901, &mut x2902, x2900, x2809, x2869); + let mut x2903: u32 = 0; + let mut x2904: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2903, &mut x2904, x2902, x2811, x2871); + let mut x2905: u32 = 0; + let mut x2906: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2905, &mut x2906, x2904, x2813, x2873); + let mut x2907: u32 = 0; + let mut x2908: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2907, &mut x2908, x2906, x2815, x2875); + let mut x2909: u32 = 0; + let mut x2910: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2909, &mut x2910, x2908, x2817, x2877); + let mut x2911: u32 = 0; + let mut x2912: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2911, &mut x2912, x2910, x2819, x2879); + let mut x2913: u32 = 0; + let mut x2914: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2913, &mut x2914, x2912, x2821, x2881); + let mut x2915: u32 = 0; + let mut x2916: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2915, &mut x2916, x2914, x2823, x2883); + let mut x2917: u32 = 0; + let mut x2918: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2917, &mut x2918, x2916, x2825, x2885); + let mut x2919: u32 = 0; + let mut x2920: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2919, &mut x2920, x2918, x2827, x2887); + let mut x2921: u32 = 0; + let mut x2922: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2921, &mut x2922, x2920, x2829, x2889); + let mut x2923: u32 = 0; + let mut x2924: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2923, &mut x2924, x2922, x2831, x2891); + let mut x2925: u32 = 0; + let mut x2926: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2925, &mut x2926, x2924, x2833, x2893); + let mut x2927: u32 = 0; + let mut x2928: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32( + &mut x2927, + &mut x2928, + x2926, + (((x2834 as u32) + ((x2738 as u32) + ((x2706 as u32) + x2646))) + ((x2802 as u32) + x2742)), + x2895, + ); + let mut x2929: u32 = 0; + let mut x2930: u32 = 0; + fiat_bp512_mulx_u32(&mut x2929, &mut x2930, x2897, 0x7d89efc5); + let mut x2931: u32 = 0; + let mut x2932: u32 = 0; + fiat_bp512_mulx_u32(&mut x2931, &mut x2932, x2929, 0xaadd9db8); + let mut x2933: u32 = 0; + let mut x2934: u32 = 0; + fiat_bp512_mulx_u32(&mut x2933, &mut x2934, x2929, 0xdbe9c48b); + let mut x2935: u32 = 0; + let mut x2936: u32 = 0; + fiat_bp512_mulx_u32(&mut x2935, &mut x2936, x2929, 0x3fd4e6ae); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_mulx_u32(&mut x2937, &mut x2938, x2929, 0x33c9fc07); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_mulx_u32(&mut x2939, &mut x2940, x2929, 0xcb308db3); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_mulx_u32(&mut x2941, &mut x2942, x2929, 0xb3c9d20e); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_mulx_u32(&mut x2943, &mut x2944, x2929, 0xd6639cca); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_mulx_u32(&mut x2945, &mut x2946, x2929, 0x70330871); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_mulx_u32(&mut x2947, &mut x2948, x2929, 0x7d4d9b00); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_mulx_u32(&mut x2949, &mut x2950, x2929, 0x9bc66842); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_mulx_u32(&mut x2951, &mut x2952, x2929, 0xaecda12a); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_mulx_u32(&mut x2953, &mut x2954, x2929, 0xe6a380e6); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_mulx_u32(&mut x2955, &mut x2956, x2929, 0x2881ff2f); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_mulx_u32(&mut x2957, &mut x2958, x2929, 0x2d82c685); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_mulx_u32(&mut x2959, &mut x2960, x2929, 0x28aa6056); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_mulx_u32(&mut x2961, &mut x2962, x2929, 0x583a48f3); + let mut x2963: u32 = 0; + let mut x2964: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2963, &mut x2964, 0x0, x2962, x2959); + let mut x2965: u32 = 0; + let mut x2966: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2965, &mut x2966, x2964, x2960, x2957); + let mut x2967: u32 = 0; + let mut x2968: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2967, &mut x2968, x2966, x2958, x2955); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2969, &mut x2970, x2968, x2956, x2953); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2954, x2951); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2952, x2949); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2950, x2947); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2948, x2945); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2946, x2943); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2944, x2941); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2942, x2939); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2940, x2937); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2938, x2935); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2936, x2933); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2934, x2931); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2993, &mut x2994, 0x0, x2897, x2961); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2899, x2963); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2901, x2965); + let mut x2999: u32 = 0; + let mut x3000: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x2999, &mut x3000, x2998, x2903, x2967); + let mut x3001: u32 = 0; + let mut x3002: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3001, &mut x3002, x3000, x2905, x2969); + let mut x3003: u32 = 0; + let mut x3004: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3003, &mut x3004, x3002, x2907, x2971); + let mut x3005: u32 = 0; + let mut x3006: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3005, &mut x3006, x3004, x2909, x2973); + let mut x3007: u32 = 0; + let mut x3008: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3007, &mut x3008, x3006, x2911, x2975); + let mut x3009: u32 = 0; + let mut x3010: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3009, &mut x3010, x3008, x2913, x2977); + let mut x3011: u32 = 0; + let mut x3012: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3011, &mut x3012, x3010, x2915, x2979); + let mut x3013: u32 = 0; + let mut x3014: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3013, &mut x3014, x3012, x2917, x2981); + let mut x3015: u32 = 0; + let mut x3016: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3015, &mut x3016, x3014, x2919, x2983); + let mut x3017: u32 = 0; + let mut x3018: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3017, &mut x3018, x3016, x2921, x2985); + let mut x3019: u32 = 0; + let mut x3020: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3019, &mut x3020, x3018, x2923, x2987); + let mut x3021: u32 = 0; + let mut x3022: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3021, &mut x3022, x3020, x2925, x2989); + let mut x3023: u32 = 0; + let mut x3024: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x3023, &mut x3024, x3022, x2927, x2991); + let x3025: u32 = + (((x3024 as u32) + ((x2928 as u32) + ((x2896 as u32) + x2836))) + ((x2992 as u32) + x2932)); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3026, &mut x3027, 0x0, x2995, 0x583a48f3); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3028, &mut x3029, x3027, x2997, 0x28aa6056); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3030, &mut x3031, x3029, x2999, 0x2d82c685); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3032, &mut x3033, x3031, x3001, 0x2881ff2f); + let mut x3034: u32 = 0; + let mut x3035: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3034, &mut x3035, x3033, x3003, 0xe6a380e6); + let mut x3036: u32 = 0; + let mut x3037: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3036, &mut x3037, x3035, x3005, 0xaecda12a); + let mut x3038: u32 = 0; + let mut x3039: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3038, &mut x3039, x3037, x3007, 0x9bc66842); + let mut x3040: u32 = 0; + let mut x3041: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3040, &mut x3041, x3039, x3009, 0x7d4d9b00); + let mut x3042: u32 = 0; + let mut x3043: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3042, &mut x3043, x3041, x3011, 0x70330871); + let mut x3044: u32 = 0; + let mut x3045: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3044, &mut x3045, x3043, x3013, 0xd6639cca); + let mut x3046: u32 = 0; + let mut x3047: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3046, &mut x3047, x3045, x3015, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3048, &mut x3049, x3047, x3017, 0xcb308db3); + let mut x3050: u32 = 0; + let mut x3051: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3050, &mut x3051, x3049, x3019, 0x33c9fc07); + let mut x3052: u32 = 0; + let mut x3053: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3052, &mut x3053, x3051, x3021, 0x3fd4e6ae); + let mut x3054: u32 = 0; + let mut x3055: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3054, &mut x3055, x3053, x3023, 0xdbe9c48b); + let mut x3056: u32 = 0; + let mut x3057: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3056, &mut x3057, x3055, x3025, 0xaadd9db8); + let mut x3058: u32 = 0; + let mut x3059: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x3058, &mut x3059, x3057, (0x0 as u32), (0x0 as u32)); + let mut x3060: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3060, x3059, x3026, x2995); + let mut x3061: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3061, x3059, x3028, x2997); + let mut x3062: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3062, x3059, x3030, x2999); + let mut x3063: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3063, x3059, x3032, x3001); + let mut x3064: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3064, x3059, x3034, x3003); + let mut x3065: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3065, x3059, x3036, x3005); + let mut x3066: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3066, x3059, x3038, x3007); + let mut x3067: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3067, x3059, x3040, x3009); + let mut x3068: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3068, x3059, x3042, x3011); + let mut x3069: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3069, x3059, x3044, x3013); + let mut x3070: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3070, x3059, x3046, x3015); + let mut x3071: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3071, x3059, x3048, x3017); + let mut x3072: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3072, x3059, x3050, x3019); + let mut x3073: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3073, x3059, x3052, x3021); + let mut x3074: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3074, x3059, x3054, x3023); + let mut x3075: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3075, x3059, x3056, x3025); + out1[0] = x3060; + out1[1] = x3061; + out1[2] = x3062; + out1[3] = x3063; + out1[4] = x3064; + out1[5] = x3065; + out1[6] = x3066; + out1[7] = x3067; + out1[8] = x3068; + out1[9] = x3069; + out1[10] = x3070; + out1[11] = x3071; + out1[12] = x3072; + out1[13] = x3073; + out1[14] = x3074; + out1[15] = x3075; } /// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. @@ -17871,8 +18088,23 @@ pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_el /// out1: [0x0 ~> 0xffffffff] #[inline] pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { - let x1: u32 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | ((arg1[7]) | ((arg1[8]) | ((arg1[9]) | ((arg1[10]) | ((arg1[11]) | ((arg1[12]) | ((arg1[13]) | ((arg1[14]) | (arg1[15])))))))))))))))); - *out1 = x1; + let x1: u32 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) + | ((arg1[3]) + | ((arg1[4]) + | ((arg1[5]) + | ((arg1[6]) + | ((arg1[7]) + | ((arg1[8]) + | ((arg1[9]) + | ((arg1[10]) + | ((arg1[11]) + | ((arg1[12]) + | ((arg1[13]) + | ((arg1[14]) + | (arg1[15])))))))))))))))); + *out1 = x1; } /// The function fiat_bp512_selectznz is a multi-limb conditional select. @@ -17887,55 +18119,60 @@ pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_selectznz(out1: &mut [u32; 16], arg1: fiat_bp512_u1, arg2: &[u32; 16], arg3: &[u32; 16]) { - let mut x1: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); - let mut x2: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); - let mut x3: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); - let mut x4: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); - let mut x5: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); - let mut x6: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); - let mut x7: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); - let mut x8: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); - let mut x9: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); - let mut x10: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); - let mut x11: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); - let mut x12: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); - let mut x13: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x13, arg1, (arg2[12]), (arg3[12])); - let mut x14: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x14, arg1, (arg2[13]), (arg3[13])); - let mut x15: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x15, arg1, (arg2[14]), (arg3[14])); - let mut x16: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x16, arg1, (arg2[15]), (arg3[15])); - out1[0] = x1; - out1[1] = x2; - out1[2] = x3; - out1[3] = x4; - out1[4] = x5; - out1[5] = x6; - out1[6] = x7; - out1[7] = x8; - out1[8] = x9; - out1[9] = x10; - out1[10] = x11; - out1[11] = x12; - out1[12] = x13; - out1[13] = x14; - out1[14] = x15; - out1[15] = x16; +pub fn fiat_bp512_selectznz( + out1: &mut [u32; 16], + arg1: fiat_bp512_u1, + arg2: &[u32; 16], + arg3: &[u32; 16], +) { + let mut x1: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); + let mut x9: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); + let mut x10: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); + let mut x11: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); + let mut x12: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); + let mut x13: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x13, arg1, (arg2[12]), (arg3[12])); + let mut x14: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x14, arg1, (arg2[13]), (arg3[13])); + let mut x15: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x15, arg1, (arg2[14]), (arg3[14])); + let mut x16: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x16, arg1, (arg2[15]), (arg3[15])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; + out1[8] = x9; + out1[9] = x10; + out1[10] = x11; + out1[11] = x12; + out1[12] = x13; + out1[13] = x14; + out1[14] = x15; + out1[15] = x16; } /// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. @@ -17951,182 +18188,182 @@ pub fn fiat_bp512_selectznz(out1: &mut [u32; 16], arg1: fiat_bp512_u1, arg2: &[u /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { - let x1: u32 = (arg1[15]); - let x2: u32 = (arg1[14]); - let x3: u32 = (arg1[13]); - let x4: u32 = (arg1[12]); - let x5: u32 = (arg1[11]); - let x6: u32 = (arg1[10]); - let x7: u32 = (arg1[9]); - let x8: u32 = (arg1[8]); - let x9: u32 = (arg1[7]); - let x10: u32 = (arg1[6]); - let x11: u32 = (arg1[5]); - let x12: u32 = (arg1[4]); - let x13: u32 = (arg1[3]); - let x14: u32 = (arg1[2]); - let x15: u32 = (arg1[1]); - let x16: u32 = (arg1[0]); - let x17: u8 = ((x16 & (0xff as u32)) as u8); - let x18: u32 = (x16 >> 8); - let x19: u8 = ((x18 & (0xff as u32)) as u8); - let x20: u32 = (x18 >> 8); - let x21: u8 = ((x20 & (0xff as u32)) as u8); - let x22: u8 = ((x20 >> 8) as u8); - let x23: u8 = ((x15 & (0xff as u32)) as u8); - let x24: u32 = (x15 >> 8); - let x25: u8 = ((x24 & (0xff as u32)) as u8); - let x26: u32 = (x24 >> 8); - let x27: u8 = ((x26 & (0xff as u32)) as u8); - let x28: u8 = ((x26 >> 8) as u8); - let x29: u8 = ((x14 & (0xff as u32)) as u8); - let x30: u32 = (x14 >> 8); - let x31: u8 = ((x30 & (0xff as u32)) as u8); - let x32: u32 = (x30 >> 8); - let x33: u8 = ((x32 & (0xff as u32)) as u8); - let x34: u8 = ((x32 >> 8) as u8); - let x35: u8 = ((x13 & (0xff as u32)) as u8); - let x36: u32 = (x13 >> 8); - let x37: u8 = ((x36 & (0xff as u32)) as u8); - let x38: u32 = (x36 >> 8); - let x39: u8 = ((x38 & (0xff as u32)) as u8); - let x40: u8 = ((x38 >> 8) as u8); - let x41: u8 = ((x12 & (0xff as u32)) as u8); - let x42: u32 = (x12 >> 8); - let x43: u8 = ((x42 & (0xff as u32)) as u8); - let x44: u32 = (x42 >> 8); - let x45: u8 = ((x44 & (0xff as u32)) as u8); - let x46: u8 = ((x44 >> 8) as u8); - let x47: u8 = ((x11 & (0xff as u32)) as u8); - let x48: u32 = (x11 >> 8); - let x49: u8 = ((x48 & (0xff as u32)) as u8); - let x50: u32 = (x48 >> 8); - let x51: u8 = ((x50 & (0xff as u32)) as u8); - let x52: u8 = ((x50 >> 8) as u8); - let x53: u8 = ((x10 & (0xff as u32)) as u8); - let x54: u32 = (x10 >> 8); - let x55: u8 = ((x54 & (0xff as u32)) as u8); - let x56: u32 = (x54 >> 8); - let x57: u8 = ((x56 & (0xff as u32)) as u8); - let x58: u8 = ((x56 >> 8) as u8); - let x59: u8 = ((x9 & (0xff as u32)) as u8); - let x60: u32 = (x9 >> 8); - let x61: u8 = ((x60 & (0xff as u32)) as u8); - let x62: u32 = (x60 >> 8); - let x63: u8 = ((x62 & (0xff as u32)) as u8); - let x64: u8 = ((x62 >> 8) as u8); - let x65: u8 = ((x8 & (0xff as u32)) as u8); - let x66: u32 = (x8 >> 8); - let x67: u8 = ((x66 & (0xff as u32)) as u8); - let x68: u32 = (x66 >> 8); - let x69: u8 = ((x68 & (0xff as u32)) as u8); - let x70: u8 = ((x68 >> 8) as u8); - let x71: u8 = ((x7 & (0xff as u32)) as u8); - let x72: u32 = (x7 >> 8); - let x73: u8 = ((x72 & (0xff as u32)) as u8); - let x74: u32 = (x72 >> 8); - let x75: u8 = ((x74 & (0xff as u32)) as u8); - let x76: u8 = ((x74 >> 8) as u8); - let x77: u8 = ((x6 & (0xff as u32)) as u8); - let x78: u32 = (x6 >> 8); - let x79: u8 = ((x78 & (0xff as u32)) as u8); - let x80: u32 = (x78 >> 8); - let x81: u8 = ((x80 & (0xff as u32)) as u8); - let x82: u8 = ((x80 >> 8) as u8); - let x83: u8 = ((x5 & (0xff as u32)) as u8); - let x84: u32 = (x5 >> 8); - let x85: u8 = ((x84 & (0xff as u32)) as u8); - let x86: u32 = (x84 >> 8); - let x87: u8 = ((x86 & (0xff as u32)) as u8); - let x88: u8 = ((x86 >> 8) as u8); - let x89: u8 = ((x4 & (0xff as u32)) as u8); - let x90: u32 = (x4 >> 8); - let x91: u8 = ((x90 & (0xff as u32)) as u8); - let x92: u32 = (x90 >> 8); - let x93: u8 = ((x92 & (0xff as u32)) as u8); - let x94: u8 = ((x92 >> 8) as u8); - let x95: u8 = ((x3 & (0xff as u32)) as u8); - let x96: u32 = (x3 >> 8); - let x97: u8 = ((x96 & (0xff as u32)) as u8); - let x98: u32 = (x96 >> 8); - let x99: u8 = ((x98 & (0xff as u32)) as u8); - let x100: u8 = ((x98 >> 8) as u8); - let x101: u8 = ((x2 & (0xff as u32)) as u8); - let x102: u32 = (x2 >> 8); - let x103: u8 = ((x102 & (0xff as u32)) as u8); - let x104: u32 = (x102 >> 8); - let x105: u8 = ((x104 & (0xff as u32)) as u8); - let x106: u8 = ((x104 >> 8) as u8); - let x107: u8 = ((x1 & (0xff as u32)) as u8); - let x108: u32 = (x1 >> 8); - let x109: u8 = ((x108 & (0xff as u32)) as u8); - let x110: u32 = (x108 >> 8); - let x111: u8 = ((x110 & (0xff as u32)) as u8); - let x112: u8 = ((x110 >> 8) as u8); - out1[0] = x17; - out1[1] = x19; - out1[2] = x21; - out1[3] = x22; - out1[4] = x23; - out1[5] = x25; - out1[6] = x27; - out1[7] = x28; - out1[8] = x29; - out1[9] = x31; - out1[10] = x33; - out1[11] = x34; - out1[12] = x35; - out1[13] = x37; - out1[14] = x39; - out1[15] = x40; - out1[16] = x41; - out1[17] = x43; - out1[18] = x45; - out1[19] = x46; - out1[20] = x47; - out1[21] = x49; - out1[22] = x51; - out1[23] = x52; - out1[24] = x53; - out1[25] = x55; - out1[26] = x57; - out1[27] = x58; - out1[28] = x59; - out1[29] = x61; - out1[30] = x63; - out1[31] = x64; - out1[32] = x65; - out1[33] = x67; - out1[34] = x69; - out1[35] = x70; - out1[36] = x71; - out1[37] = x73; - out1[38] = x75; - out1[39] = x76; - out1[40] = x77; - out1[41] = x79; - out1[42] = x81; - out1[43] = x82; - out1[44] = x83; - out1[45] = x85; - out1[46] = x87; - out1[47] = x88; - out1[48] = x89; - out1[49] = x91; - out1[50] = x93; - out1[51] = x94; - out1[52] = x95; - out1[53] = x97; - out1[54] = x99; - out1[55] = x100; - out1[56] = x101; - out1[57] = x103; - out1[58] = x105; - out1[59] = x106; - out1[60] = x107; - out1[61] = x109; - out1[62] = x111; - out1[63] = x112; + let x1: u32 = (arg1[15]); + let x2: u32 = (arg1[14]); + let x3: u32 = (arg1[13]); + let x4: u32 = (arg1[12]); + let x5: u32 = (arg1[11]); + let x6: u32 = (arg1[10]); + let x7: u32 = (arg1[9]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[7]); + let x10: u32 = (arg1[6]); + let x11: u32 = (arg1[5]); + let x12: u32 = (arg1[4]); + let x13: u32 = (arg1[3]); + let x14: u32 = (arg1[2]); + let x15: u32 = (arg1[1]); + let x16: u32 = (arg1[0]); + let x17: u8 = ((x16 & (0xff as u32)) as u8); + let x18: u32 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u32)) as u8); + let x20: u32 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u32)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x15 & (0xff as u32)) as u8); + let x24: u32 = (x15 >> 8); + let x25: u8 = ((x24 & (0xff as u32)) as u8); + let x26: u32 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u32)) as u8); + let x28: u8 = ((x26 >> 8) as u8); + let x29: u8 = ((x14 & (0xff as u32)) as u8); + let x30: u32 = (x14 >> 8); + let x31: u8 = ((x30 & (0xff as u32)) as u8); + let x32: u32 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u32)) as u8); + let x34: u8 = ((x32 >> 8) as u8); + let x35: u8 = ((x13 & (0xff as u32)) as u8); + let x36: u32 = (x13 >> 8); + let x37: u8 = ((x36 & (0xff as u32)) as u8); + let x38: u32 = (x36 >> 8); + let x39: u8 = ((x38 & (0xff as u32)) as u8); + let x40: u8 = ((x38 >> 8) as u8); + let x41: u8 = ((x12 & (0xff as u32)) as u8); + let x42: u32 = (x12 >> 8); + let x43: u8 = ((x42 & (0xff as u32)) as u8); + let x44: u32 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u32)) as u8); + let x46: u8 = ((x44 >> 8) as u8); + let x47: u8 = ((x11 & (0xff as u32)) as u8); + let x48: u32 = (x11 >> 8); + let x49: u8 = ((x48 & (0xff as u32)) as u8); + let x50: u32 = (x48 >> 8); + let x51: u8 = ((x50 & (0xff as u32)) as u8); + let x52: u8 = ((x50 >> 8) as u8); + let x53: u8 = ((x10 & (0xff as u32)) as u8); + let x54: u32 = (x10 >> 8); + let x55: u8 = ((x54 & (0xff as u32)) as u8); + let x56: u32 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u32)) as u8); + let x58: u8 = ((x56 >> 8) as u8); + let x59: u8 = ((x9 & (0xff as u32)) as u8); + let x60: u32 = (x9 >> 8); + let x61: u8 = ((x60 & (0xff as u32)) as u8); + let x62: u32 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u32)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x8 & (0xff as u32)) as u8); + let x66: u32 = (x8 >> 8); + let x67: u8 = ((x66 & (0xff as u32)) as u8); + let x68: u32 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u32)) as u8); + let x70: u8 = ((x68 >> 8) as u8); + let x71: u8 = ((x7 & (0xff as u32)) as u8); + let x72: u32 = (x7 >> 8); + let x73: u8 = ((x72 & (0xff as u32)) as u8); + let x74: u32 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u32)) as u8); + let x76: u8 = ((x74 >> 8) as u8); + let x77: u8 = ((x6 & (0xff as u32)) as u8); + let x78: u32 = (x6 >> 8); + let x79: u8 = ((x78 & (0xff as u32)) as u8); + let x80: u32 = (x78 >> 8); + let x81: u8 = ((x80 & (0xff as u32)) as u8); + let x82: u8 = ((x80 >> 8) as u8); + let x83: u8 = ((x5 & (0xff as u32)) as u8); + let x84: u32 = (x5 >> 8); + let x85: u8 = ((x84 & (0xff as u32)) as u8); + let x86: u32 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u32)) as u8); + let x88: u8 = ((x86 >> 8) as u8); + let x89: u8 = ((x4 & (0xff as u32)) as u8); + let x90: u32 = (x4 >> 8); + let x91: u8 = ((x90 & (0xff as u32)) as u8); + let x92: u32 = (x90 >> 8); + let x93: u8 = ((x92 & (0xff as u32)) as u8); + let x94: u8 = ((x92 >> 8) as u8); + let x95: u8 = ((x3 & (0xff as u32)) as u8); + let x96: u32 = (x3 >> 8); + let x97: u8 = ((x96 & (0xff as u32)) as u8); + let x98: u32 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u32)) as u8); + let x100: u8 = ((x98 >> 8) as u8); + let x101: u8 = ((x2 & (0xff as u32)) as u8); + let x102: u32 = (x2 >> 8); + let x103: u8 = ((x102 & (0xff as u32)) as u8); + let x104: u32 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u32)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u32)) as u8); + let x108: u32 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u32)) as u8); + let x110: u32 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u32)) as u8); + let x112: u8 = ((x110 >> 8) as u8); + out1[0] = x17; + out1[1] = x19; + out1[2] = x21; + out1[3] = x22; + out1[4] = x23; + out1[5] = x25; + out1[6] = x27; + out1[7] = x28; + out1[8] = x29; + out1[9] = x31; + out1[10] = x33; + out1[11] = x34; + out1[12] = x35; + out1[13] = x37; + out1[14] = x39; + out1[15] = x40; + out1[16] = x41; + out1[17] = x43; + out1[18] = x45; + out1[19] = x46; + out1[20] = x47; + out1[21] = x49; + out1[22] = x51; + out1[23] = x52; + out1[24] = x53; + out1[25] = x55; + out1[26] = x57; + out1[27] = x58; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x70; + out1[36] = x71; + out1[37] = x73; + out1[38] = x75; + out1[39] = x76; + out1[40] = x77; + out1[41] = x79; + out1[42] = x81; + out1[43] = x82; + out1[44] = x83; + out1[45] = x85; + out1[46] = x87; + out1[47] = x88; + out1[48] = x89; + out1[49] = x91; + out1[50] = x93; + out1[51] = x94; + out1[52] = x95; + out1[53] = x97; + out1[54] = x99; + out1[55] = x100; + out1[56] = x101; + out1[57] = x103; + out1[58] = x105; + out1[59] = x106; + out1[60] = x107; + out1[61] = x109; + out1[62] = x111; + out1[63] = x112; } /// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. @@ -18143,134 +18380,134 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { - let x1: u32 = (((arg1[63]) as u32) << 24); - let x2: u32 = (((arg1[62]) as u32) << 16); - let x3: u32 = (((arg1[61]) as u32) << 8); - let x4: u8 = (arg1[60]); - let x5: u32 = (((arg1[59]) as u32) << 24); - let x6: u32 = (((arg1[58]) as u32) << 16); - let x7: u32 = (((arg1[57]) as u32) << 8); - let x8: u8 = (arg1[56]); - let x9: u32 = (((arg1[55]) as u32) << 24); - let x10: u32 = (((arg1[54]) as u32) << 16); - let x11: u32 = (((arg1[53]) as u32) << 8); - let x12: u8 = (arg1[52]); - let x13: u32 = (((arg1[51]) as u32) << 24); - let x14: u32 = (((arg1[50]) as u32) << 16); - let x15: u32 = (((arg1[49]) as u32) << 8); - let x16: u8 = (arg1[48]); - let x17: u32 = (((arg1[47]) as u32) << 24); - let x18: u32 = (((arg1[46]) as u32) << 16); - let x19: u32 = (((arg1[45]) as u32) << 8); - let x20: u8 = (arg1[44]); - let x21: u32 = (((arg1[43]) as u32) << 24); - let x22: u32 = (((arg1[42]) as u32) << 16); - let x23: u32 = (((arg1[41]) as u32) << 8); - let x24: u8 = (arg1[40]); - let x25: u32 = (((arg1[39]) as u32) << 24); - let x26: u32 = (((arg1[38]) as u32) << 16); - let x27: u32 = (((arg1[37]) as u32) << 8); - let x28: u8 = (arg1[36]); - let x29: u32 = (((arg1[35]) as u32) << 24); - let x30: u32 = (((arg1[34]) as u32) << 16); - let x31: u32 = (((arg1[33]) as u32) << 8); - let x32: u8 = (arg1[32]); - let x33: u32 = (((arg1[31]) as u32) << 24); - let x34: u32 = (((arg1[30]) as u32) << 16); - let x35: u32 = (((arg1[29]) as u32) << 8); - let x36: u8 = (arg1[28]); - let x37: u32 = (((arg1[27]) as u32) << 24); - let x38: u32 = (((arg1[26]) as u32) << 16); - let x39: u32 = (((arg1[25]) as u32) << 8); - let x40: u8 = (arg1[24]); - let x41: u32 = (((arg1[23]) as u32) << 24); - let x42: u32 = (((arg1[22]) as u32) << 16); - let x43: u32 = (((arg1[21]) as u32) << 8); - let x44: u8 = (arg1[20]); - let x45: u32 = (((arg1[19]) as u32) << 24); - let x46: u32 = (((arg1[18]) as u32) << 16); - let x47: u32 = (((arg1[17]) as u32) << 8); - let x48: u8 = (arg1[16]); - let x49: u32 = (((arg1[15]) as u32) << 24); - let x50: u32 = (((arg1[14]) as u32) << 16); - let x51: u32 = (((arg1[13]) as u32) << 8); - let x52: u8 = (arg1[12]); - let x53: u32 = (((arg1[11]) as u32) << 24); - let x54: u32 = (((arg1[10]) as u32) << 16); - let x55: u32 = (((arg1[9]) as u32) << 8); - let x56: u8 = (arg1[8]); - let x57: u32 = (((arg1[7]) as u32) << 24); - let x58: u32 = (((arg1[6]) as u32) << 16); - let x59: u32 = (((arg1[5]) as u32) << 8); - let x60: u8 = (arg1[4]); - let x61: u32 = (((arg1[3]) as u32) << 24); - let x62: u32 = (((arg1[2]) as u32) << 16); - let x63: u32 = (((arg1[1]) as u32) << 8); - let x64: u8 = (arg1[0]); - let x65: u32 = (x63 + (x64 as u32)); - let x66: u32 = (x62 + x65); - let x67: u32 = (x61 + x66); - let x68: u32 = (x59 + (x60 as u32)); - let x69: u32 = (x58 + x68); - let x70: u32 = (x57 + x69); - let x71: u32 = (x55 + (x56 as u32)); - let x72: u32 = (x54 + x71); - let x73: u32 = (x53 + x72); - let x74: u32 = (x51 + (x52 as u32)); - let x75: u32 = (x50 + x74); - let x76: u32 = (x49 + x75); - let x77: u32 = (x47 + (x48 as u32)); - let x78: u32 = (x46 + x77); - let x79: u32 = (x45 + x78); - let x80: u32 = (x43 + (x44 as u32)); - let x81: u32 = (x42 + x80); - let x82: u32 = (x41 + x81); - let x83: u32 = (x39 + (x40 as u32)); - let x84: u32 = (x38 + x83); - let x85: u32 = (x37 + x84); - let x86: u32 = (x35 + (x36 as u32)); - let x87: u32 = (x34 + x86); - let x88: u32 = (x33 + x87); - let x89: u32 = (x31 + (x32 as u32)); - let x90: u32 = (x30 + x89); - let x91: u32 = (x29 + x90); - let x92: u32 = (x27 + (x28 as u32)); - let x93: u32 = (x26 + x92); - let x94: u32 = (x25 + x93); - let x95: u32 = (x23 + (x24 as u32)); - let x96: u32 = (x22 + x95); - let x97: u32 = (x21 + x96); - let x98: u32 = (x19 + (x20 as u32)); - let x99: u32 = (x18 + x98); - let x100: u32 = (x17 + x99); - let x101: u32 = (x15 + (x16 as u32)); - let x102: u32 = (x14 + x101); - let x103: u32 = (x13 + x102); - let x104: u32 = (x11 + (x12 as u32)); - let x105: u32 = (x10 + x104); - let x106: u32 = (x9 + x105); - let x107: u32 = (x7 + (x8 as u32)); - let x108: u32 = (x6 + x107); - let x109: u32 = (x5 + x108); - let x110: u32 = (x3 + (x4 as u32)); - let x111: u32 = (x2 + x110); - let x112: u32 = (x1 + x111); - out1[0] = x67; - out1[1] = x70; - out1[2] = x73; - out1[3] = x76; - out1[4] = x79; - out1[5] = x82; - out1[6] = x85; - out1[7] = x88; - out1[8] = x91; - out1[9] = x94; - out1[10] = x97; - out1[11] = x100; - out1[12] = x103; - out1[13] = x106; - out1[14] = x109; - out1[15] = x112; + let x1: u32 = (((arg1[63]) as u32) << 24); + let x2: u32 = (((arg1[62]) as u32) << 16); + let x3: u32 = (((arg1[61]) as u32) << 8); + let x4: u8 = (arg1[60]); + let x5: u32 = (((arg1[59]) as u32) << 24); + let x6: u32 = (((arg1[58]) as u32) << 16); + let x7: u32 = (((arg1[57]) as u32) << 8); + let x8: u8 = (arg1[56]); + let x9: u32 = (((arg1[55]) as u32) << 24); + let x10: u32 = (((arg1[54]) as u32) << 16); + let x11: u32 = (((arg1[53]) as u32) << 8); + let x12: u8 = (arg1[52]); + let x13: u32 = (((arg1[51]) as u32) << 24); + let x14: u32 = (((arg1[50]) as u32) << 16); + let x15: u32 = (((arg1[49]) as u32) << 8); + let x16: u8 = (arg1[48]); + let x17: u32 = (((arg1[47]) as u32) << 24); + let x18: u32 = (((arg1[46]) as u32) << 16); + let x19: u32 = (((arg1[45]) as u32) << 8); + let x20: u8 = (arg1[44]); + let x21: u32 = (((arg1[43]) as u32) << 24); + let x22: u32 = (((arg1[42]) as u32) << 16); + let x23: u32 = (((arg1[41]) as u32) << 8); + let x24: u8 = (arg1[40]); + let x25: u32 = (((arg1[39]) as u32) << 24); + let x26: u32 = (((arg1[38]) as u32) << 16); + let x27: u32 = (((arg1[37]) as u32) << 8); + let x28: u8 = (arg1[36]); + let x29: u32 = (((arg1[35]) as u32) << 24); + let x30: u32 = (((arg1[34]) as u32) << 16); + let x31: u32 = (((arg1[33]) as u32) << 8); + let x32: u8 = (arg1[32]); + let x33: u32 = (((arg1[31]) as u32) << 24); + let x34: u32 = (((arg1[30]) as u32) << 16); + let x35: u32 = (((arg1[29]) as u32) << 8); + let x36: u8 = (arg1[28]); + let x37: u32 = (((arg1[27]) as u32) << 24); + let x38: u32 = (((arg1[26]) as u32) << 16); + let x39: u32 = (((arg1[25]) as u32) << 8); + let x40: u8 = (arg1[24]); + let x41: u32 = (((arg1[23]) as u32) << 24); + let x42: u32 = (((arg1[22]) as u32) << 16); + let x43: u32 = (((arg1[21]) as u32) << 8); + let x44: u8 = (arg1[20]); + let x45: u32 = (((arg1[19]) as u32) << 24); + let x46: u32 = (((arg1[18]) as u32) << 16); + let x47: u32 = (((arg1[17]) as u32) << 8); + let x48: u8 = (arg1[16]); + let x49: u32 = (((arg1[15]) as u32) << 24); + let x50: u32 = (((arg1[14]) as u32) << 16); + let x51: u32 = (((arg1[13]) as u32) << 8); + let x52: u8 = (arg1[12]); + let x53: u32 = (((arg1[11]) as u32) << 24); + let x54: u32 = (((arg1[10]) as u32) << 16); + let x55: u32 = (((arg1[9]) as u32) << 8); + let x56: u8 = (arg1[8]); + let x57: u32 = (((arg1[7]) as u32) << 24); + let x58: u32 = (((arg1[6]) as u32) << 16); + let x59: u32 = (((arg1[5]) as u32) << 8); + let x60: u8 = (arg1[4]); + let x61: u32 = (((arg1[3]) as u32) << 24); + let x62: u32 = (((arg1[2]) as u32) << 16); + let x63: u32 = (((arg1[1]) as u32) << 8); + let x64: u8 = (arg1[0]); + let x65: u32 = (x63 + (x64 as u32)); + let x66: u32 = (x62 + x65); + let x67: u32 = (x61 + x66); + let x68: u32 = (x59 + (x60 as u32)); + let x69: u32 = (x58 + x68); + let x70: u32 = (x57 + x69); + let x71: u32 = (x55 + (x56 as u32)); + let x72: u32 = (x54 + x71); + let x73: u32 = (x53 + x72); + let x74: u32 = (x51 + (x52 as u32)); + let x75: u32 = (x50 + x74); + let x76: u32 = (x49 + x75); + let x77: u32 = (x47 + (x48 as u32)); + let x78: u32 = (x46 + x77); + let x79: u32 = (x45 + x78); + let x80: u32 = (x43 + (x44 as u32)); + let x81: u32 = (x42 + x80); + let x82: u32 = (x41 + x81); + let x83: u32 = (x39 + (x40 as u32)); + let x84: u32 = (x38 + x83); + let x85: u32 = (x37 + x84); + let x86: u32 = (x35 + (x36 as u32)); + let x87: u32 = (x34 + x86); + let x88: u32 = (x33 + x87); + let x89: u32 = (x31 + (x32 as u32)); + let x90: u32 = (x30 + x89); + let x91: u32 = (x29 + x90); + let x92: u32 = (x27 + (x28 as u32)); + let x93: u32 = (x26 + x92); + let x94: u32 = (x25 + x93); + let x95: u32 = (x23 + (x24 as u32)); + let x96: u32 = (x22 + x95); + let x97: u32 = (x21 + x96); + let x98: u32 = (x19 + (x20 as u32)); + let x99: u32 = (x18 + x98); + let x100: u32 = (x17 + x99); + let x101: u32 = (x15 + (x16 as u32)); + let x102: u32 = (x14 + x101); + let x103: u32 = (x13 + x102); + let x104: u32 = (x11 + (x12 as u32)); + let x105: u32 = (x10 + x104); + let x106: u32 = (x9 + x105); + let x107: u32 = (x7 + (x8 as u32)); + let x108: u32 = (x6 + x107); + let x109: u32 = (x5 + x108); + let x110: u32 = (x3 + (x4 as u32)); + let x111: u32 = (x2 + x110); + let x112: u32 = (x1 + x111); + out1[0] = x67; + out1[1] = x70; + out1[2] = x73; + out1[3] = x76; + out1[4] = x79; + out1[5] = x82; + out1[6] = x85; + out1[7] = x88; + out1[8] = x91; + out1[9] = x94; + out1[10] = x97; + out1[11] = x100; + out1[12] = x103; + out1[13] = x106; + out1[14] = x109; + out1[15] = x112; } /// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. @@ -18281,22 +18518,22 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { /// #[inline] pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { - out1[0] = 0xa7c5b70d; - out1[1] = 0xd7559fa9; - out1[2] = 0xd27d397a; - out1[3] = 0xd77e00d0; - out1[4] = 0x195c7f19; - out1[5] = 0x51325ed5; - out1[6] = 0x643997bd; - out1[7] = 0x82b264ff; - out1[8] = 0x8fccf78e; - out1[9] = 0x299c6335; - out1[10] = 0x4c362df1; - out1[11] = 0x34cf724c; - out1[12] = 0xcc3603f8; - out1[13] = 0xc02b1951; - out1[14] = 0x24163b74; - out1[15] = 0x55226247; + out1[0] = 0xa7c5b70d; + out1[1] = 0xd7559fa9; + out1[2] = 0xd27d397a; + out1[3] = 0xd77e00d0; + out1[4] = 0x195c7f19; + out1[5] = 0x51325ed5; + out1[6] = 0x643997bd; + out1[7] = 0x82b264ff; + out1[8] = 0x8fccf78e; + out1[9] = 0x299c6335; + out1[10] = 0x4c362df1; + out1[11] = 0x34cf724c; + out1[12] = 0xcc3603f8; + out1[13] = 0xc02b1951; + out1[14] = 0x24163b74; + out1[15] = 0x55226247; } /// The function fiat_bp512_msat returns the saturated representation of the prime modulus. @@ -18309,23 +18546,23 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { - out1[0] = 0x583a48f3; - out1[1] = 0x28aa6056; - out1[2] = 0x2d82c685; - out1[3] = 0x2881ff2f; - out1[4] = 0xe6a380e6; - out1[5] = 0xaecda12a; - out1[6] = 0x9bc66842; - out1[7] = 0x7d4d9b00; - out1[8] = 0x70330871; - out1[9] = 0xd6639cca; - out1[10] = 0xb3c9d20e; - out1[11] = 0xcb308db3; - out1[12] = 0x33c9fc07; - out1[13] = 0x3fd4e6ae; - out1[14] = 0xdbe9c48b; - out1[15] = 0xaadd9db8; - out1[16] = (0x0 as u32); + out1[0] = 0x583a48f3; + out1[1] = 0x28aa6056; + out1[2] = 0x2d82c685; + out1[3] = 0x2881ff2f; + out1[4] = 0xe6a380e6; + out1[5] = 0xaecda12a; + out1[6] = 0x9bc66842; + out1[7] = 0x7d4d9b00; + out1[8] = 0x70330871; + out1[9] = 0xd6639cca; + out1[10] = 0xb3c9d20e; + out1[11] = 0xcb308db3; + out1[12] = 0x33c9fc07; + out1[13] = 0x3fd4e6ae; + out1[14] = 0xdbe9c48b; + out1[15] = 0xaadd9db8; + out1[16] = (0x0 as u32); } /// The function fiat_bp512_divstep computes a divstep. @@ -18357,780 +18594,792 @@ pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { /// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] /// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_divstep(out1: &mut u32, out2: &mut [u32; 17], out3: &mut [u32; 17], out4: &mut [u32; 16], out5: &mut [u32; 16], arg1: u32, arg2: &[u32; 17], arg3: &[u32; 17], arg4: &[u32; 16], arg5: &[u32; 16]) { - let mut x1: u32 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); - let x3: fiat_bp512_u1 = (((x1 >> 31) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u32)) as fiat_bp512_u1)); - let mut x4: u32 = 0; - let mut x5: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); - let mut x6: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x6, x3, arg1, x4); - let mut x7: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); - let mut x8: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); - let mut x9: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); - let mut x10: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); - let mut x11: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); - let mut x12: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); - let mut x13: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); - let mut x14: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); - let mut x15: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); - let mut x16: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); - let mut x17: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); - let mut x18: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); - let mut x19: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); - let mut x20: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x20, x3, (arg2[13]), (arg3[13])); - let mut x21: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x21, x3, (arg2[14]), (arg3[14])); - let mut x22: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x22, x3, (arg2[15]), (arg3[15])); - let mut x23: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x23, x3, (arg2[16]), (arg3[16])); - let mut x24: u32 = 0; - let mut x25: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x24, &mut x25, 0x0, (0x1 as u32), (!(arg2[0]))); - let mut x26: u32 = 0; - let mut x27: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[1]))); - let mut x28: u32 = 0; - let mut x29: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[2]))); - let mut x30: u32 = 0; - let mut x31: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[3]))); - let mut x32: u32 = 0; - let mut x33: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[4]))); - let mut x34: u32 = 0; - let mut x35: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[5]))); - let mut x36: u32 = 0; - let mut x37: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[6]))); - let mut x38: u32 = 0; - let mut x39: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[7]))); - let mut x40: u32 = 0; - let mut x41: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[8]))); - let mut x42: u32 = 0; - let mut x43: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[9]))); - let mut x44: u32 = 0; - let mut x45: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[10]))); - let mut x46: u32 = 0; - let mut x47: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, (0x0 as u32), (!(arg2[11]))); - let mut x48: u32 = 0; - let mut x49: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, (0x0 as u32), (!(arg2[12]))); - let mut x50: u32 = 0; - let mut x51: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, (0x0 as u32), (!(arg2[13]))); - let mut x52: u32 = 0; - let mut x53: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), (!(arg2[14]))); - let mut x54: u32 = 0; - let mut x55: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), (!(arg2[15]))); - let mut x56: u32 = 0; - let mut x57: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), (!(arg2[16]))); - let mut x58: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x58, x3, (arg3[0]), x24); - let mut x59: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x59, x3, (arg3[1]), x26); - let mut x60: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x60, x3, (arg3[2]), x28); - let mut x61: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x61, x3, (arg3[3]), x30); - let mut x62: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x62, x3, (arg3[4]), x32); - let mut x63: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x63, x3, (arg3[5]), x34); - let mut x64: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x64, x3, (arg3[6]), x36); - let mut x65: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x65, x3, (arg3[7]), x38); - let mut x66: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x66, x3, (arg3[8]), x40); - let mut x67: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x67, x3, (arg3[9]), x42); - let mut x68: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x68, x3, (arg3[10]), x44); - let mut x69: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x69, x3, (arg3[11]), x46); - let mut x70: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x70, x3, (arg3[12]), x48); - let mut x71: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x71, x3, (arg3[13]), x50); - let mut x72: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x72, x3, (arg3[14]), x52); - let mut x73: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x73, x3, (arg3[15]), x54); - let mut x74: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x74, x3, (arg3[16]), x56); - let mut x75: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x75, x3, (arg4[0]), (arg5[0])); - let mut x76: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x76, x3, (arg4[1]), (arg5[1])); - let mut x77: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x77, x3, (arg4[2]), (arg5[2])); - let mut x78: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x78, x3, (arg4[3]), (arg5[3])); - let mut x79: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x79, x3, (arg4[4]), (arg5[4])); - let mut x80: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x80, x3, (arg4[5]), (arg5[5])); - let mut x81: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x81, x3, (arg4[6]), (arg5[6])); - let mut x82: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x82, x3, (arg4[7]), (arg5[7])); - let mut x83: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x83, x3, (arg4[8]), (arg5[8])); - let mut x84: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x84, x3, (arg4[9]), (arg5[9])); - let mut x85: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x85, x3, (arg4[10]), (arg5[10])); - let mut x86: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x86, x3, (arg4[11]), (arg5[11])); - let mut x87: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x87, x3, (arg4[12]), (arg5[12])); - let mut x88: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x88, x3, (arg4[13]), (arg5[13])); - let mut x89: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x89, x3, (arg4[14]), (arg5[14])); - let mut x90: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x90, x3, (arg4[15]), (arg5[15])); - let mut x91: u32 = 0; - let mut x92: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x91, &mut x92, 0x0, x75, x75); - let mut x93: u32 = 0; - let mut x94: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x93, &mut x94, x92, x76, x76); - let mut x95: u32 = 0; - let mut x96: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x95, &mut x96, x94, x77, x77); - let mut x97: u32 = 0; - let mut x98: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x97, &mut x98, x96, x78, x78); - let mut x99: u32 = 0; - let mut x100: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x99, &mut x100, x98, x79, x79); - let mut x101: u32 = 0; - let mut x102: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x101, &mut x102, x100, x80, x80); - let mut x103: u32 = 0; - let mut x104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x103, &mut x104, x102, x81, x81); - let mut x105: u32 = 0; - let mut x106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x105, &mut x106, x104, x82, x82); - let mut x107: u32 = 0; - let mut x108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x107, &mut x108, x106, x83, x83); - let mut x109: u32 = 0; - let mut x110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x109, &mut x110, x108, x84, x84); - let mut x111: u32 = 0; - let mut x112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x111, &mut x112, x110, x85, x85); - let mut x113: u32 = 0; - let mut x114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x113, &mut x114, x112, x86, x86); - let mut x115: u32 = 0; - let mut x116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x87, x87); - let mut x117: u32 = 0; - let mut x118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x88, x88); - let mut x119: u32 = 0; - let mut x120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x89, x89); - let mut x121: u32 = 0; - let mut x122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x90, x90); - let mut x123: u32 = 0; - let mut x124: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x123, &mut x124, 0x0, x91, 0x583a48f3); - let mut x125: u32 = 0; - let mut x126: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x125, &mut x126, x124, x93, 0x28aa6056); - let mut x127: u32 = 0; - let mut x128: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x127, &mut x128, x126, x95, 0x2d82c685); - let mut x129: u32 = 0; - let mut x130: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x129, &mut x130, x128, x97, 0x2881ff2f); - let mut x131: u32 = 0; - let mut x132: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x131, &mut x132, x130, x99, 0xe6a380e6); - let mut x133: u32 = 0; - let mut x134: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x133, &mut x134, x132, x101, 0xaecda12a); - let mut x135: u32 = 0; - let mut x136: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x135, &mut x136, x134, x103, 0x9bc66842); - let mut x137: u32 = 0; - let mut x138: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x137, &mut x138, x136, x105, 0x7d4d9b00); - let mut x139: u32 = 0; - let mut x140: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x139, &mut x140, x138, x107, 0x70330871); - let mut x141: u32 = 0; - let mut x142: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x141, &mut x142, x140, x109, 0xd6639cca); - let mut x143: u32 = 0; - let mut x144: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x143, &mut x144, x142, x111, 0xb3c9d20e); - let mut x145: u32 = 0; - let mut x146: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x145, &mut x146, x144, x113, 0xcb308db3); - let mut x147: u32 = 0; - let mut x148: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x147, &mut x148, x146, x115, 0x33c9fc07); - let mut x149: u32 = 0; - let mut x150: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x149, &mut x150, x148, x117, 0x3fd4e6ae); - let mut x151: u32 = 0; - let mut x152: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x151, &mut x152, x150, x119, 0xdbe9c48b); - let mut x153: u32 = 0; - let mut x154: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x153, &mut x154, x152, x121, 0xaadd9db8); - let mut x155: u32 = 0; - let mut x156: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x155, &mut x156, x154, (x122 as u32), (0x0 as u32)); - let x157: u32 = (arg4[15]); - let x158: u32 = (arg4[14]); - let x159: u32 = (arg4[13]); - let x160: u32 = (arg4[12]); - let x161: u32 = (arg4[11]); - let x162: u32 = (arg4[10]); - let x163: u32 = (arg4[9]); - let x164: u32 = (arg4[8]); - let x165: u32 = (arg4[7]); - let x166: u32 = (arg4[6]); - let x167: u32 = (arg4[5]); - let x168: u32 = (arg4[4]); - let x169: u32 = (arg4[3]); - let x170: u32 = (arg4[2]); - let x171: u32 = (arg4[1]); - let x172: u32 = (arg4[0]); - let mut x173: u32 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x173, &mut x174, 0x0, (0x0 as u32), x172); - let mut x175: u32 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x175, &mut x176, x174, (0x0 as u32), x171); - let mut x177: u32 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x177, &mut x178, x176, (0x0 as u32), x170); - let mut x179: u32 = 0; - let mut x180: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x179, &mut x180, x178, (0x0 as u32), x169); - let mut x181: u32 = 0; - let mut x182: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x181, &mut x182, x180, (0x0 as u32), x168); - let mut x183: u32 = 0; - let mut x184: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x183, &mut x184, x182, (0x0 as u32), x167); - let mut x185: u32 = 0; - let mut x186: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x185, &mut x186, x184, (0x0 as u32), x166); - let mut x187: u32 = 0; - let mut x188: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x187, &mut x188, x186, (0x0 as u32), x165); - let mut x189: u32 = 0; - let mut x190: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x189, &mut x190, x188, (0x0 as u32), x164); - let mut x191: u32 = 0; - let mut x192: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x191, &mut x192, x190, (0x0 as u32), x163); - let mut x193: u32 = 0; - let mut x194: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x193, &mut x194, x192, (0x0 as u32), x162); - let mut x195: u32 = 0; - let mut x196: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x195, &mut x196, x194, (0x0 as u32), x161); - let mut x197: u32 = 0; - let mut x198: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x197, &mut x198, x196, (0x0 as u32), x160); - let mut x199: u32 = 0; - let mut x200: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x199, &mut x200, x198, (0x0 as u32), x159); - let mut x201: u32 = 0; - let mut x202: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x201, &mut x202, x200, (0x0 as u32), x158); - let mut x203: u32 = 0; - let mut x204: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x203, &mut x204, x202, (0x0 as u32), x157); - let mut x205: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x205, x204, (0x0 as u32), 0xffffffff); - let mut x206: u32 = 0; - let mut x207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x206, &mut x207, 0x0, x173, (x205 & 0x583a48f3)); - let mut x208: u32 = 0; - let mut x209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x175, (x205 & 0x28aa6056)); - let mut x210: u32 = 0; - let mut x211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x177, (x205 & 0x2d82c685)); - let mut x212: u32 = 0; - let mut x213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x179, (x205 & 0x2881ff2f)); - let mut x214: u32 = 0; - let mut x215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x181, (x205 & 0xe6a380e6)); - let mut x216: u32 = 0; - let mut x217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x183, (x205 & 0xaecda12a)); - let mut x218: u32 = 0; - let mut x219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x185, (x205 & 0x9bc66842)); - let mut x220: u32 = 0; - let mut x221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x187, (x205 & 0x7d4d9b00)); - let mut x222: u32 = 0; - let mut x223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x222, &mut x223, x221, x189, (x205 & 0x70330871)); - let mut x224: u32 = 0; - let mut x225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x224, &mut x225, x223, x191, (x205 & 0xd6639cca)); - let mut x226: u32 = 0; - let mut x227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x193, (x205 & 0xb3c9d20e)); - let mut x228: u32 = 0; - let mut x229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x195, (x205 & 0xcb308db3)); - let mut x230: u32 = 0; - let mut x231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x197, (x205 & 0x33c9fc07)); - let mut x232: u32 = 0; - let mut x233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x199, (x205 & 0x3fd4e6ae)); - let mut x234: u32 = 0; - let mut x235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x201, (x205 & 0xdbe9c48b)); - let mut x236: u32 = 0; - let mut x237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x203, (x205 & 0xaadd9db8)); - let mut x238: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x238, x3, (arg5[0]), x206); - let mut x239: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x239, x3, (arg5[1]), x208); - let mut x240: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x240, x3, (arg5[2]), x210); - let mut x241: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x241, x3, (arg5[3]), x212); - let mut x242: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x242, x3, (arg5[4]), x214); - let mut x243: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x243, x3, (arg5[5]), x216); - let mut x244: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x244, x3, (arg5[6]), x218); - let mut x245: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x245, x3, (arg5[7]), x220); - let mut x246: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x246, x3, (arg5[8]), x222); - let mut x247: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x247, x3, (arg5[9]), x224); - let mut x248: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x248, x3, (arg5[10]), x226); - let mut x249: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x249, x3, (arg5[11]), x228); - let mut x250: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x250, x3, (arg5[12]), x230); - let mut x251: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x251, x3, (arg5[13]), x232); - let mut x252: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x252, x3, (arg5[14]), x234); - let mut x253: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x253, x3, (arg5[15]), x236); - let x254: fiat_bp512_u1 = ((x58 & (0x1 as u32)) as fiat_bp512_u1); - let mut x255: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x255, x254, (0x0 as u32), x7); - let mut x256: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x256, x254, (0x0 as u32), x8); - let mut x257: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x257, x254, (0x0 as u32), x9); - let mut x258: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x258, x254, (0x0 as u32), x10); - let mut x259: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x259, x254, (0x0 as u32), x11); - let mut x260: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x260, x254, (0x0 as u32), x12); - let mut x261: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x261, x254, (0x0 as u32), x13); - let mut x262: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x262, x254, (0x0 as u32), x14); - let mut x263: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x263, x254, (0x0 as u32), x15); - let mut x264: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x264, x254, (0x0 as u32), x16); - let mut x265: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x265, x254, (0x0 as u32), x17); - let mut x266: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x266, x254, (0x0 as u32), x18); - let mut x267: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x267, x254, (0x0 as u32), x19); - let mut x268: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x268, x254, (0x0 as u32), x20); - let mut x269: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x269, x254, (0x0 as u32), x21); - let mut x270: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x270, x254, (0x0 as u32), x22); - let mut x271: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x271, x254, (0x0 as u32), x23); - let mut x272: u32 = 0; - let mut x273: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x272, &mut x273, 0x0, x58, x255); - let mut x274: u32 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, x59, x256); - let mut x276: u32 = 0; - let mut x277: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x276, &mut x277, x275, x60, x257); - let mut x278: u32 = 0; - let mut x279: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x278, &mut x279, x277, x61, x258); - let mut x280: u32 = 0; - let mut x281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x280, &mut x281, x279, x62, x259); - let mut x282: u32 = 0; - let mut x283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x282, &mut x283, x281, x63, x260); - let mut x284: u32 = 0; - let mut x285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x284, &mut x285, x283, x64, x261); - let mut x286: u32 = 0; - let mut x287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x286, &mut x287, x285, x65, x262); - let mut x288: u32 = 0; - let mut x289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x288, &mut x289, x287, x66, x263); - let mut x290: u32 = 0; - let mut x291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x67, x264); - let mut x292: u32 = 0; - let mut x293: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x68, x265); - let mut x294: u32 = 0; - let mut x295: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x69, x266); - let mut x296: u32 = 0; - let mut x297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x70, x267); - let mut x298: u32 = 0; - let mut x299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x71, x268); - let mut x300: u32 = 0; - let mut x301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x72, x269); - let mut x302: u32 = 0; - let mut x303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x73, x270); - let mut x304: u32 = 0; - let mut x305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x74, x271); - let mut x306: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x306, x254, (0x0 as u32), x75); - let mut x307: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x307, x254, (0x0 as u32), x76); - let mut x308: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x308, x254, (0x0 as u32), x77); - let mut x309: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x309, x254, (0x0 as u32), x78); - let mut x310: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x310, x254, (0x0 as u32), x79); - let mut x311: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x311, x254, (0x0 as u32), x80); - let mut x312: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x312, x254, (0x0 as u32), x81); - let mut x313: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x313, x254, (0x0 as u32), x82); - let mut x314: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x314, x254, (0x0 as u32), x83); - let mut x315: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x315, x254, (0x0 as u32), x84); - let mut x316: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x316, x254, (0x0 as u32), x85); - let mut x317: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x317, x254, (0x0 as u32), x86); - let mut x318: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x318, x254, (0x0 as u32), x87); - let mut x319: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x319, x254, (0x0 as u32), x88); - let mut x320: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x320, x254, (0x0 as u32), x89); - let mut x321: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x321, x254, (0x0 as u32), x90); - let mut x322: u32 = 0; - let mut x323: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x322, &mut x323, 0x0, x238, x306); - let mut x324: u32 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x239, x307); - let mut x326: u32 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x240, x308); - let mut x328: u32 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x241, x309); - let mut x330: u32 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x242, x310); - let mut x332: u32 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x243, x311); - let mut x334: u32 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x244, x312); - let mut x336: u32 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x245, x313); - let mut x338: u32 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x246, x314); - let mut x340: u32 = 0; - let mut x341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x247, x315); - let mut x342: u32 = 0; - let mut x343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x316); - let mut x344: u32 = 0; - let mut x345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x249, x317); - let mut x346: u32 = 0; - let mut x347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x250, x318); - let mut x348: u32 = 0; - let mut x349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x348, &mut x349, x347, x251, x319); - let mut x350: u32 = 0; - let mut x351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x350, &mut x351, x349, x252, x320); - let mut x352: u32 = 0; - let mut x353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x253, x321); - let mut x354: u32 = 0; - let mut x355: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x354, &mut x355, 0x0, x322, 0x583a48f3); - let mut x356: u32 = 0; - let mut x357: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x356, &mut x357, x355, x324, 0x28aa6056); - let mut x358: u32 = 0; - let mut x359: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x358, &mut x359, x357, x326, 0x2d82c685); - let mut x360: u32 = 0; - let mut x361: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x360, &mut x361, x359, x328, 0x2881ff2f); - let mut x362: u32 = 0; - let mut x363: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x362, &mut x363, x361, x330, 0xe6a380e6); - let mut x364: u32 = 0; - let mut x365: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x364, &mut x365, x363, x332, 0xaecda12a); - let mut x366: u32 = 0; - let mut x367: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x366, &mut x367, x365, x334, 0x9bc66842); - let mut x368: u32 = 0; - let mut x369: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x368, &mut x369, x367, x336, 0x7d4d9b00); - let mut x370: u32 = 0; - let mut x371: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x370, &mut x371, x369, x338, 0x70330871); - let mut x372: u32 = 0; - let mut x373: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x372, &mut x373, x371, x340, 0xd6639cca); - let mut x374: u32 = 0; - let mut x375: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x374, &mut x375, x373, x342, 0xb3c9d20e); - let mut x376: u32 = 0; - let mut x377: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x376, &mut x377, x375, x344, 0xcb308db3); - let mut x378: u32 = 0; - let mut x379: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x378, &mut x379, x377, x346, 0x33c9fc07); - let mut x380: u32 = 0; - let mut x381: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x380, &mut x381, x379, x348, 0x3fd4e6ae); - let mut x382: u32 = 0; - let mut x383: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x382, &mut x383, x381, x350, 0xdbe9c48b); - let mut x384: u32 = 0; - let mut x385: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x384, &mut x385, x383, x352, 0xaadd9db8); - let mut x386: u32 = 0; - let mut x387: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u32(&mut x386, &mut x387, x385, (x353 as u32), (0x0 as u32)); - let mut x388: u32 = 0; - let mut x389: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u32(&mut x388, &mut x389, 0x0, x6, (0x1 as u32)); - let x390: u32 = ((x272 >> 1) | ((x274 << 31) & 0xffffffff)); - let x391: u32 = ((x274 >> 1) | ((x276 << 31) & 0xffffffff)); - let x392: u32 = ((x276 >> 1) | ((x278 << 31) & 0xffffffff)); - let x393: u32 = ((x278 >> 1) | ((x280 << 31) & 0xffffffff)); - let x394: u32 = ((x280 >> 1) | ((x282 << 31) & 0xffffffff)); - let x395: u32 = ((x282 >> 1) | ((x284 << 31) & 0xffffffff)); - let x396: u32 = ((x284 >> 1) | ((x286 << 31) & 0xffffffff)); - let x397: u32 = ((x286 >> 1) | ((x288 << 31) & 0xffffffff)); - let x398: u32 = ((x288 >> 1) | ((x290 << 31) & 0xffffffff)); - let x399: u32 = ((x290 >> 1) | ((x292 << 31) & 0xffffffff)); - let x400: u32 = ((x292 >> 1) | ((x294 << 31) & 0xffffffff)); - let x401: u32 = ((x294 >> 1) | ((x296 << 31) & 0xffffffff)); - let x402: u32 = ((x296 >> 1) | ((x298 << 31) & 0xffffffff)); - let x403: u32 = ((x298 >> 1) | ((x300 << 31) & 0xffffffff)); - let x404: u32 = ((x300 >> 1) | ((x302 << 31) & 0xffffffff)); - let x405: u32 = ((x302 >> 1) | ((x304 << 31) & 0xffffffff)); - let x406: u32 = ((x304 & 0x80000000) | (x304 >> 1)); - let mut x407: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x407, x156, x123, x91); - let mut x408: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x408, x156, x125, x93); - let mut x409: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x409, x156, x127, x95); - let mut x410: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x410, x156, x129, x97); - let mut x411: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x411, x156, x131, x99); - let mut x412: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x412, x156, x133, x101); - let mut x413: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x413, x156, x135, x103); - let mut x414: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x414, x156, x137, x105); - let mut x415: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x415, x156, x139, x107); - let mut x416: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x416, x156, x141, x109); - let mut x417: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x417, x156, x143, x111); - let mut x418: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x418, x156, x145, x113); - let mut x419: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x419, x156, x147, x115); - let mut x420: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x420, x156, x149, x117); - let mut x421: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x421, x156, x151, x119); - let mut x422: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x422, x156, x153, x121); - let mut x423: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x423, x387, x354, x322); - let mut x424: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x424, x387, x356, x324); - let mut x425: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x425, x387, x358, x326); - let mut x426: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x426, x387, x360, x328); - let mut x427: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x427, x387, x362, x330); - let mut x428: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x428, x387, x364, x332); - let mut x429: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x429, x387, x366, x334); - let mut x430: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x430, x387, x368, x336); - let mut x431: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x431, x387, x370, x338); - let mut x432: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x432, x387, x372, x340); - let mut x433: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x433, x387, x374, x342); - let mut x434: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x434, x387, x376, x344); - let mut x435: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x435, x387, x378, x346); - let mut x436: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x436, x387, x380, x348); - let mut x437: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x437, x387, x382, x350); - let mut x438: u32 = 0; - fiat_bp512_cmovznz_u32(&mut x438, x387, x384, x352); - *out1 = x388; - out2[0] = x7; - out2[1] = x8; - out2[2] = x9; - out2[3] = x10; - out2[4] = x11; - out2[5] = x12; - out2[6] = x13; - out2[7] = x14; - out2[8] = x15; - out2[9] = x16; - out2[10] = x17; - out2[11] = x18; - out2[12] = x19; - out2[13] = x20; - out2[14] = x21; - out2[15] = x22; - out2[16] = x23; - out3[0] = x390; - out3[1] = x391; - out3[2] = x392; - out3[3] = x393; - out3[4] = x394; - out3[5] = x395; - out3[6] = x396; - out3[7] = x397; - out3[8] = x398; - out3[9] = x399; - out3[10] = x400; - out3[11] = x401; - out3[12] = x402; - out3[13] = x403; - out3[14] = x404; - out3[15] = x405; - out3[16] = x406; - out4[0] = x407; - out4[1] = x408; - out4[2] = x409; - out4[3] = x410; - out4[4] = x411; - out4[5] = x412; - out4[6] = x413; - out4[7] = x414; - out4[8] = x415; - out4[9] = x416; - out4[10] = x417; - out4[11] = x418; - out4[12] = x419; - out4[13] = x420; - out4[14] = x421; - out4[15] = x422; - out5[0] = x423; - out5[1] = x424; - out5[2] = x425; - out5[3] = x426; - out5[4] = x427; - out5[5] = x428; - out5[6] = x429; - out5[7] = x430; - out5[8] = x431; - out5[9] = x432; - out5[10] = x433; - out5[11] = x434; - out5[12] = x435; - out5[13] = x436; - out5[14] = x437; - out5[15] = x438; +pub fn fiat_bp512_divstep( + out1: &mut u32, + out2: &mut [u32; 17], + out3: &mut [u32; 17], + out4: &mut [u32; 16], + out5: &mut [u32; 16], + arg1: u32, + arg2: &[u32; 17], + arg3: &[u32; 17], + arg4: &[u32; 16], + arg5: &[u32; 16], +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); + let x3: fiat_bp512_u1 = + (((x1 >> 31) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u32)) as fiat_bp512_u1)); + let mut x4: u32 = 0; + let mut x5: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); + let mut x6: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x6, x3, arg1, x4); + let mut x7: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); + let mut x17: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); + let mut x18: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); + let mut x19: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); + let mut x20: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x20, x3, (arg2[13]), (arg3[13])); + let mut x21: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x21, x3, (arg2[14]), (arg3[14])); + let mut x22: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x22, x3, (arg2[15]), (arg3[15])); + let mut x23: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x23, x3, (arg2[16]), (arg3[16])); + let mut x24: u32 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x24, &mut x25, 0x0, (0x1 as u32), (!(arg2[0]))); + let mut x26: u32 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[1]))); + let mut x28: u32 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[2]))); + let mut x30: u32 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[3]))); + let mut x32: u32 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[4]))); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[5]))); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[6]))); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[7]))); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[8]))); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[9]))); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[10]))); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x46, &mut x47, x45, (0x0 as u32), (!(arg2[11]))); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x48, &mut x49, x47, (0x0 as u32), (!(arg2[12]))); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x50, &mut x51, x49, (0x0 as u32), (!(arg2[13]))); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), (!(arg2[14]))); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), (!(arg2[15]))); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), (!(arg2[16]))); + let mut x58: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x58, x3, (arg3[0]), x24); + let mut x59: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x59, x3, (arg3[1]), x26); + let mut x60: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x60, x3, (arg3[2]), x28); + let mut x61: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x61, x3, (arg3[3]), x30); + let mut x62: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x62, x3, (arg3[4]), x32); + let mut x63: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x63, x3, (arg3[5]), x34); + let mut x64: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x64, x3, (arg3[6]), x36); + let mut x65: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x65, x3, (arg3[7]), x38); + let mut x66: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x66, x3, (arg3[8]), x40); + let mut x67: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x67, x3, (arg3[9]), x42); + let mut x68: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x68, x3, (arg3[10]), x44); + let mut x69: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x69, x3, (arg3[11]), x46); + let mut x70: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x70, x3, (arg3[12]), x48); + let mut x71: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x71, x3, (arg3[13]), x50); + let mut x72: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x72, x3, (arg3[14]), x52); + let mut x73: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x73, x3, (arg3[15]), x54); + let mut x74: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x74, x3, (arg3[16]), x56); + let mut x75: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x75, x3, (arg4[0]), (arg5[0])); + let mut x76: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x76, x3, (arg4[1]), (arg5[1])); + let mut x77: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x77, x3, (arg4[2]), (arg5[2])); + let mut x78: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x78, x3, (arg4[3]), (arg5[3])); + let mut x79: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x79, x3, (arg4[4]), (arg5[4])); + let mut x80: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x80, x3, (arg4[5]), (arg5[5])); + let mut x81: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x81, x3, (arg4[6]), (arg5[6])); + let mut x82: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x82, x3, (arg4[7]), (arg5[7])); + let mut x83: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x83, x3, (arg4[8]), (arg5[8])); + let mut x84: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x84, x3, (arg4[9]), (arg5[9])); + let mut x85: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x85, x3, (arg4[10]), (arg5[10])); + let mut x86: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x86, x3, (arg4[11]), (arg5[11])); + let mut x87: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x87, x3, (arg4[12]), (arg5[12])); + let mut x88: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x88, x3, (arg4[13]), (arg5[13])); + let mut x89: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x89, x3, (arg4[14]), (arg5[14])); + let mut x90: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x90, x3, (arg4[15]), (arg5[15])); + let mut x91: u32 = 0; + let mut x92: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x91, &mut x92, 0x0, x75, x75); + let mut x93: u32 = 0; + let mut x94: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x93, &mut x94, x92, x76, x76); + let mut x95: u32 = 0; + let mut x96: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x95, &mut x96, x94, x77, x77); + let mut x97: u32 = 0; + let mut x98: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x97, &mut x98, x96, x78, x78); + let mut x99: u32 = 0; + let mut x100: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x99, &mut x100, x98, x79, x79); + let mut x101: u32 = 0; + let mut x102: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x101, &mut x102, x100, x80, x80); + let mut x103: u32 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x103, &mut x104, x102, x81, x81); + let mut x105: u32 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x105, &mut x106, x104, x82, x82); + let mut x107: u32 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x107, &mut x108, x106, x83, x83); + let mut x109: u32 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x109, &mut x110, x108, x84, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x111, &mut x112, x110, x85, x85); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x113, &mut x114, x112, x86, x86); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x115, &mut x116, x114, x87, x87); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x117, &mut x118, x116, x88, x88); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x119, &mut x120, x118, x89, x89); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x121, &mut x122, x120, x90, x90); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x123, &mut x124, 0x0, x91, 0x583a48f3); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x125, &mut x126, x124, x93, 0x28aa6056); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x127, &mut x128, x126, x95, 0x2d82c685); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x129, &mut x130, x128, x97, 0x2881ff2f); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x131, &mut x132, x130, x99, 0xe6a380e6); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x133, &mut x134, x132, x101, 0xaecda12a); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x135, &mut x136, x134, x103, 0x9bc66842); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x137, &mut x138, x136, x105, 0x7d4d9b00); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x139, &mut x140, x138, x107, 0x70330871); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x141, &mut x142, x140, x109, 0xd6639cca); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x143, &mut x144, x142, x111, 0xb3c9d20e); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x145, &mut x146, x144, x113, 0xcb308db3); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x147, &mut x148, x146, x115, 0x33c9fc07); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x149, &mut x150, x148, x117, 0x3fd4e6ae); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x151, &mut x152, x150, x119, 0xdbe9c48b); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x153, &mut x154, x152, x121, 0xaadd9db8); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x155, &mut x156, x154, (x122 as u32), (0x0 as u32)); + let x157: u32 = (arg4[15]); + let x158: u32 = (arg4[14]); + let x159: u32 = (arg4[13]); + let x160: u32 = (arg4[12]); + let x161: u32 = (arg4[11]); + let x162: u32 = (arg4[10]); + let x163: u32 = (arg4[9]); + let x164: u32 = (arg4[8]); + let x165: u32 = (arg4[7]); + let x166: u32 = (arg4[6]); + let x167: u32 = (arg4[5]); + let x168: u32 = (arg4[4]); + let x169: u32 = (arg4[3]); + let x170: u32 = (arg4[2]); + let x171: u32 = (arg4[1]); + let x172: u32 = (arg4[0]); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x173, &mut x174, 0x0, (0x0 as u32), x172); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x175, &mut x176, x174, (0x0 as u32), x171); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x177, &mut x178, x176, (0x0 as u32), x170); + let mut x179: u32 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x179, &mut x180, x178, (0x0 as u32), x169); + let mut x181: u32 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x181, &mut x182, x180, (0x0 as u32), x168); + let mut x183: u32 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x183, &mut x184, x182, (0x0 as u32), x167); + let mut x185: u32 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x185, &mut x186, x184, (0x0 as u32), x166); + let mut x187: u32 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x187, &mut x188, x186, (0x0 as u32), x165); + let mut x189: u32 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x189, &mut x190, x188, (0x0 as u32), x164); + let mut x191: u32 = 0; + let mut x192: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x191, &mut x192, x190, (0x0 as u32), x163); + let mut x193: u32 = 0; + let mut x194: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x193, &mut x194, x192, (0x0 as u32), x162); + let mut x195: u32 = 0; + let mut x196: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x195, &mut x196, x194, (0x0 as u32), x161); + let mut x197: u32 = 0; + let mut x198: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x197, &mut x198, x196, (0x0 as u32), x160); + let mut x199: u32 = 0; + let mut x200: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x199, &mut x200, x198, (0x0 as u32), x159); + let mut x201: u32 = 0; + let mut x202: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x201, &mut x202, x200, (0x0 as u32), x158); + let mut x203: u32 = 0; + let mut x204: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x203, &mut x204, x202, (0x0 as u32), x157); + let mut x205: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x205, x204, (0x0 as u32), 0xffffffff); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x206, &mut x207, 0x0, x173, (x205 & 0x583a48f3)); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x208, &mut x209, x207, x175, (x205 & 0x28aa6056)); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x210, &mut x211, x209, x177, (x205 & 0x2d82c685)); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x212, &mut x213, x211, x179, (x205 & 0x2881ff2f)); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x214, &mut x215, x213, x181, (x205 & 0xe6a380e6)); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x216, &mut x217, x215, x183, (x205 & 0xaecda12a)); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x218, &mut x219, x217, x185, (x205 & 0x9bc66842)); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x220, &mut x221, x219, x187, (x205 & 0x7d4d9b00)); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x222, &mut x223, x221, x189, (x205 & 0x70330871)); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x224, &mut x225, x223, x191, (x205 & 0xd6639cca)); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x226, &mut x227, x225, x193, (x205 & 0xb3c9d20e)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x228, &mut x229, x227, x195, (x205 & 0xcb308db3)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x230, &mut x231, x229, x197, (x205 & 0x33c9fc07)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x232, &mut x233, x231, x199, (x205 & 0x3fd4e6ae)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x234, &mut x235, x233, x201, (x205 & 0xdbe9c48b)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x236, &mut x237, x235, x203, (x205 & 0xaadd9db8)); + let mut x238: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x238, x3, (arg5[0]), x206); + let mut x239: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x239, x3, (arg5[1]), x208); + let mut x240: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x240, x3, (arg5[2]), x210); + let mut x241: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x241, x3, (arg5[3]), x212); + let mut x242: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x242, x3, (arg5[4]), x214); + let mut x243: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x243, x3, (arg5[5]), x216); + let mut x244: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x244, x3, (arg5[6]), x218); + let mut x245: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x245, x3, (arg5[7]), x220); + let mut x246: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x246, x3, (arg5[8]), x222); + let mut x247: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x247, x3, (arg5[9]), x224); + let mut x248: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x248, x3, (arg5[10]), x226); + let mut x249: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x249, x3, (arg5[11]), x228); + let mut x250: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x250, x3, (arg5[12]), x230); + let mut x251: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x251, x3, (arg5[13]), x232); + let mut x252: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x252, x3, (arg5[14]), x234); + let mut x253: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x253, x3, (arg5[15]), x236); + let x254: fiat_bp512_u1 = ((x58 & (0x1 as u32)) as fiat_bp512_u1); + let mut x255: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x255, x254, (0x0 as u32), x7); + let mut x256: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x256, x254, (0x0 as u32), x8); + let mut x257: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x257, x254, (0x0 as u32), x9); + let mut x258: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x258, x254, (0x0 as u32), x10); + let mut x259: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x259, x254, (0x0 as u32), x11); + let mut x260: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x260, x254, (0x0 as u32), x12); + let mut x261: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x261, x254, (0x0 as u32), x13); + let mut x262: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x262, x254, (0x0 as u32), x14); + let mut x263: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x263, x254, (0x0 as u32), x15); + let mut x264: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x264, x254, (0x0 as u32), x16); + let mut x265: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x265, x254, (0x0 as u32), x17); + let mut x266: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x266, x254, (0x0 as u32), x18); + let mut x267: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x267, x254, (0x0 as u32), x19); + let mut x268: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x268, x254, (0x0 as u32), x20); + let mut x269: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x269, x254, (0x0 as u32), x21); + let mut x270: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x270, x254, (0x0 as u32), x22); + let mut x271: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x271, x254, (0x0 as u32), x23); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x272, &mut x273, 0x0, x58, x255); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x274, &mut x275, x273, x59, x256); + let mut x276: u32 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x276, &mut x277, x275, x60, x257); + let mut x278: u32 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x278, &mut x279, x277, x61, x258); + let mut x280: u32 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x280, &mut x281, x279, x62, x259); + let mut x282: u32 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x282, &mut x283, x281, x63, x260); + let mut x284: u32 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x284, &mut x285, x283, x64, x261); + let mut x286: u32 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x286, &mut x287, x285, x65, x262); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x288, &mut x289, x287, x66, x263); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x290, &mut x291, x289, x67, x264); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x292, &mut x293, x291, x68, x265); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x294, &mut x295, x293, x69, x266); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x296, &mut x297, x295, x70, x267); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x298, &mut x299, x297, x71, x268); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x300, &mut x301, x299, x72, x269); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x302, &mut x303, x301, x73, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x304, &mut x305, x303, x74, x271); + let mut x306: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x306, x254, (0x0 as u32), x75); + let mut x307: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x307, x254, (0x0 as u32), x76); + let mut x308: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x308, x254, (0x0 as u32), x77); + let mut x309: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x309, x254, (0x0 as u32), x78); + let mut x310: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x310, x254, (0x0 as u32), x79); + let mut x311: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x311, x254, (0x0 as u32), x80); + let mut x312: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x312, x254, (0x0 as u32), x81); + let mut x313: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x313, x254, (0x0 as u32), x82); + let mut x314: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x314, x254, (0x0 as u32), x83); + let mut x315: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x315, x254, (0x0 as u32), x84); + let mut x316: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x316, x254, (0x0 as u32), x85); + let mut x317: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x317, x254, (0x0 as u32), x86); + let mut x318: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x318, x254, (0x0 as u32), x87); + let mut x319: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x319, x254, (0x0 as u32), x88); + let mut x320: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x320, x254, (0x0 as u32), x89); + let mut x321: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x321, x254, (0x0 as u32), x90); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x322, &mut x323, 0x0, x238, x306); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x324, &mut x325, x323, x239, x307); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x326, &mut x327, x325, x240, x308); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x328, &mut x329, x327, x241, x309); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x330, &mut x331, x329, x242, x310); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x332, &mut x333, x331, x243, x311); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x334, &mut x335, x333, x244, x312); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x336, &mut x337, x335, x245, x313); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x338, &mut x339, x337, x246, x314); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x340, &mut x341, x339, x247, x315); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x342, &mut x343, x341, x248, x316); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x344, &mut x345, x343, x249, x317); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x346, &mut x347, x345, x250, x318); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x348, &mut x349, x347, x251, x319); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x350, &mut x351, x349, x252, x320); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x352, &mut x353, x351, x253, x321); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x354, &mut x355, 0x0, x322, 0x583a48f3); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x356, &mut x357, x355, x324, 0x28aa6056); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x358, &mut x359, x357, x326, 0x2d82c685); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x360, &mut x361, x359, x328, 0x2881ff2f); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x362, &mut x363, x361, x330, 0xe6a380e6); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x364, &mut x365, x363, x332, 0xaecda12a); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x366, &mut x367, x365, x334, 0x9bc66842); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x368, &mut x369, x367, x336, 0x7d4d9b00); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x370, &mut x371, x369, x338, 0x70330871); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x372, &mut x373, x371, x340, 0xd6639cca); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x374, &mut x375, x373, x342, 0xb3c9d20e); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x376, &mut x377, x375, x344, 0xcb308db3); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x378, &mut x379, x377, x346, 0x33c9fc07); + let mut x380: u32 = 0; + let mut x381: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x380, &mut x381, x379, x348, 0x3fd4e6ae); + let mut x382: u32 = 0; + let mut x383: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x382, &mut x383, x381, x350, 0xdbe9c48b); + let mut x384: u32 = 0; + let mut x385: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x384, &mut x385, x383, x352, 0xaadd9db8); + let mut x386: u32 = 0; + let mut x387: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u32(&mut x386, &mut x387, x385, (x353 as u32), (0x0 as u32)); + let mut x388: u32 = 0; + let mut x389: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u32(&mut x388, &mut x389, 0x0, x6, (0x1 as u32)); + let x390: u32 = ((x272 >> 1) | ((x274 << 31) & 0xffffffff)); + let x391: u32 = ((x274 >> 1) | ((x276 << 31) & 0xffffffff)); + let x392: u32 = ((x276 >> 1) | ((x278 << 31) & 0xffffffff)); + let x393: u32 = ((x278 >> 1) | ((x280 << 31) & 0xffffffff)); + let x394: u32 = ((x280 >> 1) | ((x282 << 31) & 0xffffffff)); + let x395: u32 = ((x282 >> 1) | ((x284 << 31) & 0xffffffff)); + let x396: u32 = ((x284 >> 1) | ((x286 << 31) & 0xffffffff)); + let x397: u32 = ((x286 >> 1) | ((x288 << 31) & 0xffffffff)); + let x398: u32 = ((x288 >> 1) | ((x290 << 31) & 0xffffffff)); + let x399: u32 = ((x290 >> 1) | ((x292 << 31) & 0xffffffff)); + let x400: u32 = ((x292 >> 1) | ((x294 << 31) & 0xffffffff)); + let x401: u32 = ((x294 >> 1) | ((x296 << 31) & 0xffffffff)); + let x402: u32 = ((x296 >> 1) | ((x298 << 31) & 0xffffffff)); + let x403: u32 = ((x298 >> 1) | ((x300 << 31) & 0xffffffff)); + let x404: u32 = ((x300 >> 1) | ((x302 << 31) & 0xffffffff)); + let x405: u32 = ((x302 >> 1) | ((x304 << 31) & 0xffffffff)); + let x406: u32 = ((x304 & 0x80000000) | (x304 >> 1)); + let mut x407: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x407, x156, x123, x91); + let mut x408: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x408, x156, x125, x93); + let mut x409: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x409, x156, x127, x95); + let mut x410: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x410, x156, x129, x97); + let mut x411: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x411, x156, x131, x99); + let mut x412: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x412, x156, x133, x101); + let mut x413: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x413, x156, x135, x103); + let mut x414: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x414, x156, x137, x105); + let mut x415: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x415, x156, x139, x107); + let mut x416: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x416, x156, x141, x109); + let mut x417: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x417, x156, x143, x111); + let mut x418: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x418, x156, x145, x113); + let mut x419: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x419, x156, x147, x115); + let mut x420: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x420, x156, x149, x117); + let mut x421: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x421, x156, x151, x119); + let mut x422: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x422, x156, x153, x121); + let mut x423: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x423, x387, x354, x322); + let mut x424: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x424, x387, x356, x324); + let mut x425: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x425, x387, x358, x326); + let mut x426: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x426, x387, x360, x328); + let mut x427: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x427, x387, x362, x330); + let mut x428: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x428, x387, x364, x332); + let mut x429: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x429, x387, x366, x334); + let mut x430: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x430, x387, x368, x336); + let mut x431: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x431, x387, x370, x338); + let mut x432: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x432, x387, x372, x340); + let mut x433: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x433, x387, x374, x342); + let mut x434: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x434, x387, x376, x344); + let mut x435: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x435, x387, x378, x346); + let mut x436: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x436, x387, x380, x348); + let mut x437: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x437, x387, x382, x350); + let mut x438: u32 = 0; + fiat_bp512_cmovznz_u32(&mut x438, x387, x384, x352); + *out1 = x388; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out2[9] = x16; + out2[10] = x17; + out2[11] = x18; + out2[12] = x19; + out2[13] = x20; + out2[14] = x21; + out2[15] = x22; + out2[16] = x23; + out3[0] = x390; + out3[1] = x391; + out3[2] = x392; + out3[3] = x393; + out3[4] = x394; + out3[5] = x395; + out3[6] = x396; + out3[7] = x397; + out3[8] = x398; + out3[9] = x399; + out3[10] = x400; + out3[11] = x401; + out3[12] = x402; + out3[13] = x403; + out3[14] = x404; + out3[15] = x405; + out3[16] = x406; + out4[0] = x407; + out4[1] = x408; + out4[2] = x409; + out4[3] = x410; + out4[4] = x411; + out4[5] = x412; + out4[6] = x413; + out4[7] = x414; + out4[8] = x415; + out4[9] = x416; + out4[10] = x417; + out4[11] = x418; + out4[12] = x419; + out4[13] = x420; + out4[14] = x421; + out4[15] = x422; + out5[0] = x423; + out5[1] = x424; + out5[2] = x425; + out5[3] = x426; + out5[4] = x427; + out5[5] = x428; + out5[6] = x429; + out5[7] = x430; + out5[8] = x431; + out5[9] = x432; + out5[10] = x433; + out5[11] = x434; + out5[12] = x435; + out5[13] = x436; + out5[14] = x437; + out5[15] = x438; } /// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). @@ -19143,20 +19392,20 @@ pub fn fiat_bp512_divstep(out1: &mut u32, out2: &mut [u32; 17], out3: &mut [u32; /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] pub fn fiat_bp512_divstep_precomp(out1: &mut [u32; 16]) { - out1[0] = 0x8878ef1d; - out1[1] = 0x6bba0f9e; - out1[2] = 0xfe513a69; - out1[3] = 0xdaeb7446; - out1[4] = 0xa502204b; - out1[5] = 0x425e2db1; - out1[6] = 0xde354e9d; - out1[7] = 0x6c6090ef; - out1[8] = 0xb5431792; - out1[9] = 0x80ba3167; - out1[10] = 0x35149425; - out1[11] = 0x2f0dc076; - out1[12] = 0x9f34d8fd; - out1[13] = 0xc024c54; - out1[14] = 0x19ba97f7; - out1[15] = 0x2d82c4ad; + out1[0] = 0x8878ef1d; + out1[1] = 0x6bba0f9e; + out1[2] = 0xfe513a69; + out1[3] = 0xdaeb7446; + out1[4] = 0xa502204b; + out1[5] = 0x425e2db1; + out1[6] = 0xde354e9d; + out1[7] = 0x6c6090ef; + out1[8] = 0xb5431792; + out1[9] = 0x80ba3167; + out1[10] = 0x35149425; + out1[11] = 0x2f0dc076; + out1[12] = 0x9f34d8fd; + out1[13] = 0xc024c54; + out1[14] = 0x19ba97f7; + out1[15] = 0x2d82c4ad; } diff --git a/bp512/src/arithmetic/field/bp512_64.rs b/bp512/src/arithmetic/field/bp512_64.rs index 47a1cb0e3..fa4bd059a 100644 --- a/bp512/src/arithmetic/field/bp512_64.rs +++ b/bp512/src/arithmetic/field/bp512_64.rs @@ -69,7 +69,6 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme } } - /// The function fiat_bp512_addcarryx_u64 is an addition with carry. /// /// Postconditions: @@ -84,12 +83,18 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_addcarryx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { - let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); - let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); - let x3: fiat_bp512_u1 = ((x1 >> 64) as fiat_bp512_u1); - *out1 = x2; - *out2 = x3; +pub fn fiat_bp512_addcarryx_u64( + out1: &mut u64, + out2: &mut fiat_bp512_u1, + arg1: fiat_bp512_u1, + arg2: u64, + arg3: u64, +) { + let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: fiat_bp512_u1 = ((x1 >> 64) as fiat_bp512_u1); + *out1 = x2; + *out2 = x3; } /// The function fiat_bp512_subborrowx_u64 is a subtraction with borrow. @@ -106,12 +111,18 @@ pub fn fiat_bp512_addcarryx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_subborrowx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { - let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); - let x2: fiat_bp512_i1 = ((x1 >> 64) as fiat_bp512_i1); - let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); - *out1 = x3; - *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); +pub fn fiat_bp512_subborrowx_u64( + out1: &mut u64, + out2: &mut fiat_bp512_u1, + arg1: fiat_bp512_u1, + arg2: u64, + arg3: u64, +) { + let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); + let x2: fiat_bp512_i1 = ((x1 >> 64) as fiat_bp512_i1); + let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); + *out1 = x3; + *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); } /// The function fiat_bp512_mulx_u64 is a multiplication, returning the full double-width result. @@ -128,11 +139,11 @@ pub fn fiat_bp512_subborrowx_u64(out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: /// out2: [0x0 ~> 0xffffffffffffffff] #[inline] pub fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { - let x1: u128 = ((arg1 as u128) * (arg2 as u128)); - let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); - let x3: u64 = ((x1 >> 64) as u64); - *out1 = x2; - *out2 = x3; + let x1: u128 = ((arg1 as u128) * (arg2 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: u64 = ((x1 >> 64) as u64); + *out1 = x2; + *out2 = x3; } /// The function fiat_bp512_cmovznz_u64 is a single-word conditional move. @@ -148,10 +159,11 @@ pub fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] pub fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { - let x1: fiat_bp512_u1 = (!(!arg1)); - let x2: u64 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i128) & (0xffffffffffffffff as i128)) as u64); - let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); - *out1 = x3; + let x1: fiat_bp512_u1 = (!(!arg1)); + let x2: u64 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i128) + & (0xffffffffffffffff as i128)) as u64); + let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; } /// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. @@ -164,1238 +176,1242 @@ pub fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, ar /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let x1: u64 = (arg1[1]); - let x2: u64 = (arg1[2]); - let x3: u64 = (arg1[3]); - let x4: u64 = (arg1[4]); - let x5: u64 = (arg1[5]); - let x6: u64 = (arg1[6]); - let x7: u64 = (arg1[7]); - let x8: u64 = (arg1[0]); - let mut x9: u64 = 0; - let mut x10: u64 = 0; - fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg2[7])); - let mut x11: u64 = 0; - let mut x12: u64 = 0; - fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg2[6])); - let mut x13: u64 = 0; - let mut x14: u64 = 0; - fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg2[5])); - let mut x15: u64 = 0; - let mut x16: u64 = 0; - fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg2[4])); - let mut x17: u64 = 0; - let mut x18: u64 = 0; - fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg2[3])); - let mut x19: u64 = 0; - let mut x20: u64 = 0; - fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg2[2])); - let mut x21: u64 = 0; - let mut x22: u64 = 0; - fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg2[1])); - let mut x23: u64 = 0; - let mut x24: u64 = 0; - fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg2[0])); - let mut x25: u64 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); - let mut x27: u64 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); - let mut x29: u64 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); - let mut x31: u64 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); - let mut x33: u64 = 0; - let mut x34: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); - let mut x35: u64 = 0; - let mut x36: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); - let mut x37: u64 = 0; - let mut x38: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); - let x39: u64 = ((x38 as u64) + x10); - let mut x40: u64 = 0; - let mut x41: u64 = 0; - fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); - let mut x42: u64 = 0; - let mut x43: u64 = 0; - fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); - let mut x44: u64 = 0; - let mut x45: u64 = 0; - fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); - let mut x46: u64 = 0; - let mut x47: u64 = 0; - fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); - let mut x48: u64 = 0; - let mut x49: u64 = 0; - fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); - let mut x50: u64 = 0; - let mut x51: u64 = 0; - fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); - let mut x52: u64 = 0; - let mut x53: u64 = 0; - fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); - let mut x54: u64 = 0; - let mut x55: u64 = 0; - fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); - let mut x56: u64 = 0; - let mut x57: u64 = 0; - fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); - let mut x58: u64 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); - let mut x60: u64 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); - let mut x62: u64 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); - let mut x64: u64 = 0; - let mut x65: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); - let mut x66: u64 = 0; - let mut x67: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); - let mut x68: u64 = 0; - let mut x69: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); - let mut x70: u64 = 0; - let mut x71: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); - let x72: u64 = ((x71 as u64) + x43); - let mut x73: u64 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); - let mut x75: u64 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); - let mut x77: u64 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); - let mut x79: u64 = 0; - let mut x80: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); - let mut x81: u64 = 0; - let mut x82: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); - let mut x83: u64 = 0; - let mut x84: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); - let mut x85: u64 = 0; - let mut x86: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); - let mut x87: u64 = 0; - let mut x88: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); - let mut x89: u64 = 0; - let mut x90: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); - let mut x91: u64 = 0; - let mut x92: u64 = 0; - fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg2[7])); - let mut x93: u64 = 0; - let mut x94: u64 = 0; - fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg2[6])); - let mut x95: u64 = 0; - let mut x96: u64 = 0; - fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg2[5])); - let mut x97: u64 = 0; - let mut x98: u64 = 0; - fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg2[4])); - let mut x99: u64 = 0; - let mut x100: u64 = 0; - fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg2[3])); - let mut x101: u64 = 0; - let mut x102: u64 = 0; - fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg2[2])); - let mut x103: u64 = 0; - let mut x104: u64 = 0; - fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg2[1])); - let mut x105: u64 = 0; - let mut x106: u64 = 0; - fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg2[0])); - let mut x107: u64 = 0; - let mut x108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); - let mut x109: u64 = 0; - let mut x110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); - let mut x111: u64 = 0; - let mut x112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); - let mut x113: u64 = 0; - let mut x114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); - let mut x115: u64 = 0; - let mut x116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); - let mut x117: u64 = 0; - let mut x118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); - let mut x119: u64 = 0; - let mut x120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); - let x121: u64 = ((x120 as u64) + x92); - let mut x122: u64 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); - let mut x124: u64 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); - let mut x126: u64 = 0; - let mut x127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); - let mut x128: u64 = 0; - let mut x129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); - let mut x130: u64 = 0; - let mut x131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); - let mut x132: u64 = 0; - let mut x133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); - let mut x134: u64 = 0; - let mut x135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); - let mut x136: u64 = 0; - let mut x137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); - let mut x138: u64 = 0; - let mut x139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); - let mut x140: u64 = 0; - let mut x141: u64 = 0; - fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); - let mut x142: u64 = 0; - let mut x143: u64 = 0; - fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); - let mut x144: u64 = 0; - let mut x145: u64 = 0; - fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); - let mut x146: u64 = 0; - let mut x147: u64 = 0; - fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); - let mut x148: u64 = 0; - let mut x149: u64 = 0; - fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); - let mut x150: u64 = 0; - let mut x151: u64 = 0; - fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); - let mut x152: u64 = 0; - let mut x153: u64 = 0; - fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); - let mut x154: u64 = 0; - let mut x155: u64 = 0; - fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); - let mut x156: u64 = 0; - let mut x157: u64 = 0; - fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); - let mut x158: u64 = 0; - let mut x159: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); - let mut x160: u64 = 0; - let mut x161: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); - let mut x162: u64 = 0; - let mut x163: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); - let mut x164: u64 = 0; - let mut x165: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); - let mut x166: u64 = 0; - let mut x167: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); - let mut x168: u64 = 0; - let mut x169: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); - let mut x170: u64 = 0; - let mut x171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); - let x172: u64 = ((x171 as u64) + x143); - let mut x173: u64 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); - let mut x175: u64 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); - let mut x177: u64 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); - let mut x179: u64 = 0; - let mut x180: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); - let mut x181: u64 = 0; - let mut x182: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); - let mut x183: u64 = 0; - let mut x184: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); - let mut x185: u64 = 0; - let mut x186: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); - let mut x187: u64 = 0; - let mut x188: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); - let mut x189: u64 = 0; - let mut x190: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); - let x191: u64 = ((x190 as u64) + (x139 as u64)); - let mut x192: u64 = 0; - let mut x193: u64 = 0; - fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg2[7])); - let mut x194: u64 = 0; - let mut x195: u64 = 0; - fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg2[6])); - let mut x196: u64 = 0; - let mut x197: u64 = 0; - fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg2[5])); - let mut x198: u64 = 0; - let mut x199: u64 = 0; - fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg2[4])); - let mut x200: u64 = 0; - let mut x201: u64 = 0; - fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg2[3])); - let mut x202: u64 = 0; - let mut x203: u64 = 0; - fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg2[2])); - let mut x204: u64 = 0; - let mut x205: u64 = 0; - fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg2[1])); - let mut x206: u64 = 0; - let mut x207: u64 = 0; - fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg2[0])); - let mut x208: u64 = 0; - let mut x209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); - let mut x210: u64 = 0; - let mut x211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); - let mut x212: u64 = 0; - let mut x213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); - let mut x214: u64 = 0; - let mut x215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); - let mut x216: u64 = 0; - let mut x217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); - let mut x218: u64 = 0; - let mut x219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); - let mut x220: u64 = 0; - let mut x221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); - let x222: u64 = ((x221 as u64) + x193); - let mut x223: u64 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); - let mut x225: u64 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); - let mut x227: u64 = 0; - let mut x228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); - let mut x229: u64 = 0; - let mut x230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); - let mut x231: u64 = 0; - let mut x232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); - let mut x233: u64 = 0; - let mut x234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); - let mut x235: u64 = 0; - let mut x236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); - let mut x237: u64 = 0; - let mut x238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); - let mut x239: u64 = 0; - let mut x240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); - let mut x241: u64 = 0; - let mut x242: u64 = 0; - fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); - let mut x243: u64 = 0; - let mut x244: u64 = 0; - fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); - let mut x245: u64 = 0; - let mut x246: u64 = 0; - fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); - let mut x247: u64 = 0; - let mut x248: u64 = 0; - fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); - let mut x249: u64 = 0; - let mut x250: u64 = 0; - fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); - let mut x251: u64 = 0; - let mut x252: u64 = 0; - fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); - let mut x253: u64 = 0; - let mut x254: u64 = 0; - fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); - let mut x255: u64 = 0; - let mut x256: u64 = 0; - fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); - let mut x257: u64 = 0; - let mut x258: u64 = 0; - fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); - let mut x259: u64 = 0; - let mut x260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); - let mut x261: u64 = 0; - let mut x262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); - let mut x263: u64 = 0; - let mut x264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); - let mut x265: u64 = 0; - let mut x266: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); - let mut x267: u64 = 0; - let mut x268: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); - let mut x269: u64 = 0; - let mut x270: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); - let mut x271: u64 = 0; - let mut x272: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); - let x273: u64 = ((x272 as u64) + x244); - let mut x274: u64 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); - let mut x276: u64 = 0; - let mut x277: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); - let mut x278: u64 = 0; - let mut x279: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); - let mut x280: u64 = 0; - let mut x281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); - let mut x282: u64 = 0; - let mut x283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); - let mut x284: u64 = 0; - let mut x285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); - let mut x286: u64 = 0; - let mut x287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); - let mut x288: u64 = 0; - let mut x289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); - let mut x290: u64 = 0; - let mut x291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); - let x292: u64 = ((x291 as u64) + (x240 as u64)); - let mut x293: u64 = 0; - let mut x294: u64 = 0; - fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg2[7])); - let mut x295: u64 = 0; - let mut x296: u64 = 0; - fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg2[6])); - let mut x297: u64 = 0; - let mut x298: u64 = 0; - fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg2[5])); - let mut x299: u64 = 0; - let mut x300: u64 = 0; - fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg2[4])); - let mut x301: u64 = 0; - let mut x302: u64 = 0; - fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg2[3])); - let mut x303: u64 = 0; - let mut x304: u64 = 0; - fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg2[2])); - let mut x305: u64 = 0; - let mut x306: u64 = 0; - fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg2[1])); - let mut x307: u64 = 0; - let mut x308: u64 = 0; - fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg2[0])); - let mut x309: u64 = 0; - let mut x310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); - let mut x311: u64 = 0; - let mut x312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); - let mut x313: u64 = 0; - let mut x314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); - let mut x315: u64 = 0; - let mut x316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); - let mut x317: u64 = 0; - let mut x318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); - let mut x319: u64 = 0; - let mut x320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); - let mut x321: u64 = 0; - let mut x322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); - let x323: u64 = ((x322 as u64) + x294); - let mut x324: u64 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); - let mut x326: u64 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); - let mut x328: u64 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); - let mut x330: u64 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); - let mut x332: u64 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); - let mut x334: u64 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); - let mut x336: u64 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); - let mut x338: u64 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); - let mut x340: u64 = 0; - let mut x341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); - let mut x342: u64 = 0; - let mut x343: u64 = 0; - fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); - let mut x344: u64 = 0; - let mut x345: u64 = 0; - fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); - let mut x346: u64 = 0; - let mut x347: u64 = 0; - fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); - let mut x348: u64 = 0; - let mut x349: u64 = 0; - fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); - let mut x350: u64 = 0; - let mut x351: u64 = 0; - fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); - let mut x352: u64 = 0; - let mut x353: u64 = 0; - fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); - let mut x354: u64 = 0; - let mut x355: u64 = 0; - fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); - let mut x356: u64 = 0; - let mut x357: u64 = 0; - fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); - let mut x358: u64 = 0; - let mut x359: u64 = 0; - fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); - let mut x360: u64 = 0; - let mut x361: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); - let mut x362: u64 = 0; - let mut x363: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); - let mut x364: u64 = 0; - let mut x365: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); - let mut x366: u64 = 0; - let mut x367: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); - let mut x368: u64 = 0; - let mut x369: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); - let mut x370: u64 = 0; - let mut x371: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); - let mut x372: u64 = 0; - let mut x373: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); - let x374: u64 = ((x373 as u64) + x345); - let mut x375: u64 = 0; - let mut x376: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); - let mut x377: u64 = 0; - let mut x378: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); - let mut x379: u64 = 0; - let mut x380: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); - let mut x381: u64 = 0; - let mut x382: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); - let mut x383: u64 = 0; - let mut x384: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); - let mut x385: u64 = 0; - let mut x386: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); - let mut x387: u64 = 0; - let mut x388: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); - let mut x389: u64 = 0; - let mut x390: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); - let mut x391: u64 = 0; - let mut x392: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); - let x393: u64 = ((x392 as u64) + (x341 as u64)); - let mut x394: u64 = 0; - let mut x395: u64 = 0; - fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg2[7])); - let mut x396: u64 = 0; - let mut x397: u64 = 0; - fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg2[6])); - let mut x398: u64 = 0; - let mut x399: u64 = 0; - fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg2[5])); - let mut x400: u64 = 0; - let mut x401: u64 = 0; - fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg2[4])); - let mut x402: u64 = 0; - let mut x403: u64 = 0; - fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg2[3])); - let mut x404: u64 = 0; - let mut x405: u64 = 0; - fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg2[2])); - let mut x406: u64 = 0; - let mut x407: u64 = 0; - fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg2[1])); - let mut x408: u64 = 0; - let mut x409: u64 = 0; - fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg2[0])); - let mut x410: u64 = 0; - let mut x411: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); - let mut x412: u64 = 0; - let mut x413: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); - let mut x414: u64 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); - let mut x416: u64 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); - let mut x418: u64 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); - let mut x420: u64 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); - let mut x422: u64 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); - let x424: u64 = ((x423 as u64) + x395); - let mut x425: u64 = 0; - let mut x426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); - let mut x427: u64 = 0; - let mut x428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); - let mut x429: u64 = 0; - let mut x430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); - let mut x431: u64 = 0; - let mut x432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); - let mut x433: u64 = 0; - let mut x434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); - let mut x435: u64 = 0; - let mut x436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); - let mut x437: u64 = 0; - let mut x438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); - let mut x439: u64 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); - let mut x441: u64 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); - let mut x443: u64 = 0; - let mut x444: u64 = 0; - fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); - let mut x445: u64 = 0; - let mut x446: u64 = 0; - fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); - let mut x447: u64 = 0; - let mut x448: u64 = 0; - fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); - let mut x449: u64 = 0; - let mut x450: u64 = 0; - fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); - let mut x451: u64 = 0; - let mut x452: u64 = 0; - fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); - let mut x453: u64 = 0; - let mut x454: u64 = 0; - fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); - let mut x455: u64 = 0; - let mut x456: u64 = 0; - fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); - let mut x457: u64 = 0; - let mut x458: u64 = 0; - fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); - let mut x459: u64 = 0; - let mut x460: u64 = 0; - fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); - let mut x461: u64 = 0; - let mut x462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); - let mut x463: u64 = 0; - let mut x464: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); - let mut x465: u64 = 0; - let mut x466: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); - let mut x467: u64 = 0; - let mut x468: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); - let mut x469: u64 = 0; - let mut x470: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); - let mut x471: u64 = 0; - let mut x472: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); - let mut x473: u64 = 0; - let mut x474: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); - let x475: u64 = ((x474 as u64) + x446); - let mut x476: u64 = 0; - let mut x477: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); - let mut x478: u64 = 0; - let mut x479: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); - let mut x480: u64 = 0; - let mut x481: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); - let mut x482: u64 = 0; - let mut x483: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); - let mut x484: u64 = 0; - let mut x485: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); - let mut x486: u64 = 0; - let mut x487: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); - let mut x488: u64 = 0; - let mut x489: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); - let mut x490: u64 = 0; - let mut x491: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); - let mut x492: u64 = 0; - let mut x493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); - let x494: u64 = ((x493 as u64) + (x442 as u64)); - let mut x495: u64 = 0; - let mut x496: u64 = 0; - fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg2[7])); - let mut x497: u64 = 0; - let mut x498: u64 = 0; - fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg2[6])); - let mut x499: u64 = 0; - let mut x500: u64 = 0; - fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg2[5])); - let mut x501: u64 = 0; - let mut x502: u64 = 0; - fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg2[4])); - let mut x503: u64 = 0; - let mut x504: u64 = 0; - fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg2[3])); - let mut x505: u64 = 0; - let mut x506: u64 = 0; - fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg2[2])); - let mut x507: u64 = 0; - let mut x508: u64 = 0; - fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg2[1])); - let mut x509: u64 = 0; - let mut x510: u64 = 0; - fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg2[0])); - let mut x511: u64 = 0; - let mut x512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); - let mut x513: u64 = 0; - let mut x514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); - let mut x515: u64 = 0; - let mut x516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); - let mut x517: u64 = 0; - let mut x518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); - let mut x519: u64 = 0; - let mut x520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); - let mut x521: u64 = 0; - let mut x522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); - let mut x523: u64 = 0; - let mut x524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); - let x525: u64 = ((x524 as u64) + x496); - let mut x526: u64 = 0; - let mut x527: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); - let mut x528: u64 = 0; - let mut x529: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); - let mut x530: u64 = 0; - let mut x531: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); - let mut x532: u64 = 0; - let mut x533: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); - let mut x534: u64 = 0; - let mut x535: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); - let mut x536: u64 = 0; - let mut x537: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); - let mut x538: u64 = 0; - let mut x539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); - let mut x540: u64 = 0; - let mut x541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); - let mut x542: u64 = 0; - let mut x543: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); - let mut x544: u64 = 0; - let mut x545: u64 = 0; - fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); - let mut x546: u64 = 0; - let mut x547: u64 = 0; - fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); - let mut x548: u64 = 0; - let mut x549: u64 = 0; - fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); - let mut x550: u64 = 0; - let mut x551: u64 = 0; - fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); - let mut x552: u64 = 0; - let mut x553: u64 = 0; - fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); - let mut x554: u64 = 0; - let mut x555: u64 = 0; - fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); - let mut x556: u64 = 0; - let mut x557: u64 = 0; - fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); - let mut x558: u64 = 0; - let mut x559: u64 = 0; - fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); - let mut x560: u64 = 0; - let mut x561: u64 = 0; - fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); - let mut x562: u64 = 0; - let mut x563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); - let mut x564: u64 = 0; - let mut x565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); - let mut x566: u64 = 0; - let mut x567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); - let mut x568: u64 = 0; - let mut x569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); - let mut x570: u64 = 0; - let mut x571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); - let mut x572: u64 = 0; - let mut x573: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); - let mut x574: u64 = 0; - let mut x575: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); - let x576: u64 = ((x575 as u64) + x547); - let mut x577: u64 = 0; - let mut x578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); - let mut x579: u64 = 0; - let mut x580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); - let mut x581: u64 = 0; - let mut x582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); - let mut x583: u64 = 0; - let mut x584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); - let mut x585: u64 = 0; - let mut x586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); - let mut x587: u64 = 0; - let mut x588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); - let mut x589: u64 = 0; - let mut x590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); - let mut x591: u64 = 0; - let mut x592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); - let mut x593: u64 = 0; - let mut x594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); - let x595: u64 = ((x594 as u64) + (x543 as u64)); - let mut x596: u64 = 0; - let mut x597: u64 = 0; - fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg2[7])); - let mut x598: u64 = 0; - let mut x599: u64 = 0; - fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg2[6])); - let mut x600: u64 = 0; - let mut x601: u64 = 0; - fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg2[5])); - let mut x602: u64 = 0; - let mut x603: u64 = 0; - fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg2[4])); - let mut x604: u64 = 0; - let mut x605: u64 = 0; - fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg2[3])); - let mut x606: u64 = 0; - let mut x607: u64 = 0; - fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg2[2])); - let mut x608: u64 = 0; - let mut x609: u64 = 0; - fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg2[1])); - let mut x610: u64 = 0; - let mut x611: u64 = 0; - fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg2[0])); - let mut x612: u64 = 0; - let mut x613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); - let mut x614: u64 = 0; - let mut x615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); - let mut x616: u64 = 0; - let mut x617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); - let mut x618: u64 = 0; - let mut x619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); - let mut x620: u64 = 0; - let mut x621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); - let mut x622: u64 = 0; - let mut x623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); - let mut x624: u64 = 0; - let mut x625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); - let x626: u64 = ((x625 as u64) + x597); - let mut x627: u64 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); - let mut x629: u64 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); - let mut x631: u64 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); - let mut x633: u64 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); - let mut x635: u64 = 0; - let mut x636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); - let mut x637: u64 = 0; - let mut x638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); - let mut x639: u64 = 0; - let mut x640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); - let mut x641: u64 = 0; - let mut x642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); - let mut x643: u64 = 0; - let mut x644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); - let mut x645: u64 = 0; - let mut x646: u64 = 0; - fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); - let mut x647: u64 = 0; - let mut x648: u64 = 0; - fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); - let mut x649: u64 = 0; - let mut x650: u64 = 0; - fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); - let mut x651: u64 = 0; - let mut x652: u64 = 0; - fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); - let mut x653: u64 = 0; - let mut x654: u64 = 0; - fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); - let mut x655: u64 = 0; - let mut x656: u64 = 0; - fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); - let mut x657: u64 = 0; - let mut x658: u64 = 0; - fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); - let mut x659: u64 = 0; - let mut x660: u64 = 0; - fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); - let mut x661: u64 = 0; - let mut x662: u64 = 0; - fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); - let mut x663: u64 = 0; - let mut x664: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); - let mut x665: u64 = 0; - let mut x666: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); - let mut x667: u64 = 0; - let mut x668: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); - let mut x669: u64 = 0; - let mut x670: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); - let mut x671: u64 = 0; - let mut x672: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); - let mut x673: u64 = 0; - let mut x674: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); - let mut x675: u64 = 0; - let mut x676: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); - let x677: u64 = ((x676 as u64) + x648); - let mut x678: u64 = 0; - let mut x679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); - let mut x680: u64 = 0; - let mut x681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); - let mut x682: u64 = 0; - let mut x683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); - let mut x684: u64 = 0; - let mut x685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); - let mut x686: u64 = 0; - let mut x687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); - let mut x688: u64 = 0; - let mut x689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); - let mut x690: u64 = 0; - let mut x691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); - let mut x692: u64 = 0; - let mut x693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); - let mut x694: u64 = 0; - let mut x695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); - let x696: u64 = ((x695 as u64) + (x644 as u64)); - let mut x697: u64 = 0; - let mut x698: u64 = 0; - fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg2[7])); - let mut x699: u64 = 0; - let mut x700: u64 = 0; - fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg2[6])); - let mut x701: u64 = 0; - let mut x702: u64 = 0; - fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg2[5])); - let mut x703: u64 = 0; - let mut x704: u64 = 0; - fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg2[4])); - let mut x705: u64 = 0; - let mut x706: u64 = 0; - fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg2[3])); - let mut x707: u64 = 0; - let mut x708: u64 = 0; - fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg2[2])); - let mut x709: u64 = 0; - let mut x710: u64 = 0; - fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg2[1])); - let mut x711: u64 = 0; - let mut x712: u64 = 0; - fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg2[0])); - let mut x713: u64 = 0; - let mut x714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); - let mut x715: u64 = 0; - let mut x716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); - let mut x717: u64 = 0; - let mut x718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); - let mut x719: u64 = 0; - let mut x720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); - let mut x721: u64 = 0; - let mut x722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); - let mut x723: u64 = 0; - let mut x724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); - let mut x725: u64 = 0; - let mut x726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); - let x727: u64 = ((x726 as u64) + x698); - let mut x728: u64 = 0; - let mut x729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); - let mut x730: u64 = 0; - let mut x731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); - let mut x732: u64 = 0; - let mut x733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); - let mut x734: u64 = 0; - let mut x735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); - let mut x736: u64 = 0; - let mut x737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); - let mut x738: u64 = 0; - let mut x739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); - let mut x740: u64 = 0; - let mut x741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); - let mut x742: u64 = 0; - let mut x743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); - let mut x744: u64 = 0; - let mut x745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); - let mut x746: u64 = 0; - let mut x747: u64 = 0; - fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); - let mut x748: u64 = 0; - let mut x749: u64 = 0; - fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); - let mut x750: u64 = 0; - let mut x751: u64 = 0; - fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); - let mut x752: u64 = 0; - let mut x753: u64 = 0; - fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); - let mut x754: u64 = 0; - let mut x755: u64 = 0; - fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); - let mut x756: u64 = 0; - let mut x757: u64 = 0; - fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); - let mut x758: u64 = 0; - let mut x759: u64 = 0; - fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); - let mut x760: u64 = 0; - let mut x761: u64 = 0; - fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); - let mut x762: u64 = 0; - let mut x763: u64 = 0; - fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); - let mut x764: u64 = 0; - let mut x765: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); - let mut x766: u64 = 0; - let mut x767: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); - let mut x768: u64 = 0; - let mut x769: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); - let mut x770: u64 = 0; - let mut x771: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); - let mut x772: u64 = 0; - let mut x773: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); - let mut x774: u64 = 0; - let mut x775: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); - let mut x776: u64 = 0; - let mut x777: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); - let x778: u64 = ((x777 as u64) + x749); - let mut x779: u64 = 0; - let mut x780: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); - let mut x781: u64 = 0; - let mut x782: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); - let mut x783: u64 = 0; - let mut x784: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); - let mut x785: u64 = 0; - let mut x786: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); - let mut x787: u64 = 0; - let mut x788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); - let mut x789: u64 = 0; - let mut x790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); - let mut x791: u64 = 0; - let mut x792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); - let mut x793: u64 = 0; - let mut x794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); - let mut x795: u64 = 0; - let mut x796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); - let x797: u64 = ((x796 as u64) + (x745 as u64)); - let mut x798: u64 = 0; - let mut x799: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); - let mut x800: u64 = 0; - let mut x801: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); - let mut x802: u64 = 0; - let mut x803: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); - let mut x804: u64 = 0; - let mut x805: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); - let mut x806: u64 = 0; - let mut x807: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); - let mut x808: u64 = 0; - let mut x809: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); - let mut x810: u64 = 0; - let mut x811: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); - let mut x812: u64 = 0; - let mut x813: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); - let mut x814: u64 = 0; - let mut x815: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); - let mut x816: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); - let mut x817: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); - let mut x818: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); - let mut x819: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); - let mut x820: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); - let mut x821: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); - let mut x822: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); - let mut x823: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); - out1[0] = x816; - out1[1] = x817; - out1[2] = x818; - out1[3] = x819; - out1[4] = x820; - out1[5] = x821; - out1[6] = x822; - out1[7] = x823; +pub fn fiat_bp512_mul( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg2[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg2[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg2[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg2[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg2[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg2[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg2[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg2[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg2[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg2[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg2[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg2[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg2[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg2[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg2[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg2[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg2[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg2[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg2[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg2[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg2[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg2[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg2[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg2[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg2[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg2[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg2[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg2[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg2[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg2[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg2[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg2[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg2[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg2[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg2[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg2[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg2[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg2[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg2[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg2[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg2[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg2[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg2[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg2[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg2[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg2[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg2[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg2[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg2[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg2[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg2[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg2[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg2[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg2[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg2[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg2[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg2[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg2[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg2[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg2[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg2[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg2[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg2[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg2[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; } /// The function fiat_bp512_square squares a field element in the Montgomery domain. @@ -1407,1238 +1423,1241 @@ pub fn fiat_bp512_mul(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let x1: u64 = (arg1[1]); - let x2: u64 = (arg1[2]); - let x3: u64 = (arg1[3]); - let x4: u64 = (arg1[4]); - let x5: u64 = (arg1[5]); - let x6: u64 = (arg1[6]); - let x7: u64 = (arg1[7]); - let x8: u64 = (arg1[0]); - let mut x9: u64 = 0; - let mut x10: u64 = 0; - fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg1[7])); - let mut x11: u64 = 0; - let mut x12: u64 = 0; - fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg1[6])); - let mut x13: u64 = 0; - let mut x14: u64 = 0; - fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg1[5])); - let mut x15: u64 = 0; - let mut x16: u64 = 0; - fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg1[4])); - let mut x17: u64 = 0; - let mut x18: u64 = 0; - fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg1[3])); - let mut x19: u64 = 0; - let mut x20: u64 = 0; - fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg1[2])); - let mut x21: u64 = 0; - let mut x22: u64 = 0; - fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg1[1])); - let mut x23: u64 = 0; - let mut x24: u64 = 0; - fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg1[0])); - let mut x25: u64 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); - let mut x27: u64 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); - let mut x29: u64 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); - let mut x31: u64 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); - let mut x33: u64 = 0; - let mut x34: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); - let mut x35: u64 = 0; - let mut x36: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); - let mut x37: u64 = 0; - let mut x38: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); - let x39: u64 = ((x38 as u64) + x10); - let mut x40: u64 = 0; - let mut x41: u64 = 0; - fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); - let mut x42: u64 = 0; - let mut x43: u64 = 0; - fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); - let mut x44: u64 = 0; - let mut x45: u64 = 0; - fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); - let mut x46: u64 = 0; - let mut x47: u64 = 0; - fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); - let mut x48: u64 = 0; - let mut x49: u64 = 0; - fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); - let mut x50: u64 = 0; - let mut x51: u64 = 0; - fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); - let mut x52: u64 = 0; - let mut x53: u64 = 0; - fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); - let mut x54: u64 = 0; - let mut x55: u64 = 0; - fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); - let mut x56: u64 = 0; - let mut x57: u64 = 0; - fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); - let mut x58: u64 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); - let mut x60: u64 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); - let mut x62: u64 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); - let mut x64: u64 = 0; - let mut x65: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); - let mut x66: u64 = 0; - let mut x67: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); - let mut x68: u64 = 0; - let mut x69: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); - let mut x70: u64 = 0; - let mut x71: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); - let x72: u64 = ((x71 as u64) + x43); - let mut x73: u64 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); - let mut x75: u64 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); - let mut x77: u64 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); - let mut x79: u64 = 0; - let mut x80: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); - let mut x81: u64 = 0; - let mut x82: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); - let mut x83: u64 = 0; - let mut x84: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); - let mut x85: u64 = 0; - let mut x86: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); - let mut x87: u64 = 0; - let mut x88: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); - let mut x89: u64 = 0; - let mut x90: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); - let mut x91: u64 = 0; - let mut x92: u64 = 0; - fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg1[7])); - let mut x93: u64 = 0; - let mut x94: u64 = 0; - fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg1[6])); - let mut x95: u64 = 0; - let mut x96: u64 = 0; - fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg1[5])); - let mut x97: u64 = 0; - let mut x98: u64 = 0; - fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg1[4])); - let mut x99: u64 = 0; - let mut x100: u64 = 0; - fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg1[3])); - let mut x101: u64 = 0; - let mut x102: u64 = 0; - fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg1[2])); - let mut x103: u64 = 0; - let mut x104: u64 = 0; - fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg1[1])); - let mut x105: u64 = 0; - let mut x106: u64 = 0; - fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg1[0])); - let mut x107: u64 = 0; - let mut x108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); - let mut x109: u64 = 0; - let mut x110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); - let mut x111: u64 = 0; - let mut x112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); - let mut x113: u64 = 0; - let mut x114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); - let mut x115: u64 = 0; - let mut x116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); - let mut x117: u64 = 0; - let mut x118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); - let mut x119: u64 = 0; - let mut x120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); - let x121: u64 = ((x120 as u64) + x92); - let mut x122: u64 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); - let mut x124: u64 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); - let mut x126: u64 = 0; - let mut x127: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); - let mut x128: u64 = 0; - let mut x129: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); - let mut x130: u64 = 0; - let mut x131: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); - let mut x132: u64 = 0; - let mut x133: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); - let mut x134: u64 = 0; - let mut x135: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); - let mut x136: u64 = 0; - let mut x137: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); - let mut x138: u64 = 0; - let mut x139: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); - let mut x140: u64 = 0; - let mut x141: u64 = 0; - fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); - let mut x142: u64 = 0; - let mut x143: u64 = 0; - fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); - let mut x144: u64 = 0; - let mut x145: u64 = 0; - fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); - let mut x146: u64 = 0; - let mut x147: u64 = 0; - fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); - let mut x148: u64 = 0; - let mut x149: u64 = 0; - fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); - let mut x150: u64 = 0; - let mut x151: u64 = 0; - fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); - let mut x152: u64 = 0; - let mut x153: u64 = 0; - fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); - let mut x154: u64 = 0; - let mut x155: u64 = 0; - fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); - let mut x156: u64 = 0; - let mut x157: u64 = 0; - fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); - let mut x158: u64 = 0; - let mut x159: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); - let mut x160: u64 = 0; - let mut x161: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); - let mut x162: u64 = 0; - let mut x163: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); - let mut x164: u64 = 0; - let mut x165: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); - let mut x166: u64 = 0; - let mut x167: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); - let mut x168: u64 = 0; - let mut x169: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); - let mut x170: u64 = 0; - let mut x171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); - let x172: u64 = ((x171 as u64) + x143); - let mut x173: u64 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); - let mut x175: u64 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); - let mut x177: u64 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); - let mut x179: u64 = 0; - let mut x180: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); - let mut x181: u64 = 0; - let mut x182: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); - let mut x183: u64 = 0; - let mut x184: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); - let mut x185: u64 = 0; - let mut x186: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); - let mut x187: u64 = 0; - let mut x188: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); - let mut x189: u64 = 0; - let mut x190: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); - let x191: u64 = ((x190 as u64) + (x139 as u64)); - let mut x192: u64 = 0; - let mut x193: u64 = 0; - fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg1[7])); - let mut x194: u64 = 0; - let mut x195: u64 = 0; - fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg1[6])); - let mut x196: u64 = 0; - let mut x197: u64 = 0; - fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg1[5])); - let mut x198: u64 = 0; - let mut x199: u64 = 0; - fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg1[4])); - let mut x200: u64 = 0; - let mut x201: u64 = 0; - fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg1[3])); - let mut x202: u64 = 0; - let mut x203: u64 = 0; - fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg1[2])); - let mut x204: u64 = 0; - let mut x205: u64 = 0; - fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg1[1])); - let mut x206: u64 = 0; - let mut x207: u64 = 0; - fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg1[0])); - let mut x208: u64 = 0; - let mut x209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); - let mut x210: u64 = 0; - let mut x211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); - let mut x212: u64 = 0; - let mut x213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); - let mut x214: u64 = 0; - let mut x215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); - let mut x216: u64 = 0; - let mut x217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); - let mut x218: u64 = 0; - let mut x219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); - let mut x220: u64 = 0; - let mut x221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); - let x222: u64 = ((x221 as u64) + x193); - let mut x223: u64 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); - let mut x225: u64 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); - let mut x227: u64 = 0; - let mut x228: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); - let mut x229: u64 = 0; - let mut x230: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); - let mut x231: u64 = 0; - let mut x232: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); - let mut x233: u64 = 0; - let mut x234: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); - let mut x235: u64 = 0; - let mut x236: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); - let mut x237: u64 = 0; - let mut x238: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); - let mut x239: u64 = 0; - let mut x240: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); - let mut x241: u64 = 0; - let mut x242: u64 = 0; - fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); - let mut x243: u64 = 0; - let mut x244: u64 = 0; - fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); - let mut x245: u64 = 0; - let mut x246: u64 = 0; - fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); - let mut x247: u64 = 0; - let mut x248: u64 = 0; - fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); - let mut x249: u64 = 0; - let mut x250: u64 = 0; - fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); - let mut x251: u64 = 0; - let mut x252: u64 = 0; - fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); - let mut x253: u64 = 0; - let mut x254: u64 = 0; - fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); - let mut x255: u64 = 0; - let mut x256: u64 = 0; - fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); - let mut x257: u64 = 0; - let mut x258: u64 = 0; - fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); - let mut x259: u64 = 0; - let mut x260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); - let mut x261: u64 = 0; - let mut x262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); - let mut x263: u64 = 0; - let mut x264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); - let mut x265: u64 = 0; - let mut x266: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); - let mut x267: u64 = 0; - let mut x268: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); - let mut x269: u64 = 0; - let mut x270: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); - let mut x271: u64 = 0; - let mut x272: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); - let x273: u64 = ((x272 as u64) + x244); - let mut x274: u64 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); - let mut x276: u64 = 0; - let mut x277: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); - let mut x278: u64 = 0; - let mut x279: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); - let mut x280: u64 = 0; - let mut x281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); - let mut x282: u64 = 0; - let mut x283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); - let mut x284: u64 = 0; - let mut x285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); - let mut x286: u64 = 0; - let mut x287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); - let mut x288: u64 = 0; - let mut x289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); - let mut x290: u64 = 0; - let mut x291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); - let x292: u64 = ((x291 as u64) + (x240 as u64)); - let mut x293: u64 = 0; - let mut x294: u64 = 0; - fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg1[7])); - let mut x295: u64 = 0; - let mut x296: u64 = 0; - fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg1[6])); - let mut x297: u64 = 0; - let mut x298: u64 = 0; - fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg1[5])); - let mut x299: u64 = 0; - let mut x300: u64 = 0; - fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg1[4])); - let mut x301: u64 = 0; - let mut x302: u64 = 0; - fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg1[3])); - let mut x303: u64 = 0; - let mut x304: u64 = 0; - fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg1[2])); - let mut x305: u64 = 0; - let mut x306: u64 = 0; - fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg1[1])); - let mut x307: u64 = 0; - let mut x308: u64 = 0; - fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg1[0])); - let mut x309: u64 = 0; - let mut x310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); - let mut x311: u64 = 0; - let mut x312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); - let mut x313: u64 = 0; - let mut x314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); - let mut x315: u64 = 0; - let mut x316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); - let mut x317: u64 = 0; - let mut x318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); - let mut x319: u64 = 0; - let mut x320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); - let mut x321: u64 = 0; - let mut x322: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); - let x323: u64 = ((x322 as u64) + x294); - let mut x324: u64 = 0; - let mut x325: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); - let mut x326: u64 = 0; - let mut x327: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); - let mut x328: u64 = 0; - let mut x329: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); - let mut x330: u64 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); - let mut x332: u64 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); - let mut x334: u64 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); - let mut x336: u64 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); - let mut x338: u64 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); - let mut x340: u64 = 0; - let mut x341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); - let mut x342: u64 = 0; - let mut x343: u64 = 0; - fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); - let mut x344: u64 = 0; - let mut x345: u64 = 0; - fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); - let mut x346: u64 = 0; - let mut x347: u64 = 0; - fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); - let mut x348: u64 = 0; - let mut x349: u64 = 0; - fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); - let mut x350: u64 = 0; - let mut x351: u64 = 0; - fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); - let mut x352: u64 = 0; - let mut x353: u64 = 0; - fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); - let mut x354: u64 = 0; - let mut x355: u64 = 0; - fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); - let mut x356: u64 = 0; - let mut x357: u64 = 0; - fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); - let mut x358: u64 = 0; - let mut x359: u64 = 0; - fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); - let mut x360: u64 = 0; - let mut x361: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); - let mut x362: u64 = 0; - let mut x363: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); - let mut x364: u64 = 0; - let mut x365: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); - let mut x366: u64 = 0; - let mut x367: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); - let mut x368: u64 = 0; - let mut x369: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); - let mut x370: u64 = 0; - let mut x371: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); - let mut x372: u64 = 0; - let mut x373: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); - let x374: u64 = ((x373 as u64) + x345); - let mut x375: u64 = 0; - let mut x376: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); - let mut x377: u64 = 0; - let mut x378: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); - let mut x379: u64 = 0; - let mut x380: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); - let mut x381: u64 = 0; - let mut x382: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); - let mut x383: u64 = 0; - let mut x384: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); - let mut x385: u64 = 0; - let mut x386: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); - let mut x387: u64 = 0; - let mut x388: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); - let mut x389: u64 = 0; - let mut x390: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); - let mut x391: u64 = 0; - let mut x392: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); - let x393: u64 = ((x392 as u64) + (x341 as u64)); - let mut x394: u64 = 0; - let mut x395: u64 = 0; - fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg1[7])); - let mut x396: u64 = 0; - let mut x397: u64 = 0; - fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg1[6])); - let mut x398: u64 = 0; - let mut x399: u64 = 0; - fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg1[5])); - let mut x400: u64 = 0; - let mut x401: u64 = 0; - fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg1[4])); - let mut x402: u64 = 0; - let mut x403: u64 = 0; - fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg1[3])); - let mut x404: u64 = 0; - let mut x405: u64 = 0; - fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg1[2])); - let mut x406: u64 = 0; - let mut x407: u64 = 0; - fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg1[1])); - let mut x408: u64 = 0; - let mut x409: u64 = 0; - fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg1[0])); - let mut x410: u64 = 0; - let mut x411: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); - let mut x412: u64 = 0; - let mut x413: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); - let mut x414: u64 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); - let mut x416: u64 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); - let mut x418: u64 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); - let mut x420: u64 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); - let mut x422: u64 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); - let x424: u64 = ((x423 as u64) + x395); - let mut x425: u64 = 0; - let mut x426: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); - let mut x427: u64 = 0; - let mut x428: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); - let mut x429: u64 = 0; - let mut x430: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); - let mut x431: u64 = 0; - let mut x432: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); - let mut x433: u64 = 0; - let mut x434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); - let mut x435: u64 = 0; - let mut x436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); - let mut x437: u64 = 0; - let mut x438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); - let mut x439: u64 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); - let mut x441: u64 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); - let mut x443: u64 = 0; - let mut x444: u64 = 0; - fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); - let mut x445: u64 = 0; - let mut x446: u64 = 0; - fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); - let mut x447: u64 = 0; - let mut x448: u64 = 0; - fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); - let mut x449: u64 = 0; - let mut x450: u64 = 0; - fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); - let mut x451: u64 = 0; - let mut x452: u64 = 0; - fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); - let mut x453: u64 = 0; - let mut x454: u64 = 0; - fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); - let mut x455: u64 = 0; - let mut x456: u64 = 0; - fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); - let mut x457: u64 = 0; - let mut x458: u64 = 0; - fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); - let mut x459: u64 = 0; - let mut x460: u64 = 0; - fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); - let mut x461: u64 = 0; - let mut x462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); - let mut x463: u64 = 0; - let mut x464: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); - let mut x465: u64 = 0; - let mut x466: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); - let mut x467: u64 = 0; - let mut x468: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); - let mut x469: u64 = 0; - let mut x470: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); - let mut x471: u64 = 0; - let mut x472: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); - let mut x473: u64 = 0; - let mut x474: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); - let x475: u64 = ((x474 as u64) + x446); - let mut x476: u64 = 0; - let mut x477: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); - let mut x478: u64 = 0; - let mut x479: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); - let mut x480: u64 = 0; - let mut x481: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); - let mut x482: u64 = 0; - let mut x483: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); - let mut x484: u64 = 0; - let mut x485: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); - let mut x486: u64 = 0; - let mut x487: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); - let mut x488: u64 = 0; - let mut x489: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); - let mut x490: u64 = 0; - let mut x491: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); - let mut x492: u64 = 0; - let mut x493: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); - let x494: u64 = ((x493 as u64) + (x442 as u64)); - let mut x495: u64 = 0; - let mut x496: u64 = 0; - fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg1[7])); - let mut x497: u64 = 0; - let mut x498: u64 = 0; - fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg1[6])); - let mut x499: u64 = 0; - let mut x500: u64 = 0; - fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg1[5])); - let mut x501: u64 = 0; - let mut x502: u64 = 0; - fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg1[4])); - let mut x503: u64 = 0; - let mut x504: u64 = 0; - fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg1[3])); - let mut x505: u64 = 0; - let mut x506: u64 = 0; - fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg1[2])); - let mut x507: u64 = 0; - let mut x508: u64 = 0; - fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg1[1])); - let mut x509: u64 = 0; - let mut x510: u64 = 0; - fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg1[0])); - let mut x511: u64 = 0; - let mut x512: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); - let mut x513: u64 = 0; - let mut x514: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); - let mut x515: u64 = 0; - let mut x516: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); - let mut x517: u64 = 0; - let mut x518: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); - let mut x519: u64 = 0; - let mut x520: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); - let mut x521: u64 = 0; - let mut x522: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); - let mut x523: u64 = 0; - let mut x524: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); - let x525: u64 = ((x524 as u64) + x496); - let mut x526: u64 = 0; - let mut x527: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); - let mut x528: u64 = 0; - let mut x529: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); - let mut x530: u64 = 0; - let mut x531: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); - let mut x532: u64 = 0; - let mut x533: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); - let mut x534: u64 = 0; - let mut x535: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); - let mut x536: u64 = 0; - let mut x537: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); - let mut x538: u64 = 0; - let mut x539: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); - let mut x540: u64 = 0; - let mut x541: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); - let mut x542: u64 = 0; - let mut x543: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); - let mut x544: u64 = 0; - let mut x545: u64 = 0; - fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); - let mut x546: u64 = 0; - let mut x547: u64 = 0; - fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); - let mut x548: u64 = 0; - let mut x549: u64 = 0; - fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); - let mut x550: u64 = 0; - let mut x551: u64 = 0; - fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); - let mut x552: u64 = 0; - let mut x553: u64 = 0; - fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); - let mut x554: u64 = 0; - let mut x555: u64 = 0; - fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); - let mut x556: u64 = 0; - let mut x557: u64 = 0; - fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); - let mut x558: u64 = 0; - let mut x559: u64 = 0; - fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); - let mut x560: u64 = 0; - let mut x561: u64 = 0; - fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); - let mut x562: u64 = 0; - let mut x563: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); - let mut x564: u64 = 0; - let mut x565: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); - let mut x566: u64 = 0; - let mut x567: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); - let mut x568: u64 = 0; - let mut x569: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); - let mut x570: u64 = 0; - let mut x571: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); - let mut x572: u64 = 0; - let mut x573: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); - let mut x574: u64 = 0; - let mut x575: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); - let x576: u64 = ((x575 as u64) + x547); - let mut x577: u64 = 0; - let mut x578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); - let mut x579: u64 = 0; - let mut x580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); - let mut x581: u64 = 0; - let mut x582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); - let mut x583: u64 = 0; - let mut x584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); - let mut x585: u64 = 0; - let mut x586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); - let mut x587: u64 = 0; - let mut x588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); - let mut x589: u64 = 0; - let mut x590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); - let mut x591: u64 = 0; - let mut x592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); - let mut x593: u64 = 0; - let mut x594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); - let x595: u64 = ((x594 as u64) + (x543 as u64)); - let mut x596: u64 = 0; - let mut x597: u64 = 0; - fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg1[7])); - let mut x598: u64 = 0; - let mut x599: u64 = 0; - fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg1[6])); - let mut x600: u64 = 0; - let mut x601: u64 = 0; - fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg1[5])); - let mut x602: u64 = 0; - let mut x603: u64 = 0; - fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg1[4])); - let mut x604: u64 = 0; - let mut x605: u64 = 0; - fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg1[3])); - let mut x606: u64 = 0; - let mut x607: u64 = 0; - fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg1[2])); - let mut x608: u64 = 0; - let mut x609: u64 = 0; - fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg1[1])); - let mut x610: u64 = 0; - let mut x611: u64 = 0; - fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg1[0])); - let mut x612: u64 = 0; - let mut x613: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); - let mut x614: u64 = 0; - let mut x615: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); - let mut x616: u64 = 0; - let mut x617: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); - let mut x618: u64 = 0; - let mut x619: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); - let mut x620: u64 = 0; - let mut x621: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); - let mut x622: u64 = 0; - let mut x623: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); - let mut x624: u64 = 0; - let mut x625: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); - let x626: u64 = ((x625 as u64) + x597); - let mut x627: u64 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); - let mut x629: u64 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); - let mut x631: u64 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); - let mut x633: u64 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); - let mut x635: u64 = 0; - let mut x636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); - let mut x637: u64 = 0; - let mut x638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); - let mut x639: u64 = 0; - let mut x640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); - let mut x641: u64 = 0; - let mut x642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); - let mut x643: u64 = 0; - let mut x644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); - let mut x645: u64 = 0; - let mut x646: u64 = 0; - fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); - let mut x647: u64 = 0; - let mut x648: u64 = 0; - fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); - let mut x649: u64 = 0; - let mut x650: u64 = 0; - fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); - let mut x651: u64 = 0; - let mut x652: u64 = 0; - fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); - let mut x653: u64 = 0; - let mut x654: u64 = 0; - fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); - let mut x655: u64 = 0; - let mut x656: u64 = 0; - fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); - let mut x657: u64 = 0; - let mut x658: u64 = 0; - fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); - let mut x659: u64 = 0; - let mut x660: u64 = 0; - fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); - let mut x661: u64 = 0; - let mut x662: u64 = 0; - fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); - let mut x663: u64 = 0; - let mut x664: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); - let mut x665: u64 = 0; - let mut x666: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); - let mut x667: u64 = 0; - let mut x668: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); - let mut x669: u64 = 0; - let mut x670: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); - let mut x671: u64 = 0; - let mut x672: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); - let mut x673: u64 = 0; - let mut x674: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); - let mut x675: u64 = 0; - let mut x676: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); - let x677: u64 = ((x676 as u64) + x648); - let mut x678: u64 = 0; - let mut x679: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); - let mut x680: u64 = 0; - let mut x681: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); - let mut x682: u64 = 0; - let mut x683: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); - let mut x684: u64 = 0; - let mut x685: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); - let mut x686: u64 = 0; - let mut x687: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); - let mut x688: u64 = 0; - let mut x689: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); - let mut x690: u64 = 0; - let mut x691: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); - let mut x692: u64 = 0; - let mut x693: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); - let mut x694: u64 = 0; - let mut x695: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); - let x696: u64 = ((x695 as u64) + (x644 as u64)); - let mut x697: u64 = 0; - let mut x698: u64 = 0; - fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg1[7])); - let mut x699: u64 = 0; - let mut x700: u64 = 0; - fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg1[6])); - let mut x701: u64 = 0; - let mut x702: u64 = 0; - fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg1[5])); - let mut x703: u64 = 0; - let mut x704: u64 = 0; - fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg1[4])); - let mut x705: u64 = 0; - let mut x706: u64 = 0; - fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg1[3])); - let mut x707: u64 = 0; - let mut x708: u64 = 0; - fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg1[2])); - let mut x709: u64 = 0; - let mut x710: u64 = 0; - fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg1[1])); - let mut x711: u64 = 0; - let mut x712: u64 = 0; - fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg1[0])); - let mut x713: u64 = 0; - let mut x714: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); - let mut x715: u64 = 0; - let mut x716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); - let mut x717: u64 = 0; - let mut x718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); - let mut x719: u64 = 0; - let mut x720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); - let mut x721: u64 = 0; - let mut x722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); - let mut x723: u64 = 0; - let mut x724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); - let mut x725: u64 = 0; - let mut x726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); - let x727: u64 = ((x726 as u64) + x698); - let mut x728: u64 = 0; - let mut x729: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); - let mut x730: u64 = 0; - let mut x731: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); - let mut x732: u64 = 0; - let mut x733: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); - let mut x734: u64 = 0; - let mut x735: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); - let mut x736: u64 = 0; - let mut x737: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); - let mut x738: u64 = 0; - let mut x739: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); - let mut x740: u64 = 0; - let mut x741: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); - let mut x742: u64 = 0; - let mut x743: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); - let mut x744: u64 = 0; - let mut x745: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); - let mut x746: u64 = 0; - let mut x747: u64 = 0; - fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); - let mut x748: u64 = 0; - let mut x749: u64 = 0; - fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); - let mut x750: u64 = 0; - let mut x751: u64 = 0; - fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); - let mut x752: u64 = 0; - let mut x753: u64 = 0; - fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); - let mut x754: u64 = 0; - let mut x755: u64 = 0; - fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); - let mut x756: u64 = 0; - let mut x757: u64 = 0; - fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); - let mut x758: u64 = 0; - let mut x759: u64 = 0; - fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); - let mut x760: u64 = 0; - let mut x761: u64 = 0; - fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); - let mut x762: u64 = 0; - let mut x763: u64 = 0; - fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); - let mut x764: u64 = 0; - let mut x765: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); - let mut x766: u64 = 0; - let mut x767: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); - let mut x768: u64 = 0; - let mut x769: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); - let mut x770: u64 = 0; - let mut x771: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); - let mut x772: u64 = 0; - let mut x773: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); - let mut x774: u64 = 0; - let mut x775: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); - let mut x776: u64 = 0; - let mut x777: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); - let x778: u64 = ((x777 as u64) + x749); - let mut x779: u64 = 0; - let mut x780: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); - let mut x781: u64 = 0; - let mut x782: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); - let mut x783: u64 = 0; - let mut x784: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); - let mut x785: u64 = 0; - let mut x786: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); - let mut x787: u64 = 0; - let mut x788: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); - let mut x789: u64 = 0; - let mut x790: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); - let mut x791: u64 = 0; - let mut x792: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); - let mut x793: u64 = 0; - let mut x794: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); - let mut x795: u64 = 0; - let mut x796: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); - let x797: u64 = ((x796 as u64) + (x745 as u64)); - let mut x798: u64 = 0; - let mut x799: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); - let mut x800: u64 = 0; - let mut x801: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); - let mut x802: u64 = 0; - let mut x803: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); - let mut x804: u64 = 0; - let mut x805: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); - let mut x806: u64 = 0; - let mut x807: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); - let mut x808: u64 = 0; - let mut x809: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); - let mut x810: u64 = 0; - let mut x811: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); - let mut x812: u64 = 0; - let mut x813: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); - let mut x814: u64 = 0; - let mut x815: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); - let mut x816: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); - let mut x817: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); - let mut x818: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); - let mut x819: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); - let mut x820: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); - let mut x821: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); - let mut x822: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); - let mut x823: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); - out1[0] = x816; - out1[1] = x817; - out1[2] = x818; - out1[3] = x819; - out1[4] = x820; - out1[5] = x821; - out1[6] = x822; - out1[7] = x823; +pub fn fiat_bp512_square( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, (arg1[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, (arg1[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, (arg1[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, (arg1[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, (arg1[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, (arg1[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, (arg1[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, (arg1[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_mulx_u64(&mut x40, &mut x41, x23, 0x839b32207d89efc5); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330871); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_mulx_u64(&mut x50, &mut x51, x40, 0x7d4d9b009bc66842); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_mulx_u64(&mut x52, &mut x53, x40, 0xaecda12ae6a380e6); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_mulx_u64(&mut x54, &mut x55, x40, 0x2881ff2f2d82c685); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_mulx_u64(&mut x56, &mut x57, x40, 0x28aa6056583a48f3); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, (arg1[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, (arg1[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, (arg1[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, (arg1[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, (arg1[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, (arg1[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_mulx_u64(&mut x103, &mut x104, x1, (arg1[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_mulx_u64(&mut x105, &mut x106, x1, (arg1[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x122, 0x839b32207d89efc5); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330871); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_mulx_u64(&mut x150, &mut x151, x140, 0x7d4d9b009bc66842); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_mulx_u64(&mut x152, &mut x153, x140, 0xaecda12ae6a380e6); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_mulx_u64(&mut x154, &mut x155, x140, 0x2881ff2f2d82c685); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_mulx_u64(&mut x156, &mut x157, x140, 0x28aa6056583a48f3); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x2, (arg1[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x2, (arg1[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x2, (arg1[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x2, (arg1[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x2, (arg1[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x2, (arg1[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x2, (arg1[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_mulx_u64(&mut x206, &mut x207, x2, (arg1[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x223, 0x839b32207d89efc5); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330871); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_mulx_u64(&mut x251, &mut x252, x241, 0x7d4d9b009bc66842); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_mulx_u64(&mut x253, &mut x254, x241, 0xaecda12ae6a380e6); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_mulx_u64(&mut x255, &mut x256, x241, 0x2881ff2f2d82c685); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_mulx_u64(&mut x257, &mut x258, x241, 0x28aa6056583a48f3); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_mulx_u64(&mut x293, &mut x294, x3, (arg1[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_mulx_u64(&mut x295, &mut x296, x3, (arg1[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_mulx_u64(&mut x297, &mut x298, x3, (arg1[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_mulx_u64(&mut x299, &mut x300, x3, (arg1[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_mulx_u64(&mut x301, &mut x302, x3, (arg1[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_mulx_u64(&mut x303, &mut x304, x3, (arg1[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_mulx_u64(&mut x305, &mut x306, x3, (arg1[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_mulx_u64(&mut x307, &mut x308, x3, (arg1[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_mulx_u64(&mut x342, &mut x343, x324, 0x839b32207d89efc5); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330871); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_mulx_u64(&mut x352, &mut x353, x342, 0x7d4d9b009bc66842); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_mulx_u64(&mut x354, &mut x355, x342, 0xaecda12ae6a380e6); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_mulx_u64(&mut x356, &mut x357, x342, 0x2881ff2f2d82c685); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_mulx_u64(&mut x358, &mut x359, x342, 0x28aa6056583a48f3); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_mulx_u64(&mut x394, &mut x395, x4, (arg1[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_mulx_u64(&mut x396, &mut x397, x4, (arg1[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_mulx_u64(&mut x398, &mut x399, x4, (arg1[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_mulx_u64(&mut x400, &mut x401, x4, (arg1[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_mulx_u64(&mut x402, &mut x403, x4, (arg1[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_mulx_u64(&mut x404, &mut x405, x4, (arg1[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_mulx_u64(&mut x406, &mut x407, x4, (arg1[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_mulx_u64(&mut x408, &mut x409, x4, (arg1[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_mulx_u64(&mut x443, &mut x444, x425, 0x839b32207d89efc5); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330871); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_mulx_u64(&mut x453, &mut x454, x443, 0x7d4d9b009bc66842); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_mulx_u64(&mut x455, &mut x456, x443, 0xaecda12ae6a380e6); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_mulx_u64(&mut x457, &mut x458, x443, 0x2881ff2f2d82c685); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_mulx_u64(&mut x459, &mut x460, x443, 0x28aa6056583a48f3); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_mulx_u64(&mut x495, &mut x496, x5, (arg1[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_mulx_u64(&mut x497, &mut x498, x5, (arg1[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_mulx_u64(&mut x499, &mut x500, x5, (arg1[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_mulx_u64(&mut x501, &mut x502, x5, (arg1[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_mulx_u64(&mut x503, &mut x504, x5, (arg1[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_mulx_u64(&mut x505, &mut x506, x5, (arg1[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_mulx_u64(&mut x507, &mut x508, x5, (arg1[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x5, (arg1[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_mulx_u64(&mut x544, &mut x545, x526, 0x839b32207d89efc5); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330871); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_mulx_u64(&mut x554, &mut x555, x544, 0x7d4d9b009bc66842); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_mulx_u64(&mut x556, &mut x557, x544, 0xaecda12ae6a380e6); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_mulx_u64(&mut x558, &mut x559, x544, 0x2881ff2f2d82c685); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_mulx_u64(&mut x560, &mut x561, x544, 0x28aa6056583a48f3); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_mulx_u64(&mut x596, &mut x597, x6, (arg1[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_mulx_u64(&mut x598, &mut x599, x6, (arg1[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_mulx_u64(&mut x600, &mut x601, x6, (arg1[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_mulx_u64(&mut x602, &mut x603, x6, (arg1[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_mulx_u64(&mut x604, &mut x605, x6, (arg1[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_mulx_u64(&mut x606, &mut x607, x6, (arg1[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_mulx_u64(&mut x608, &mut x609, x6, (arg1[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_mulx_u64(&mut x610, &mut x611, x6, (arg1[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_mulx_u64(&mut x645, &mut x646, x627, 0x839b32207d89efc5); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330871); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x645, 0x7d4d9b009bc66842); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x645, 0xaecda12ae6a380e6); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x645, 0x2881ff2f2d82c685); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x645, 0x28aa6056583a48f3); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x7, (arg1[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x7, (arg1[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x7, (arg1[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x7, (arg1[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x7, (arg1[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x7, (arg1[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x7, (arg1[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x7, (arg1[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_mulx_u64(&mut x746, &mut x747, x728, 0x839b32207d89efc5); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_mulx_u64(&mut x756, &mut x757, x746, 0x7d4d9b009bc66842); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_mulx_u64(&mut x758, &mut x759, x746, 0xaecda12ae6a380e6); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_mulx_u64(&mut x760, &mut x761, x746, 0x2881ff2f2d82c685); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_mulx_u64(&mut x762, &mut x763, x746, 0x28aa6056583a48f3); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0x28aa6056583a48f3); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x2881ff2f2d82c685); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0xaecda12ae6a380e6); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x7d4d9b009bc66842); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330871); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; } /// The function fiat_bp512_add adds two field elements in the Montgomery domain. @@ -2651,82 +2670,86 @@ pub fn fiat_bp512_square(out1: &mut fiat_bp512_montgomery_domain_field_element, /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u64 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); - let mut x3: u64 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); - let mut x5: u64 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); - let mut x7: u64 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); - let mut x9: u64 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); - let mut x11: u64 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); - let mut x13: u64 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); - let mut x15: u64 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); - let mut x17: u64 = 0; - let mut x18: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x17, &mut x18, 0x0, x1, 0x28aa6056583a48f3); - let mut x19: u64 = 0; - let mut x20: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x19, &mut x20, x18, x3, 0x2881ff2f2d82c685); - let mut x21: u64 = 0; - let mut x22: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x21, &mut x22, x20, x5, 0xaecda12ae6a380e6); - let mut x23: u64 = 0; - let mut x24: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x23, &mut x24, x22, x7, 0x7d4d9b009bc66842); - let mut x25: u64 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x25, &mut x26, x24, x9, 0xd6639cca70330871); - let mut x27: u64 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x27, &mut x28, x26, x11, 0xcb308db3b3c9d20e); - let mut x29: u64 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x29, &mut x30, x28, x13, 0x3fd4e6ae33c9fc07); - let mut x31: u64 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x31, &mut x32, x30, x15, 0xaadd9db8dbe9c48b); - let mut x33: u64 = 0; - let mut x34: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x33, &mut x34, x32, (x16 as u64), (0x0 as u64)); - let mut x35: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x35, x34, x17, x1); - let mut x36: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x36, x34, x19, x3); - let mut x37: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x37, x34, x21, x5); - let mut x38: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x38, x34, x23, x7); - let mut x39: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x39, x34, x25, x9); - let mut x40: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x40, x34, x27, x11); - let mut x41: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x41, x34, x29, x13); - let mut x42: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x42, x34, x31, x15); - out1[0] = x35; - out1[1] = x36; - out1[2] = x37; - out1[3] = x38; - out1[4] = x39; - out1[5] = x40; - out1[6] = x41; - out1[7] = x42; +pub fn fiat_bp512_add( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + let mut x18: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x17, &mut x18, 0x0, x1, 0x28aa6056583a48f3); + let mut x19: u64 = 0; + let mut x20: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x19, &mut x20, x18, x3, 0x2881ff2f2d82c685); + let mut x21: u64 = 0; + let mut x22: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x21, &mut x22, x20, x5, 0xaecda12ae6a380e6); + let mut x23: u64 = 0; + let mut x24: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x23, &mut x24, x22, x7, 0x7d4d9b009bc66842); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x25, &mut x26, x24, x9, 0xd6639cca70330871); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x27, &mut x28, x26, x11, 0xcb308db3b3c9d20e); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x29, &mut x30, x28, x13, 0x3fd4e6ae33c9fc07); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x31, &mut x32, x30, x15, 0xaadd9db8dbe9c48b); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x33, &mut x34, x32, (x16 as u64), (0x0 as u64)); + let mut x35: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x35, x34, x17, x1); + let mut x36: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x36, x34, x19, x3); + let mut x37: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x37, x34, x21, x5); + let mut x38: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x38, x34, x23, x7); + let mut x39: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x39, x34, x25, x9); + let mut x40: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x40, x34, x27, x11); + let mut x41: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x41, x34, x29, x13); + let mut x42: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x42, x34, x31, x15); + out1[0] = x35; + out1[1] = x36; + out1[2] = x37; + out1[3] = x38; + out1[4] = x39; + out1[5] = x40; + out1[6] = x41; + out1[7] = x42; } /// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. @@ -2739,65 +2762,69 @@ pub fn fiat_bp512_add(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u64 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); - let mut x3: u64 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); - let mut x5: u64 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); - let mut x7: u64 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); - let mut x9: u64 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); - let mut x11: u64 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); - let mut x13: u64 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); - let mut x15: u64 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); - let mut x17: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); - let mut x18: u64 = 0; - let mut x19: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); - let mut x20: u64 = 0; - let mut x21: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); - let mut x22: u64 = 0; - let mut x23: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); - let mut x24: u64 = 0; - let mut x25: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); - let mut x26: u64 = 0; - let mut x27: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); - let mut x28: u64 = 0; - let mut x29: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); - let mut x30: u64 = 0; - let mut x31: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); - let mut x32: u64 = 0; - let mut x33: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); - out1[0] = x18; - out1[1] = x20; - out1[2] = x22; - out1[3] = x24; - out1[4] = x26; - out1[5] = x28; - out1[6] = x30; - out1[7] = x32; +pub fn fiat_bp512_sub( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, + arg2: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; } /// The function fiat_bp512_opp negates a field element in the Montgomery domain. @@ -2809,65 +2836,68 @@ pub fn fiat_bp512_sub(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let mut x1: u64 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); - let mut x3: u64 = 0; - let mut x4: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); - let mut x5: u64 = 0; - let mut x6: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); - let mut x7: u64 = 0; - let mut x8: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); - let mut x9: u64 = 0; - let mut x10: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); - let mut x11: u64 = 0; - let mut x12: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); - let mut x13: u64 = 0; - let mut x14: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (0x0 as u64), (arg1[6])); - let mut x15: u64 = 0; - let mut x16: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (0x0 as u64), (arg1[7])); - let mut x17: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); - let mut x18: u64 = 0; - let mut x19: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); - let mut x20: u64 = 0; - let mut x21: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); - let mut x22: u64 = 0; - let mut x23: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); - let mut x24: u64 = 0; - let mut x25: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); - let mut x26: u64 = 0; - let mut x27: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); - let mut x28: u64 = 0; - let mut x29: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); - let mut x30: u64 = 0; - let mut x31: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); - let mut x32: u64 = 0; - let mut x33: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); - out1[0] = x18; - out1[1] = x20; - out1[2] = x22; - out1[3] = x24; - out1[4] = x26; - out1[5] = x28; - out1[6] = x30; - out1[7] = x32; +pub fn fiat_bp512_opp( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x13, &mut x14, x12, (0x0 as u64), (arg1[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x15, &mut x16, x14, (0x0 as u64), (arg1[7])); + let mut x17: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0x28aa6056583a48f3)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x2881ff2f2d82c685)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0xaecda12ae6a380e6)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x7d4d9b009bc66842)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330871)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; } /// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. @@ -2879,783 +2909,828 @@ pub fn fiat_bp512_opp(out1: &mut fiat_bp512_montgomery_domain_field_element, arg /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element) { - let x1: u64 = (arg1[0]); - let mut x2: u64 = 0; - let mut x3: u64 = 0; - fiat_bp512_mulx_u64(&mut x2, &mut x3, x1, 0x839b32207d89efc5); - let mut x4: u64 = 0; - let mut x5: u64 = 0; - fiat_bp512_mulx_u64(&mut x4, &mut x5, x2, 0xaadd9db8dbe9c48b); - let mut x6: u64 = 0; - let mut x7: u64 = 0; - fiat_bp512_mulx_u64(&mut x6, &mut x7, x2, 0x3fd4e6ae33c9fc07); - let mut x8: u64 = 0; - let mut x9: u64 = 0; - fiat_bp512_mulx_u64(&mut x8, &mut x9, x2, 0xcb308db3b3c9d20e); - let mut x10: u64 = 0; - let mut x11: u64 = 0; - fiat_bp512_mulx_u64(&mut x10, &mut x11, x2, 0xd6639cca70330871); - let mut x12: u64 = 0; - let mut x13: u64 = 0; - fiat_bp512_mulx_u64(&mut x12, &mut x13, x2, 0x7d4d9b009bc66842); - let mut x14: u64 = 0; - let mut x15: u64 = 0; - fiat_bp512_mulx_u64(&mut x14, &mut x15, x2, 0xaecda12ae6a380e6); - let mut x16: u64 = 0; - let mut x17: u64 = 0; - fiat_bp512_mulx_u64(&mut x16, &mut x17, x2, 0x2881ff2f2d82c685); - let mut x18: u64 = 0; - let mut x19: u64 = 0; - fiat_bp512_mulx_u64(&mut x18, &mut x19, x2, 0x28aa6056583a48f3); - let mut x20: u64 = 0; - let mut x21: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x20, &mut x21, 0x0, x19, x16); - let mut x22: u64 = 0; - let mut x23: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x17, x14); - let mut x24: u64 = 0; - let mut x25: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x15, x12); - let mut x26: u64 = 0; - let mut x27: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x13, x10); - let mut x28: u64 = 0; - let mut x29: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, x8); - let mut x30: u64 = 0; - let mut x31: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x9, x6); - let mut x32: u64 = 0; - let mut x33: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x7, x4); - let mut x34: u64 = 0; - let mut x35: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x34, &mut x35, 0x0, x1, x18); - let mut x36: u64 = 0; - let mut x37: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x20); - let mut x38: u64 = 0; - let mut x39: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x38, &mut x39, x37, (0x0 as u64), x22); - let mut x40: u64 = 0; - let mut x41: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x40, &mut x41, x39, (0x0 as u64), x24); - let mut x42: u64 = 0; - let mut x43: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x42, &mut x43, x41, (0x0 as u64), x26); - let mut x44: u64 = 0; - let mut x45: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x44, &mut x45, x43, (0x0 as u64), x28); - let mut x46: u64 = 0; - let mut x47: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x46, &mut x47, x45, (0x0 as u64), x30); - let mut x48: u64 = 0; - let mut x49: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x48, &mut x49, x47, (0x0 as u64), x32); - let mut x50: u64 = 0; - let mut x51: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x50, &mut x51, 0x0, x36, (arg1[1])); - let mut x52: u64 = 0; - let mut x53: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x52, &mut x53, x51, x38, (0x0 as u64)); - let mut x54: u64 = 0; - let mut x55: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x54, &mut x55, x53, x40, (0x0 as u64)); - let mut x56: u64 = 0; - let mut x57: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x56, &mut x57, x55, x42, (0x0 as u64)); - let mut x58: u64 = 0; - let mut x59: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x58, &mut x59, x57, x44, (0x0 as u64)); - let mut x60: u64 = 0; - let mut x61: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x46, (0x0 as u64)); - let mut x62: u64 = 0; - let mut x63: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x48, (0x0 as u64)); - let mut x64: u64 = 0; - let mut x65: u64 = 0; - fiat_bp512_mulx_u64(&mut x64, &mut x65, x50, 0x839b32207d89efc5); - let mut x66: u64 = 0; - let mut x67: u64 = 0; - fiat_bp512_mulx_u64(&mut x66, &mut x67, x64, 0xaadd9db8dbe9c48b); - let mut x68: u64 = 0; - let mut x69: u64 = 0; - fiat_bp512_mulx_u64(&mut x68, &mut x69, x64, 0x3fd4e6ae33c9fc07); - let mut x70: u64 = 0; - let mut x71: u64 = 0; - fiat_bp512_mulx_u64(&mut x70, &mut x71, x64, 0xcb308db3b3c9d20e); - let mut x72: u64 = 0; - let mut x73: u64 = 0; - fiat_bp512_mulx_u64(&mut x72, &mut x73, x64, 0xd6639cca70330871); - let mut x74: u64 = 0; - let mut x75: u64 = 0; - fiat_bp512_mulx_u64(&mut x74, &mut x75, x64, 0x7d4d9b009bc66842); - let mut x76: u64 = 0; - let mut x77: u64 = 0; - fiat_bp512_mulx_u64(&mut x76, &mut x77, x64, 0xaecda12ae6a380e6); - let mut x78: u64 = 0; - let mut x79: u64 = 0; - fiat_bp512_mulx_u64(&mut x78, &mut x79, x64, 0x2881ff2f2d82c685); - let mut x80: u64 = 0; - let mut x81: u64 = 0; - fiat_bp512_mulx_u64(&mut x80, &mut x81, x64, 0x28aa6056583a48f3); - let mut x82: u64 = 0; - let mut x83: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x82, &mut x83, 0x0, x81, x78); - let mut x84: u64 = 0; - let mut x85: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x84, &mut x85, x83, x79, x76); - let mut x86: u64 = 0; - let mut x87: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x86, &mut x87, x85, x77, x74); - let mut x88: u64 = 0; - let mut x89: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x88, &mut x89, x87, x75, x72); - let mut x90: u64 = 0; - let mut x91: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x90, &mut x91, x89, x73, x70); - let mut x92: u64 = 0; - let mut x93: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x92, &mut x93, x91, x71, x68); - let mut x94: u64 = 0; - let mut x95: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x94, &mut x95, x93, x69, x66); - let mut x96: u64 = 0; - let mut x97: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x96, &mut x97, 0x0, x50, x80); - let mut x98: u64 = 0; - let mut x99: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x98, &mut x99, x97, x52, x82); - let mut x100: u64 = 0; - let mut x101: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x100, &mut x101, x99, x54, x84); - let mut x102: u64 = 0; - let mut x103: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x102, &mut x103, x101, x56, x86); - let mut x104: u64 = 0; - let mut x105: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x104, &mut x105, x103, x58, x88); - let mut x106: u64 = 0; - let mut x107: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x106, &mut x107, x105, x60, x90); - let mut x108: u64 = 0; - let mut x109: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x108, &mut x109, x107, x62, x92); - let mut x110: u64 = 0; - let mut x111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x110, &mut x111, x109, ((x63 as u64) + ((x49 as u64) + ((x33 as u64) + x5))), x94); - let mut x112: u64 = 0; - let mut x113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x112, &mut x113, 0x0, x98, (arg1[2])); - let mut x114: u64 = 0; - let mut x115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x100, (0x0 as u64)); - let mut x116: u64 = 0; - let mut x117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x102, (0x0 as u64)); - let mut x118: u64 = 0; - let mut x119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x118, &mut x119, x117, x104, (0x0 as u64)); - let mut x120: u64 = 0; - let mut x121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x120, &mut x121, x119, x106, (0x0 as u64)); - let mut x122: u64 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x122, &mut x123, x121, x108, (0x0 as u64)); - let mut x124: u64 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x110, (0x0 as u64)); - let mut x126: u64 = 0; - let mut x127: u64 = 0; - fiat_bp512_mulx_u64(&mut x126, &mut x127, x112, 0x839b32207d89efc5); - let mut x128: u64 = 0; - let mut x129: u64 = 0; - fiat_bp512_mulx_u64(&mut x128, &mut x129, x126, 0xaadd9db8dbe9c48b); - let mut x130: u64 = 0; - let mut x131: u64 = 0; - fiat_bp512_mulx_u64(&mut x130, &mut x131, x126, 0x3fd4e6ae33c9fc07); - let mut x132: u64 = 0; - let mut x133: u64 = 0; - fiat_bp512_mulx_u64(&mut x132, &mut x133, x126, 0xcb308db3b3c9d20e); - let mut x134: u64 = 0; - let mut x135: u64 = 0; - fiat_bp512_mulx_u64(&mut x134, &mut x135, x126, 0xd6639cca70330871); - let mut x136: u64 = 0; - let mut x137: u64 = 0; - fiat_bp512_mulx_u64(&mut x136, &mut x137, x126, 0x7d4d9b009bc66842); - let mut x138: u64 = 0; - let mut x139: u64 = 0; - fiat_bp512_mulx_u64(&mut x138, &mut x139, x126, 0xaecda12ae6a380e6); - let mut x140: u64 = 0; - let mut x141: u64 = 0; - fiat_bp512_mulx_u64(&mut x140, &mut x141, x126, 0x2881ff2f2d82c685); - let mut x142: u64 = 0; - let mut x143: u64 = 0; - fiat_bp512_mulx_u64(&mut x142, &mut x143, x126, 0x28aa6056583a48f3); - let mut x144: u64 = 0; - let mut x145: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x143, x140); - let mut x146: u64 = 0; - let mut x147: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x141, x138); - let mut x148: u64 = 0; - let mut x149: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x139, x136); - let mut x150: u64 = 0; - let mut x151: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x137, x134); - let mut x152: u64 = 0; - let mut x153: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x135, x132); - let mut x154: u64 = 0; - let mut x155: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x133, x130); - let mut x156: u64 = 0; - let mut x157: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x131, x128); - let mut x158: u64 = 0; - let mut x159: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x112, x142); - let mut x160: u64 = 0; - let mut x161: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x114, x144); - let mut x162: u64 = 0; - let mut x163: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x116, x146); - let mut x164: u64 = 0; - let mut x165: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x118, x148); - let mut x166: u64 = 0; - let mut x167: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x120, x150); - let mut x168: u64 = 0; - let mut x169: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x122, x152); - let mut x170: u64 = 0; - let mut x171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x124, x154); - let mut x172: u64 = 0; - let mut x173: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x172, &mut x173, x171, ((x125 as u64) + ((x111 as u64) + ((x95 as u64) + x67))), x156); - let mut x174: u64 = 0; - let mut x175: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x174, &mut x175, 0x0, x160, (arg1[3])); - let mut x176: u64 = 0; - let mut x177: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x162, (0x0 as u64)); - let mut x178: u64 = 0; - let mut x179: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x164, (0x0 as u64)); - let mut x180: u64 = 0; - let mut x181: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x166, (0x0 as u64)); - let mut x182: u64 = 0; - let mut x183: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x168, (0x0 as u64)); - let mut x184: u64 = 0; - let mut x185: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x170, (0x0 as u64)); - let mut x186: u64 = 0; - let mut x187: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x186, &mut x187, x185, x172, (0x0 as u64)); - let mut x188: u64 = 0; - let mut x189: u64 = 0; - fiat_bp512_mulx_u64(&mut x188, &mut x189, x174, 0x839b32207d89efc5); - let mut x190: u64 = 0; - let mut x191: u64 = 0; - fiat_bp512_mulx_u64(&mut x190, &mut x191, x188, 0xaadd9db8dbe9c48b); - let mut x192: u64 = 0; - let mut x193: u64 = 0; - fiat_bp512_mulx_u64(&mut x192, &mut x193, x188, 0x3fd4e6ae33c9fc07); - let mut x194: u64 = 0; - let mut x195: u64 = 0; - fiat_bp512_mulx_u64(&mut x194, &mut x195, x188, 0xcb308db3b3c9d20e); - let mut x196: u64 = 0; - let mut x197: u64 = 0; - fiat_bp512_mulx_u64(&mut x196, &mut x197, x188, 0xd6639cca70330871); - let mut x198: u64 = 0; - let mut x199: u64 = 0; - fiat_bp512_mulx_u64(&mut x198, &mut x199, x188, 0x7d4d9b009bc66842); - let mut x200: u64 = 0; - let mut x201: u64 = 0; - fiat_bp512_mulx_u64(&mut x200, &mut x201, x188, 0xaecda12ae6a380e6); - let mut x202: u64 = 0; - let mut x203: u64 = 0; - fiat_bp512_mulx_u64(&mut x202, &mut x203, x188, 0x2881ff2f2d82c685); - let mut x204: u64 = 0; - let mut x205: u64 = 0; - fiat_bp512_mulx_u64(&mut x204, &mut x205, x188, 0x28aa6056583a48f3); - let mut x206: u64 = 0; - let mut x207: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x206, &mut x207, 0x0, x205, x202); - let mut x208: u64 = 0; - let mut x209: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x208, &mut x209, x207, x203, x200); - let mut x210: u64 = 0; - let mut x211: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x201, x198); - let mut x212: u64 = 0; - let mut x213: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x199, x196); - let mut x214: u64 = 0; - let mut x215: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x197, x194); - let mut x216: u64 = 0; - let mut x217: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x195, x192); - let mut x218: u64 = 0; - let mut x219: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x193, x190); - let mut x220: u64 = 0; - let mut x221: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x220, &mut x221, 0x0, x174, x204); - let mut x222: u64 = 0; - let mut x223: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x222, &mut x223, x221, x176, x206); - let mut x224: u64 = 0; - let mut x225: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x224, &mut x225, x223, x178, x208); - let mut x226: u64 = 0; - let mut x227: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x226, &mut x227, x225, x180, x210); - let mut x228: u64 = 0; - let mut x229: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x228, &mut x229, x227, x182, x212); - let mut x230: u64 = 0; - let mut x231: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x230, &mut x231, x229, x184, x214); - let mut x232: u64 = 0; - let mut x233: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x232, &mut x233, x231, x186, x216); - let mut x234: u64 = 0; - let mut x235: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x234, &mut x235, x233, ((x187 as u64) + ((x173 as u64) + ((x157 as u64) + x129))), x218); - let mut x236: u64 = 0; - let mut x237: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x236, &mut x237, 0x0, x222, (arg1[4])); - let mut x238: u64 = 0; - let mut x239: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x238, &mut x239, x237, x224, (0x0 as u64)); - let mut x240: u64 = 0; - let mut x241: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x240, &mut x241, x239, x226, (0x0 as u64)); - let mut x242: u64 = 0; - let mut x243: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x242, &mut x243, x241, x228, (0x0 as u64)); - let mut x244: u64 = 0; - let mut x245: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x244, &mut x245, x243, x230, (0x0 as u64)); - let mut x246: u64 = 0; - let mut x247: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x246, &mut x247, x245, x232, (0x0 as u64)); - let mut x248: u64 = 0; - let mut x249: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x248, &mut x249, x247, x234, (0x0 as u64)); - let mut x250: u64 = 0; - let mut x251: u64 = 0; - fiat_bp512_mulx_u64(&mut x250, &mut x251, x236, 0x839b32207d89efc5); - let mut x252: u64 = 0; - let mut x253: u64 = 0; - fiat_bp512_mulx_u64(&mut x252, &mut x253, x250, 0xaadd9db8dbe9c48b); - let mut x254: u64 = 0; - let mut x255: u64 = 0; - fiat_bp512_mulx_u64(&mut x254, &mut x255, x250, 0x3fd4e6ae33c9fc07); - let mut x256: u64 = 0; - let mut x257: u64 = 0; - fiat_bp512_mulx_u64(&mut x256, &mut x257, x250, 0xcb308db3b3c9d20e); - let mut x258: u64 = 0; - let mut x259: u64 = 0; - fiat_bp512_mulx_u64(&mut x258, &mut x259, x250, 0xd6639cca70330871); - let mut x260: u64 = 0; - let mut x261: u64 = 0; - fiat_bp512_mulx_u64(&mut x260, &mut x261, x250, 0x7d4d9b009bc66842); - let mut x262: u64 = 0; - let mut x263: u64 = 0; - fiat_bp512_mulx_u64(&mut x262, &mut x263, x250, 0xaecda12ae6a380e6); - let mut x264: u64 = 0; - let mut x265: u64 = 0; - fiat_bp512_mulx_u64(&mut x264, &mut x265, x250, 0x2881ff2f2d82c685); - let mut x266: u64 = 0; - let mut x267: u64 = 0; - fiat_bp512_mulx_u64(&mut x266, &mut x267, x250, 0x28aa6056583a48f3); - let mut x268: u64 = 0; - let mut x269: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x268, &mut x269, 0x0, x267, x264); - let mut x270: u64 = 0; - let mut x271: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x270, &mut x271, x269, x265, x262); - let mut x272: u64 = 0; - let mut x273: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x272, &mut x273, x271, x263, x260); - let mut x274: u64 = 0; - let mut x275: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x274, &mut x275, x273, x261, x258); - let mut x276: u64 = 0; - let mut x277: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x259, x256); - let mut x278: u64 = 0; - let mut x279: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x257, x254); - let mut x280: u64 = 0; - let mut x281: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x255, x252); - let mut x282: u64 = 0; - let mut x283: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x282, &mut x283, 0x0, x236, x266); - let mut x284: u64 = 0; - let mut x285: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x238, x268); - let mut x286: u64 = 0; - let mut x287: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x240, x270); - let mut x288: u64 = 0; - let mut x289: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x242, x272); - let mut x290: u64 = 0; - let mut x291: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x244, x274); - let mut x292: u64 = 0; - let mut x293: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x292, &mut x293, x291, x246, x276); - let mut x294: u64 = 0; - let mut x295: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x294, &mut x295, x293, x248, x278); - let mut x296: u64 = 0; - let mut x297: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x296, &mut x297, x295, ((x249 as u64) + ((x235 as u64) + ((x219 as u64) + x191))), x280); - let mut x298: u64 = 0; - let mut x299: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x298, &mut x299, 0x0, x284, (arg1[5])); - let mut x300: u64 = 0; - let mut x301: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x300, &mut x301, x299, x286, (0x0 as u64)); - let mut x302: u64 = 0; - let mut x303: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x302, &mut x303, x301, x288, (0x0 as u64)); - let mut x304: u64 = 0; - let mut x305: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x304, &mut x305, x303, x290, (0x0 as u64)); - let mut x306: u64 = 0; - let mut x307: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x306, &mut x307, x305, x292, (0x0 as u64)); - let mut x308: u64 = 0; - let mut x309: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x308, &mut x309, x307, x294, (0x0 as u64)); - let mut x310: u64 = 0; - let mut x311: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x310, &mut x311, x309, x296, (0x0 as u64)); - let mut x312: u64 = 0; - let mut x313: u64 = 0; - fiat_bp512_mulx_u64(&mut x312, &mut x313, x298, 0x839b32207d89efc5); - let mut x314: u64 = 0; - let mut x315: u64 = 0; - fiat_bp512_mulx_u64(&mut x314, &mut x315, x312, 0xaadd9db8dbe9c48b); - let mut x316: u64 = 0; - let mut x317: u64 = 0; - fiat_bp512_mulx_u64(&mut x316, &mut x317, x312, 0x3fd4e6ae33c9fc07); - let mut x318: u64 = 0; - let mut x319: u64 = 0; - fiat_bp512_mulx_u64(&mut x318, &mut x319, x312, 0xcb308db3b3c9d20e); - let mut x320: u64 = 0; - let mut x321: u64 = 0; - fiat_bp512_mulx_u64(&mut x320, &mut x321, x312, 0xd6639cca70330871); - let mut x322: u64 = 0; - let mut x323: u64 = 0; - fiat_bp512_mulx_u64(&mut x322, &mut x323, x312, 0x7d4d9b009bc66842); - let mut x324: u64 = 0; - let mut x325: u64 = 0; - fiat_bp512_mulx_u64(&mut x324, &mut x325, x312, 0xaecda12ae6a380e6); - let mut x326: u64 = 0; - let mut x327: u64 = 0; - fiat_bp512_mulx_u64(&mut x326, &mut x327, x312, 0x2881ff2f2d82c685); - let mut x328: u64 = 0; - let mut x329: u64 = 0; - fiat_bp512_mulx_u64(&mut x328, &mut x329, x312, 0x28aa6056583a48f3); - let mut x330: u64 = 0; - let mut x331: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x330, &mut x331, 0x0, x329, x326); - let mut x332: u64 = 0; - let mut x333: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x327, x324); - let mut x334: u64 = 0; - let mut x335: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x325, x322); - let mut x336: u64 = 0; - let mut x337: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x323, x320); - let mut x338: u64 = 0; - let mut x339: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x321, x318); - let mut x340: u64 = 0; - let mut x341: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x319, x316); - let mut x342: u64 = 0; - let mut x343: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x342, &mut x343, x341, x317, x314); - let mut x344: u64 = 0; - let mut x345: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x344, &mut x345, 0x0, x298, x328); - let mut x346: u64 = 0; - let mut x347: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x346, &mut x347, x345, x300, x330); - let mut x348: u64 = 0; - let mut x349: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x348, &mut x349, x347, x302, x332); - let mut x350: u64 = 0; - let mut x351: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x350, &mut x351, x349, x304, x334); - let mut x352: u64 = 0; - let mut x353: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x352, &mut x353, x351, x306, x336); - let mut x354: u64 = 0; - let mut x355: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x354, &mut x355, x353, x308, x338); - let mut x356: u64 = 0; - let mut x357: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x356, &mut x357, x355, x310, x340); - let mut x358: u64 = 0; - let mut x359: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x358, &mut x359, x357, ((x311 as u64) + ((x297 as u64) + ((x281 as u64) + x253))), x342); - let mut x360: u64 = 0; - let mut x361: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x346, (arg1[6])); - let mut x362: u64 = 0; - let mut x363: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x348, (0x0 as u64)); - let mut x364: u64 = 0; - let mut x365: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x350, (0x0 as u64)); - let mut x366: u64 = 0; - let mut x367: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x352, (0x0 as u64)); - let mut x368: u64 = 0; - let mut x369: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x354, (0x0 as u64)); - let mut x370: u64 = 0; - let mut x371: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x356, (0x0 as u64)); - let mut x372: u64 = 0; - let mut x373: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x358, (0x0 as u64)); - let mut x374: u64 = 0; - let mut x375: u64 = 0; - fiat_bp512_mulx_u64(&mut x374, &mut x375, x360, 0x839b32207d89efc5); - let mut x376: u64 = 0; - let mut x377: u64 = 0; - fiat_bp512_mulx_u64(&mut x376, &mut x377, x374, 0xaadd9db8dbe9c48b); - let mut x378: u64 = 0; - let mut x379: u64 = 0; - fiat_bp512_mulx_u64(&mut x378, &mut x379, x374, 0x3fd4e6ae33c9fc07); - let mut x380: u64 = 0; - let mut x381: u64 = 0; - fiat_bp512_mulx_u64(&mut x380, &mut x381, x374, 0xcb308db3b3c9d20e); - let mut x382: u64 = 0; - let mut x383: u64 = 0; - fiat_bp512_mulx_u64(&mut x382, &mut x383, x374, 0xd6639cca70330871); - let mut x384: u64 = 0; - let mut x385: u64 = 0; - fiat_bp512_mulx_u64(&mut x384, &mut x385, x374, 0x7d4d9b009bc66842); - let mut x386: u64 = 0; - let mut x387: u64 = 0; - fiat_bp512_mulx_u64(&mut x386, &mut x387, x374, 0xaecda12ae6a380e6); - let mut x388: u64 = 0; - let mut x389: u64 = 0; - fiat_bp512_mulx_u64(&mut x388, &mut x389, x374, 0x2881ff2f2d82c685); - let mut x390: u64 = 0; - let mut x391: u64 = 0; - fiat_bp512_mulx_u64(&mut x390, &mut x391, x374, 0x28aa6056583a48f3); - let mut x392: u64 = 0; - let mut x393: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x392, &mut x393, 0x0, x391, x388); - let mut x394: u64 = 0; - let mut x395: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x394, &mut x395, x393, x389, x386); - let mut x396: u64 = 0; - let mut x397: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x396, &mut x397, x395, x387, x384); - let mut x398: u64 = 0; - let mut x399: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x398, &mut x399, x397, x385, x382); - let mut x400: u64 = 0; - let mut x401: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x400, &mut x401, x399, x383, x380); - let mut x402: u64 = 0; - let mut x403: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x402, &mut x403, x401, x381, x378); - let mut x404: u64 = 0; - let mut x405: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x404, &mut x405, x403, x379, x376); - let mut x406: u64 = 0; - let mut x407: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x406, &mut x407, 0x0, x360, x390); - let mut x408: u64 = 0; - let mut x409: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x408, &mut x409, x407, x362, x392); - let mut x410: u64 = 0; - let mut x411: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x410, &mut x411, x409, x364, x394); - let mut x412: u64 = 0; - let mut x413: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x366, x396); - let mut x414: u64 = 0; - let mut x415: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x368, x398); - let mut x416: u64 = 0; - let mut x417: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x370, x400); - let mut x418: u64 = 0; - let mut x419: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x372, x402); - let mut x420: u64 = 0; - let mut x421: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x420, &mut x421, x419, ((x373 as u64) + ((x359 as u64) + ((x343 as u64) + x315))), x404); - let mut x422: u64 = 0; - let mut x423: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x422, &mut x423, 0x0, x408, (arg1[7])); - let mut x424: u64 = 0; - let mut x425: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x424, &mut x425, x423, x410, (0x0 as u64)); - let mut x426: u64 = 0; - let mut x427: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x426, &mut x427, x425, x412, (0x0 as u64)); - let mut x428: u64 = 0; - let mut x429: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x428, &mut x429, x427, x414, (0x0 as u64)); - let mut x430: u64 = 0; - let mut x431: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x430, &mut x431, x429, x416, (0x0 as u64)); - let mut x432: u64 = 0; - let mut x433: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x432, &mut x433, x431, x418, (0x0 as u64)); - let mut x434: u64 = 0; - let mut x435: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x434, &mut x435, x433, x420, (0x0 as u64)); - let mut x436: u64 = 0; - let mut x437: u64 = 0; - fiat_bp512_mulx_u64(&mut x436, &mut x437, x422, 0x839b32207d89efc5); - let mut x438: u64 = 0; - let mut x439: u64 = 0; - fiat_bp512_mulx_u64(&mut x438, &mut x439, x436, 0xaadd9db8dbe9c48b); - let mut x440: u64 = 0; - let mut x441: u64 = 0; - fiat_bp512_mulx_u64(&mut x440, &mut x441, x436, 0x3fd4e6ae33c9fc07); - let mut x442: u64 = 0; - let mut x443: u64 = 0; - fiat_bp512_mulx_u64(&mut x442, &mut x443, x436, 0xcb308db3b3c9d20e); - let mut x444: u64 = 0; - let mut x445: u64 = 0; - fiat_bp512_mulx_u64(&mut x444, &mut x445, x436, 0xd6639cca70330871); - let mut x446: u64 = 0; - let mut x447: u64 = 0; - fiat_bp512_mulx_u64(&mut x446, &mut x447, x436, 0x7d4d9b009bc66842); - let mut x448: u64 = 0; - let mut x449: u64 = 0; - fiat_bp512_mulx_u64(&mut x448, &mut x449, x436, 0xaecda12ae6a380e6); - let mut x450: u64 = 0; - let mut x451: u64 = 0; - fiat_bp512_mulx_u64(&mut x450, &mut x451, x436, 0x2881ff2f2d82c685); - let mut x452: u64 = 0; - let mut x453: u64 = 0; - fiat_bp512_mulx_u64(&mut x452, &mut x453, x436, 0x28aa6056583a48f3); - let mut x454: u64 = 0; - let mut x455: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x454, &mut x455, 0x0, x453, x450); - let mut x456: u64 = 0; - let mut x457: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x456, &mut x457, x455, x451, x448); - let mut x458: u64 = 0; - let mut x459: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x458, &mut x459, x457, x449, x446); - let mut x460: u64 = 0; - let mut x461: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x460, &mut x461, x459, x447, x444); - let mut x462: u64 = 0; - let mut x463: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x462, &mut x463, x461, x445, x442); - let mut x464: u64 = 0; - let mut x465: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x464, &mut x465, x463, x443, x440); - let mut x466: u64 = 0; - let mut x467: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x466, &mut x467, x465, x441, x438); - let mut x468: u64 = 0; - let mut x469: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x468, &mut x469, 0x0, x422, x452); - let mut x470: u64 = 0; - let mut x471: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x470, &mut x471, x469, x424, x454); - let mut x472: u64 = 0; - let mut x473: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x472, &mut x473, x471, x426, x456); - let mut x474: u64 = 0; - let mut x475: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x474, &mut x475, x473, x428, x458); - let mut x476: u64 = 0; - let mut x477: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x476, &mut x477, x475, x430, x460); - let mut x478: u64 = 0; - let mut x479: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x432, x462); - let mut x480: u64 = 0; - let mut x481: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x434, x464); - let mut x482: u64 = 0; - let mut x483: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x482, &mut x483, x481, ((x435 as u64) + ((x421 as u64) + ((x405 as u64) + x377))), x466); - let x484: u64 = ((x483 as u64) + ((x467 as u64) + x439)); - let mut x485: u64 = 0; - let mut x486: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x485, &mut x486, 0x0, x470, 0x28aa6056583a48f3); - let mut x487: u64 = 0; - let mut x488: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x487, &mut x488, x486, x472, 0x2881ff2f2d82c685); - let mut x489: u64 = 0; - let mut x490: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x489, &mut x490, x488, x474, 0xaecda12ae6a380e6); - let mut x491: u64 = 0; - let mut x492: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x491, &mut x492, x490, x476, 0x7d4d9b009bc66842); - let mut x493: u64 = 0; - let mut x494: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x493, &mut x494, x492, x478, 0xd6639cca70330871); - let mut x495: u64 = 0; - let mut x496: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x495, &mut x496, x494, x480, 0xcb308db3b3c9d20e); - let mut x497: u64 = 0; - let mut x498: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x497, &mut x498, x496, x482, 0x3fd4e6ae33c9fc07); - let mut x499: u64 = 0; - let mut x500: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x499, &mut x500, x498, x484, 0xaadd9db8dbe9c48b); - let mut x501: u64 = 0; - let mut x502: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x501, &mut x502, x500, (0x0 as u64), (0x0 as u64)); - let mut x503: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x503, x502, x485, x470); - let mut x504: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x504, x502, x487, x472); - let mut x505: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x505, x502, x489, x474); - let mut x506: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x506, x502, x491, x476); - let mut x507: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x507, x502, x493, x478); - let mut x508: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x508, x502, x495, x480); - let mut x509: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x509, x502, x497, x482); - let mut x510: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x510, x502, x499, x484); - out1[0] = x503; - out1[1] = x504; - out1[2] = x505; - out1[3] = x506; - out1[4] = x507; - out1[5] = x508; - out1[6] = x509; - out1[7] = x510; +pub fn fiat_bp512_from_montgomery( + out1: &mut fiat_bp512_non_montgomery_domain_field_element, + arg1: &fiat_bp512_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[0]); + let mut x2: u64 = 0; + let mut x3: u64 = 0; + fiat_bp512_mulx_u64(&mut x2, &mut x3, x1, 0x839b32207d89efc5); + let mut x4: u64 = 0; + let mut x5: u64 = 0; + fiat_bp512_mulx_u64(&mut x4, &mut x5, x2, 0xaadd9db8dbe9c48b); + let mut x6: u64 = 0; + let mut x7: u64 = 0; + fiat_bp512_mulx_u64(&mut x6, &mut x7, x2, 0x3fd4e6ae33c9fc07); + let mut x8: u64 = 0; + let mut x9: u64 = 0; + fiat_bp512_mulx_u64(&mut x8, &mut x9, x2, 0xcb308db3b3c9d20e); + let mut x10: u64 = 0; + let mut x11: u64 = 0; + fiat_bp512_mulx_u64(&mut x10, &mut x11, x2, 0xd6639cca70330871); + let mut x12: u64 = 0; + let mut x13: u64 = 0; + fiat_bp512_mulx_u64(&mut x12, &mut x13, x2, 0x7d4d9b009bc66842); + let mut x14: u64 = 0; + let mut x15: u64 = 0; + fiat_bp512_mulx_u64(&mut x14, &mut x15, x2, 0xaecda12ae6a380e6); + let mut x16: u64 = 0; + let mut x17: u64 = 0; + fiat_bp512_mulx_u64(&mut x16, &mut x17, x2, 0x2881ff2f2d82c685); + let mut x18: u64 = 0; + let mut x19: u64 = 0; + fiat_bp512_mulx_u64(&mut x18, &mut x19, x2, 0x28aa6056583a48f3); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, 0x0, x19, x16); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, x17, x14); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, x15, x12); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, x13, x10); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, x11, x8); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, x9, x6); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, x7, x4); + let mut x34: u64 = 0; + let mut x35: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x34, &mut x35, 0x0, x1, x18); + let mut x36: u64 = 0; + let mut x37: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x20); + let mut x38: u64 = 0; + let mut x39: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x38, &mut x39, x37, (0x0 as u64), x22); + let mut x40: u64 = 0; + let mut x41: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x40, &mut x41, x39, (0x0 as u64), x24); + let mut x42: u64 = 0; + let mut x43: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x42, &mut x43, x41, (0x0 as u64), x26); + let mut x44: u64 = 0; + let mut x45: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x44, &mut x45, x43, (0x0 as u64), x28); + let mut x46: u64 = 0; + let mut x47: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x46, &mut x47, x45, (0x0 as u64), x30); + let mut x48: u64 = 0; + let mut x49: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x48, &mut x49, x47, (0x0 as u64), x32); + let mut x50: u64 = 0; + let mut x51: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x50, &mut x51, 0x0, x36, (arg1[1])); + let mut x52: u64 = 0; + let mut x53: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x52, &mut x53, x51, x38, (0x0 as u64)); + let mut x54: u64 = 0; + let mut x55: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x54, &mut x55, x53, x40, (0x0 as u64)); + let mut x56: u64 = 0; + let mut x57: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x56, &mut x57, x55, x42, (0x0 as u64)); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x58, &mut x59, x57, x44, (0x0 as u64)); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x60, &mut x61, x59, x46, (0x0 as u64)); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x62, &mut x63, x61, x48, (0x0 as u64)); + let mut x64: u64 = 0; + let mut x65: u64 = 0; + fiat_bp512_mulx_u64(&mut x64, &mut x65, x50, 0x839b32207d89efc5); + let mut x66: u64 = 0; + let mut x67: u64 = 0; + fiat_bp512_mulx_u64(&mut x66, &mut x67, x64, 0xaadd9db8dbe9c48b); + let mut x68: u64 = 0; + let mut x69: u64 = 0; + fiat_bp512_mulx_u64(&mut x68, &mut x69, x64, 0x3fd4e6ae33c9fc07); + let mut x70: u64 = 0; + let mut x71: u64 = 0; + fiat_bp512_mulx_u64(&mut x70, &mut x71, x64, 0xcb308db3b3c9d20e); + let mut x72: u64 = 0; + let mut x73: u64 = 0; + fiat_bp512_mulx_u64(&mut x72, &mut x73, x64, 0xd6639cca70330871); + let mut x74: u64 = 0; + let mut x75: u64 = 0; + fiat_bp512_mulx_u64(&mut x74, &mut x75, x64, 0x7d4d9b009bc66842); + let mut x76: u64 = 0; + let mut x77: u64 = 0; + fiat_bp512_mulx_u64(&mut x76, &mut x77, x64, 0xaecda12ae6a380e6); + let mut x78: u64 = 0; + let mut x79: u64 = 0; + fiat_bp512_mulx_u64(&mut x78, &mut x79, x64, 0x2881ff2f2d82c685); + let mut x80: u64 = 0; + let mut x81: u64 = 0; + fiat_bp512_mulx_u64(&mut x80, &mut x81, x64, 0x28aa6056583a48f3); + let mut x82: u64 = 0; + let mut x83: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x82, &mut x83, 0x0, x81, x78); + let mut x84: u64 = 0; + let mut x85: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x84, &mut x85, x83, x79, x76); + let mut x86: u64 = 0; + let mut x87: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x86, &mut x87, x85, x77, x74); + let mut x88: u64 = 0; + let mut x89: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x88, &mut x89, x87, x75, x72); + let mut x90: u64 = 0; + let mut x91: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x90, &mut x91, x89, x73, x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x92, &mut x93, x91, x71, x68); + let mut x94: u64 = 0; + let mut x95: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x94, &mut x95, x93, x69, x66); + let mut x96: u64 = 0; + let mut x97: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x96, &mut x97, 0x0, x50, x80); + let mut x98: u64 = 0; + let mut x99: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x98, &mut x99, x97, x52, x82); + let mut x100: u64 = 0; + let mut x101: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x100, &mut x101, x99, x54, x84); + let mut x102: u64 = 0; + let mut x103: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x102, &mut x103, x101, x56, x86); + let mut x104: u64 = 0; + let mut x105: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x104, &mut x105, x103, x58, x88); + let mut x106: u64 = 0; + let mut x107: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x106, &mut x107, x105, x60, x90); + let mut x108: u64 = 0; + let mut x109: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x108, &mut x109, x107, x62, x92); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x110, + &mut x111, + x109, + ((x63 as u64) + ((x49 as u64) + ((x33 as u64) + x5))), + x94, + ); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x112, &mut x113, 0x0, x98, (arg1[2])); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x100, (0x0 as u64)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x102, (0x0 as u64)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x118, &mut x119, x117, x104, (0x0 as u64)); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x120, &mut x121, x119, x106, (0x0 as u64)); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x122, &mut x123, x121, x108, (0x0 as u64)); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x110, (0x0 as u64)); + let mut x126: u64 = 0; + let mut x127: u64 = 0; + fiat_bp512_mulx_u64(&mut x126, &mut x127, x112, 0x839b32207d89efc5); + let mut x128: u64 = 0; + let mut x129: u64 = 0; + fiat_bp512_mulx_u64(&mut x128, &mut x129, x126, 0xaadd9db8dbe9c48b); + let mut x130: u64 = 0; + let mut x131: u64 = 0; + fiat_bp512_mulx_u64(&mut x130, &mut x131, x126, 0x3fd4e6ae33c9fc07); + let mut x132: u64 = 0; + let mut x133: u64 = 0; + fiat_bp512_mulx_u64(&mut x132, &mut x133, x126, 0xcb308db3b3c9d20e); + let mut x134: u64 = 0; + let mut x135: u64 = 0; + fiat_bp512_mulx_u64(&mut x134, &mut x135, x126, 0xd6639cca70330871); + let mut x136: u64 = 0; + let mut x137: u64 = 0; + fiat_bp512_mulx_u64(&mut x136, &mut x137, x126, 0x7d4d9b009bc66842); + let mut x138: u64 = 0; + let mut x139: u64 = 0; + fiat_bp512_mulx_u64(&mut x138, &mut x139, x126, 0xaecda12ae6a380e6); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_mulx_u64(&mut x140, &mut x141, x126, 0x2881ff2f2d82c685); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_mulx_u64(&mut x142, &mut x143, x126, 0x28aa6056583a48f3); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x143, x140); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x141, x138); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x139, x136); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x137, x134); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x135, x132); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x133, x130); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x131, x128); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, 0x0, x112, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x114, x144); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x162, &mut x163, x161, x116, x146); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x164, &mut x165, x163, x118, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x166, &mut x167, x165, x120, x150); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x168, &mut x169, x167, x122, x152); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, x169, x124, x154); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x172, + &mut x173, + x171, + ((x125 as u64) + ((x111 as u64) + ((x95 as u64) + x67))), + x156, + ); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x174, &mut x175, 0x0, x160, (arg1[3])); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x162, (0x0 as u64)); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x164, (0x0 as u64)); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x166, (0x0 as u64)); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x168, (0x0 as u64)); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x170, (0x0 as u64)); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x186, &mut x187, x185, x172, (0x0 as u64)); + let mut x188: u64 = 0; + let mut x189: u64 = 0; + fiat_bp512_mulx_u64(&mut x188, &mut x189, x174, 0x839b32207d89efc5); + let mut x190: u64 = 0; + let mut x191: u64 = 0; + fiat_bp512_mulx_u64(&mut x190, &mut x191, x188, 0xaadd9db8dbe9c48b); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_mulx_u64(&mut x192, &mut x193, x188, 0x3fd4e6ae33c9fc07); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_mulx_u64(&mut x194, &mut x195, x188, 0xcb308db3b3c9d20e); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_mulx_u64(&mut x196, &mut x197, x188, 0xd6639cca70330871); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_mulx_u64(&mut x198, &mut x199, x188, 0x7d4d9b009bc66842); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_mulx_u64(&mut x200, &mut x201, x188, 0xaecda12ae6a380e6); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_mulx_u64(&mut x202, &mut x203, x188, 0x2881ff2f2d82c685); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_mulx_u64(&mut x204, &mut x205, x188, 0x28aa6056583a48f3); + let mut x206: u64 = 0; + let mut x207: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x206, &mut x207, 0x0, x205, x202); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x208, &mut x209, x207, x203, x200); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x210, &mut x211, x209, x201, x198); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x212, &mut x213, x211, x199, x196); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x214, &mut x215, x213, x197, x194); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x216, &mut x217, x215, x195, x192); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x218, &mut x219, x217, x193, x190); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x220, &mut x221, 0x0, x174, x204); + let mut x222: u64 = 0; + let mut x223: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x222, &mut x223, x221, x176, x206); + let mut x224: u64 = 0; + let mut x225: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x224, &mut x225, x223, x178, x208); + let mut x226: u64 = 0; + let mut x227: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x226, &mut x227, x225, x180, x210); + let mut x228: u64 = 0; + let mut x229: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x228, &mut x229, x227, x182, x212); + let mut x230: u64 = 0; + let mut x231: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x230, &mut x231, x229, x184, x214); + let mut x232: u64 = 0; + let mut x233: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x232, &mut x233, x231, x186, x216); + let mut x234: u64 = 0; + let mut x235: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x234, + &mut x235, + x233, + ((x187 as u64) + ((x173 as u64) + ((x157 as u64) + x129))), + x218, + ); + let mut x236: u64 = 0; + let mut x237: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x236, &mut x237, 0x0, x222, (arg1[4])); + let mut x238: u64 = 0; + let mut x239: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x238, &mut x239, x237, x224, (0x0 as u64)); + let mut x240: u64 = 0; + let mut x241: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x240, &mut x241, x239, x226, (0x0 as u64)); + let mut x242: u64 = 0; + let mut x243: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x242, &mut x243, x241, x228, (0x0 as u64)); + let mut x244: u64 = 0; + let mut x245: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x244, &mut x245, x243, x230, (0x0 as u64)); + let mut x246: u64 = 0; + let mut x247: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x246, &mut x247, x245, x232, (0x0 as u64)); + let mut x248: u64 = 0; + let mut x249: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x248, &mut x249, x247, x234, (0x0 as u64)); + let mut x250: u64 = 0; + let mut x251: u64 = 0; + fiat_bp512_mulx_u64(&mut x250, &mut x251, x236, 0x839b32207d89efc5); + let mut x252: u64 = 0; + let mut x253: u64 = 0; + fiat_bp512_mulx_u64(&mut x252, &mut x253, x250, 0xaadd9db8dbe9c48b); + let mut x254: u64 = 0; + let mut x255: u64 = 0; + fiat_bp512_mulx_u64(&mut x254, &mut x255, x250, 0x3fd4e6ae33c9fc07); + let mut x256: u64 = 0; + let mut x257: u64 = 0; + fiat_bp512_mulx_u64(&mut x256, &mut x257, x250, 0xcb308db3b3c9d20e); + let mut x258: u64 = 0; + let mut x259: u64 = 0; + fiat_bp512_mulx_u64(&mut x258, &mut x259, x250, 0xd6639cca70330871); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp512_mulx_u64(&mut x260, &mut x261, x250, 0x7d4d9b009bc66842); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp512_mulx_u64(&mut x262, &mut x263, x250, 0xaecda12ae6a380e6); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp512_mulx_u64(&mut x264, &mut x265, x250, 0x2881ff2f2d82c685); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp512_mulx_u64(&mut x266, &mut x267, x250, 0x28aa6056583a48f3); + let mut x268: u64 = 0; + let mut x269: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x268, &mut x269, 0x0, x267, x264); + let mut x270: u64 = 0; + let mut x271: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x270, &mut x271, x269, x265, x262); + let mut x272: u64 = 0; + let mut x273: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x272, &mut x273, x271, x263, x260); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x274, &mut x275, x273, x261, x258); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x276, &mut x277, x275, x259, x256); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x278, &mut x279, x277, x257, x254); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x280, &mut x281, x279, x255, x252); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x282, &mut x283, 0x0, x236, x266); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x284, &mut x285, x283, x238, x268); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x286, &mut x287, x285, x240, x270); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x288, &mut x289, x287, x242, x272); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x290, &mut x291, x289, x244, x274); + let mut x292: u64 = 0; + let mut x293: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x292, &mut x293, x291, x246, x276); + let mut x294: u64 = 0; + let mut x295: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x294, &mut x295, x293, x248, x278); + let mut x296: u64 = 0; + let mut x297: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x296, + &mut x297, + x295, + ((x249 as u64) + ((x235 as u64) + ((x219 as u64) + x191))), + x280, + ); + let mut x298: u64 = 0; + let mut x299: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x298, &mut x299, 0x0, x284, (arg1[5])); + let mut x300: u64 = 0; + let mut x301: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x300, &mut x301, x299, x286, (0x0 as u64)); + let mut x302: u64 = 0; + let mut x303: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x302, &mut x303, x301, x288, (0x0 as u64)); + let mut x304: u64 = 0; + let mut x305: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x304, &mut x305, x303, x290, (0x0 as u64)); + let mut x306: u64 = 0; + let mut x307: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x306, &mut x307, x305, x292, (0x0 as u64)); + let mut x308: u64 = 0; + let mut x309: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x308, &mut x309, x307, x294, (0x0 as u64)); + let mut x310: u64 = 0; + let mut x311: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x310, &mut x311, x309, x296, (0x0 as u64)); + let mut x312: u64 = 0; + let mut x313: u64 = 0; + fiat_bp512_mulx_u64(&mut x312, &mut x313, x298, 0x839b32207d89efc5); + let mut x314: u64 = 0; + let mut x315: u64 = 0; + fiat_bp512_mulx_u64(&mut x314, &mut x315, x312, 0xaadd9db8dbe9c48b); + let mut x316: u64 = 0; + let mut x317: u64 = 0; + fiat_bp512_mulx_u64(&mut x316, &mut x317, x312, 0x3fd4e6ae33c9fc07); + let mut x318: u64 = 0; + let mut x319: u64 = 0; + fiat_bp512_mulx_u64(&mut x318, &mut x319, x312, 0xcb308db3b3c9d20e); + let mut x320: u64 = 0; + let mut x321: u64 = 0; + fiat_bp512_mulx_u64(&mut x320, &mut x321, x312, 0xd6639cca70330871); + let mut x322: u64 = 0; + let mut x323: u64 = 0; + fiat_bp512_mulx_u64(&mut x322, &mut x323, x312, 0x7d4d9b009bc66842); + let mut x324: u64 = 0; + let mut x325: u64 = 0; + fiat_bp512_mulx_u64(&mut x324, &mut x325, x312, 0xaecda12ae6a380e6); + let mut x326: u64 = 0; + let mut x327: u64 = 0; + fiat_bp512_mulx_u64(&mut x326, &mut x327, x312, 0x2881ff2f2d82c685); + let mut x328: u64 = 0; + let mut x329: u64 = 0; + fiat_bp512_mulx_u64(&mut x328, &mut x329, x312, 0x28aa6056583a48f3); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x330, &mut x331, 0x0, x329, x326); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x332, &mut x333, x331, x327, x324); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x334, &mut x335, x333, x325, x322); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x336, &mut x337, x335, x323, x320); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x338, &mut x339, x337, x321, x318); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x340, &mut x341, x339, x319, x316); + let mut x342: u64 = 0; + let mut x343: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x342, &mut x343, x341, x317, x314); + let mut x344: u64 = 0; + let mut x345: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x344, &mut x345, 0x0, x298, x328); + let mut x346: u64 = 0; + let mut x347: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x346, &mut x347, x345, x300, x330); + let mut x348: u64 = 0; + let mut x349: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x348, &mut x349, x347, x302, x332); + let mut x350: u64 = 0; + let mut x351: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x350, &mut x351, x349, x304, x334); + let mut x352: u64 = 0; + let mut x353: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x352, &mut x353, x351, x306, x336); + let mut x354: u64 = 0; + let mut x355: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x354, &mut x355, x353, x308, x338); + let mut x356: u64 = 0; + let mut x357: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x356, &mut x357, x355, x310, x340); + let mut x358: u64 = 0; + let mut x359: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x358, + &mut x359, + x357, + ((x311 as u64) + ((x297 as u64) + ((x281 as u64) + x253))), + x342, + ); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x360, &mut x361, 0x0, x346, (arg1[6])); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x362, &mut x363, x361, x348, (0x0 as u64)); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x364, &mut x365, x363, x350, (0x0 as u64)); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x366, &mut x367, x365, x352, (0x0 as u64)); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x368, &mut x369, x367, x354, (0x0 as u64)); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x370, &mut x371, x369, x356, (0x0 as u64)); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x372, &mut x373, x371, x358, (0x0 as u64)); + let mut x374: u64 = 0; + let mut x375: u64 = 0; + fiat_bp512_mulx_u64(&mut x374, &mut x375, x360, 0x839b32207d89efc5); + let mut x376: u64 = 0; + let mut x377: u64 = 0; + fiat_bp512_mulx_u64(&mut x376, &mut x377, x374, 0xaadd9db8dbe9c48b); + let mut x378: u64 = 0; + let mut x379: u64 = 0; + fiat_bp512_mulx_u64(&mut x378, &mut x379, x374, 0x3fd4e6ae33c9fc07); + let mut x380: u64 = 0; + let mut x381: u64 = 0; + fiat_bp512_mulx_u64(&mut x380, &mut x381, x374, 0xcb308db3b3c9d20e); + let mut x382: u64 = 0; + let mut x383: u64 = 0; + fiat_bp512_mulx_u64(&mut x382, &mut x383, x374, 0xd6639cca70330871); + let mut x384: u64 = 0; + let mut x385: u64 = 0; + fiat_bp512_mulx_u64(&mut x384, &mut x385, x374, 0x7d4d9b009bc66842); + let mut x386: u64 = 0; + let mut x387: u64 = 0; + fiat_bp512_mulx_u64(&mut x386, &mut x387, x374, 0xaecda12ae6a380e6); + let mut x388: u64 = 0; + let mut x389: u64 = 0; + fiat_bp512_mulx_u64(&mut x388, &mut x389, x374, 0x2881ff2f2d82c685); + let mut x390: u64 = 0; + let mut x391: u64 = 0; + fiat_bp512_mulx_u64(&mut x390, &mut x391, x374, 0x28aa6056583a48f3); + let mut x392: u64 = 0; + let mut x393: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x392, &mut x393, 0x0, x391, x388); + let mut x394: u64 = 0; + let mut x395: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x394, &mut x395, x393, x389, x386); + let mut x396: u64 = 0; + let mut x397: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x396, &mut x397, x395, x387, x384); + let mut x398: u64 = 0; + let mut x399: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x398, &mut x399, x397, x385, x382); + let mut x400: u64 = 0; + let mut x401: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x400, &mut x401, x399, x383, x380); + let mut x402: u64 = 0; + let mut x403: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x402, &mut x403, x401, x381, x378); + let mut x404: u64 = 0; + let mut x405: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x404, &mut x405, x403, x379, x376); + let mut x406: u64 = 0; + let mut x407: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x406, &mut x407, 0x0, x360, x390); + let mut x408: u64 = 0; + let mut x409: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x408, &mut x409, x407, x362, x392); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x410, &mut x411, x409, x364, x394); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x412, &mut x413, x411, x366, x396); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x414, &mut x415, x413, x368, x398); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x416, &mut x417, x415, x370, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x418, &mut x419, x417, x372, x402); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x420, + &mut x421, + x419, + ((x373 as u64) + ((x359 as u64) + ((x343 as u64) + x315))), + x404, + ); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x422, &mut x423, 0x0, x408, (arg1[7])); + let mut x424: u64 = 0; + let mut x425: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x424, &mut x425, x423, x410, (0x0 as u64)); + let mut x426: u64 = 0; + let mut x427: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x426, &mut x427, x425, x412, (0x0 as u64)); + let mut x428: u64 = 0; + let mut x429: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x428, &mut x429, x427, x414, (0x0 as u64)); + let mut x430: u64 = 0; + let mut x431: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x430, &mut x431, x429, x416, (0x0 as u64)); + let mut x432: u64 = 0; + let mut x433: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x432, &mut x433, x431, x418, (0x0 as u64)); + let mut x434: u64 = 0; + let mut x435: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x434, &mut x435, x433, x420, (0x0 as u64)); + let mut x436: u64 = 0; + let mut x437: u64 = 0; + fiat_bp512_mulx_u64(&mut x436, &mut x437, x422, 0x839b32207d89efc5); + let mut x438: u64 = 0; + let mut x439: u64 = 0; + fiat_bp512_mulx_u64(&mut x438, &mut x439, x436, 0xaadd9db8dbe9c48b); + let mut x440: u64 = 0; + let mut x441: u64 = 0; + fiat_bp512_mulx_u64(&mut x440, &mut x441, x436, 0x3fd4e6ae33c9fc07); + let mut x442: u64 = 0; + let mut x443: u64 = 0; + fiat_bp512_mulx_u64(&mut x442, &mut x443, x436, 0xcb308db3b3c9d20e); + let mut x444: u64 = 0; + let mut x445: u64 = 0; + fiat_bp512_mulx_u64(&mut x444, &mut x445, x436, 0xd6639cca70330871); + let mut x446: u64 = 0; + let mut x447: u64 = 0; + fiat_bp512_mulx_u64(&mut x446, &mut x447, x436, 0x7d4d9b009bc66842); + let mut x448: u64 = 0; + let mut x449: u64 = 0; + fiat_bp512_mulx_u64(&mut x448, &mut x449, x436, 0xaecda12ae6a380e6); + let mut x450: u64 = 0; + let mut x451: u64 = 0; + fiat_bp512_mulx_u64(&mut x450, &mut x451, x436, 0x2881ff2f2d82c685); + let mut x452: u64 = 0; + let mut x453: u64 = 0; + fiat_bp512_mulx_u64(&mut x452, &mut x453, x436, 0x28aa6056583a48f3); + let mut x454: u64 = 0; + let mut x455: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x454, &mut x455, 0x0, x453, x450); + let mut x456: u64 = 0; + let mut x457: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x456, &mut x457, x455, x451, x448); + let mut x458: u64 = 0; + let mut x459: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x458, &mut x459, x457, x449, x446); + let mut x460: u64 = 0; + let mut x461: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x460, &mut x461, x459, x447, x444); + let mut x462: u64 = 0; + let mut x463: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x462, &mut x463, x461, x445, x442); + let mut x464: u64 = 0; + let mut x465: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x464, &mut x465, x463, x443, x440); + let mut x466: u64 = 0; + let mut x467: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x466, &mut x467, x465, x441, x438); + let mut x468: u64 = 0; + let mut x469: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x468, &mut x469, 0x0, x422, x452); + let mut x470: u64 = 0; + let mut x471: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x470, &mut x471, x469, x424, x454); + let mut x472: u64 = 0; + let mut x473: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x472, &mut x473, x471, x426, x456); + let mut x474: u64 = 0; + let mut x475: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x474, &mut x475, x473, x428, x458); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x476, &mut x477, x475, x430, x460); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x478, &mut x479, x477, x432, x462); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x480, &mut x481, x479, x434, x464); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x482, + &mut x483, + x481, + ((x435 as u64) + ((x421 as u64) + ((x405 as u64) + x377))), + x466, + ); + let x484: u64 = ((x483 as u64) + ((x467 as u64) + x439)); + let mut x485: u64 = 0; + let mut x486: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x485, &mut x486, 0x0, x470, 0x28aa6056583a48f3); + let mut x487: u64 = 0; + let mut x488: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x487, &mut x488, x486, x472, 0x2881ff2f2d82c685); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x489, &mut x490, x488, x474, 0xaecda12ae6a380e6); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x491, &mut x492, x490, x476, 0x7d4d9b009bc66842); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x493, &mut x494, x492, x478, 0xd6639cca70330871); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x495, &mut x496, x494, x480, 0xcb308db3b3c9d20e); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x497, &mut x498, x496, x482, 0x3fd4e6ae33c9fc07); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x499, &mut x500, x498, x484, 0xaadd9db8dbe9c48b); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x501, &mut x502, x500, (0x0 as u64), (0x0 as u64)); + let mut x503: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x503, x502, x485, x470); + let mut x504: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x504, x502, x487, x472); + let mut x505: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x505, x502, x489, x474); + let mut x506: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x506, x502, x491, x476); + let mut x507: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x507, x502, x493, x478); + let mut x508: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x508, x502, x495, x480); + let mut x509: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x509, x502, x497, x482); + let mut x510: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x510, x502, x499, x484); + out1[0] = x503; + out1[1] = x504; + out1[2] = x505; + out1[3] = x506; + out1[4] = x507; + out1[5] = x508; + out1[6] = x509; + out1[7] = x510; } /// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. @@ -3667,1171 +3742,1217 @@ pub fn fiat_bp512_from_montgomery(out1: &mut fiat_bp512_non_montgomery_domain_fi /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element) { - let x1: u64 = (arg1[1]); - let x2: u64 = (arg1[2]); - let x3: u64 = (arg1[3]); - let x4: u64 = (arg1[4]); - let x5: u64 = (arg1[5]); - let x6: u64 = (arg1[6]); - let x7: u64 = (arg1[7]); - let x8: u64 = (arg1[0]); - let mut x9: u64 = 0; - let mut x10: u64 = 0; - fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, 0x3c4c9d05a9ff6450); - let mut x11: u64 = 0; - let mut x12: u64 = 0; - fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, 0x202e19402056eecc); - let mut x13: u64 = 0; - let mut x14: u64 = 0; - fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, 0xa16daa5fd42bff83); - let mut x15: u64 = 0; - let mut x16: u64 = 0; - fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, 0x19486fd8d5898057); - let mut x17: u64 = 0; - let mut x18: u64 = 0; - fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, 0xe0c19a7783514a25); - let mut x19: u64 = 0; - let mut x20: u64 = 0; - fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, 0x53b7f9bc905affd3); - let mut x21: u64 = 0; - let mut x22: u64 = 0; - fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, 0x793fb13027157905); - let mut x23: u64 = 0; - let mut x24: u64 = 0; - fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, 0x49ad144a6158f205); - let mut x25: u64 = 0; - let mut x26: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); - let mut x27: u64 = 0; - let mut x28: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); - let mut x29: u64 = 0; - let mut x30: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); - let mut x31: u64 = 0; - let mut x32: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); - let mut x33: u64 = 0; - let mut x34: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); - let mut x35: u64 = 0; - let mut x36: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); - let mut x37: u64 = 0; - let mut x38: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); - let mut x39: u64 = 0; - let mut x40: u64 = 0; - fiat_bp512_mulx_u64(&mut x39, &mut x40, x23, 0x839b32207d89efc5); - let mut x41: u64 = 0; - let mut x42: u64 = 0; - fiat_bp512_mulx_u64(&mut x41, &mut x42, x39, 0xaadd9db8dbe9c48b); - let mut x43: u64 = 0; - let mut x44: u64 = 0; - fiat_bp512_mulx_u64(&mut x43, &mut x44, x39, 0x3fd4e6ae33c9fc07); - let mut x45: u64 = 0; - let mut x46: u64 = 0; - fiat_bp512_mulx_u64(&mut x45, &mut x46, x39, 0xcb308db3b3c9d20e); - let mut x47: u64 = 0; - let mut x48: u64 = 0; - fiat_bp512_mulx_u64(&mut x47, &mut x48, x39, 0xd6639cca70330871); - let mut x49: u64 = 0; - let mut x50: u64 = 0; - fiat_bp512_mulx_u64(&mut x49, &mut x50, x39, 0x7d4d9b009bc66842); - let mut x51: u64 = 0; - let mut x52: u64 = 0; - fiat_bp512_mulx_u64(&mut x51, &mut x52, x39, 0xaecda12ae6a380e6); - let mut x53: u64 = 0; - let mut x54: u64 = 0; - fiat_bp512_mulx_u64(&mut x53, &mut x54, x39, 0x2881ff2f2d82c685); - let mut x55: u64 = 0; - let mut x56: u64 = 0; - fiat_bp512_mulx_u64(&mut x55, &mut x56, x39, 0x28aa6056583a48f3); - let mut x57: u64 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x57, &mut x58, 0x0, x56, x53); - let mut x59: u64 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x54, x51); - let mut x61: u64 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x52, x49); - let mut x63: u64 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x50, x47); - let mut x65: u64 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x48, x45); - let mut x67: u64 = 0; - let mut x68: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x67, &mut x68, x66, x46, x43); - let mut x69: u64 = 0; - let mut x70: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x69, &mut x70, x68, x44, x41); - let mut x71: u64 = 0; - let mut x72: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x71, &mut x72, 0x0, x23, x55); - let mut x73: u64 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x73, &mut x74, x72, x25, x57); - let mut x75: u64 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x27, x59); - let mut x77: u64 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x29, x61); - let mut x79: u64 = 0; - let mut x80: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x31, x63); - let mut x81: u64 = 0; - let mut x82: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x33, x65); - let mut x83: u64 = 0; - let mut x84: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x35, x67); - let mut x85: u64 = 0; - let mut x86: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x37, x69); - let mut x87: u64 = 0; - let mut x88: u64 = 0; - fiat_bp512_mulx_u64(&mut x87, &mut x88, x1, 0x3c4c9d05a9ff6450); - let mut x89: u64 = 0; - let mut x90: u64 = 0; - fiat_bp512_mulx_u64(&mut x89, &mut x90, x1, 0x202e19402056eecc); - let mut x91: u64 = 0; - let mut x92: u64 = 0; - fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, 0xa16daa5fd42bff83); - let mut x93: u64 = 0; - let mut x94: u64 = 0; - fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, 0x19486fd8d5898057); - let mut x95: u64 = 0; - let mut x96: u64 = 0; - fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, 0xe0c19a7783514a25); - let mut x97: u64 = 0; - let mut x98: u64 = 0; - fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, 0x53b7f9bc905affd3); - let mut x99: u64 = 0; - let mut x100: u64 = 0; - fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, 0x793fb13027157905); - let mut x101: u64 = 0; - let mut x102: u64 = 0; - fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, 0x49ad144a6158f205); - let mut x103: u64 = 0; - let mut x104: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x103, &mut x104, 0x0, x102, x99); - let mut x105: u64 = 0; - let mut x106: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x105, &mut x106, x104, x100, x97); - let mut x107: u64 = 0; - let mut x108: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x107, &mut x108, x106, x98, x95); - let mut x109: u64 = 0; - let mut x110: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x96, x93); - let mut x111: u64 = 0; - let mut x112: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x94, x91); - let mut x113: u64 = 0; - let mut x114: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x92, x89); - let mut x115: u64 = 0; - let mut x116: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x90, x87); - let mut x117: u64 = 0; - let mut x118: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x117, &mut x118, 0x0, x73, x101); - let mut x119: u64 = 0; - let mut x120: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x75, x103); - let mut x121: u64 = 0; - let mut x122: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x121, &mut x122, x120, x77, x105); - let mut x123: u64 = 0; - let mut x124: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x123, &mut x124, x122, x79, x107); - let mut x125: u64 = 0; - let mut x126: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x125, &mut x126, x124, x81, x109); - let mut x127: u64 = 0; - let mut x128: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x127, &mut x128, x126, x83, x111); - let mut x129: u64 = 0; - let mut x130: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x129, &mut x130, x128, x85, x113); - let mut x131: u64 = 0; - let mut x132: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x131, &mut x132, x130, (((x86 as u64) + ((x38 as u64) + x10)) + ((x70 as u64) + x42)), x115); - let mut x133: u64 = 0; - let mut x134: u64 = 0; - fiat_bp512_mulx_u64(&mut x133, &mut x134, x117, 0x839b32207d89efc5); - let mut x135: u64 = 0; - let mut x136: u64 = 0; - fiat_bp512_mulx_u64(&mut x135, &mut x136, x133, 0xaadd9db8dbe9c48b); - let mut x137: u64 = 0; - let mut x138: u64 = 0; - fiat_bp512_mulx_u64(&mut x137, &mut x138, x133, 0x3fd4e6ae33c9fc07); - let mut x139: u64 = 0; - let mut x140: u64 = 0; - fiat_bp512_mulx_u64(&mut x139, &mut x140, x133, 0xcb308db3b3c9d20e); - let mut x141: u64 = 0; - let mut x142: u64 = 0; - fiat_bp512_mulx_u64(&mut x141, &mut x142, x133, 0xd6639cca70330871); - let mut x143: u64 = 0; - let mut x144: u64 = 0; - fiat_bp512_mulx_u64(&mut x143, &mut x144, x133, 0x7d4d9b009bc66842); - let mut x145: u64 = 0; - let mut x146: u64 = 0; - fiat_bp512_mulx_u64(&mut x145, &mut x146, x133, 0xaecda12ae6a380e6); - let mut x147: u64 = 0; - let mut x148: u64 = 0; - fiat_bp512_mulx_u64(&mut x147, &mut x148, x133, 0x2881ff2f2d82c685); - let mut x149: u64 = 0; - let mut x150: u64 = 0; - fiat_bp512_mulx_u64(&mut x149, &mut x150, x133, 0x28aa6056583a48f3); - let mut x151: u64 = 0; - let mut x152: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x151, &mut x152, 0x0, x150, x147); - let mut x153: u64 = 0; - let mut x154: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x153, &mut x154, x152, x148, x145); - let mut x155: u64 = 0; - let mut x156: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x155, &mut x156, x154, x146, x143); - let mut x157: u64 = 0; - let mut x158: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x157, &mut x158, x156, x144, x141); - let mut x159: u64 = 0; - let mut x160: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x159, &mut x160, x158, x142, x139); - let mut x161: u64 = 0; - let mut x162: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x161, &mut x162, x160, x140, x137); - let mut x163: u64 = 0; - let mut x164: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x163, &mut x164, x162, x138, x135); - let mut x165: u64 = 0; - let mut x166: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x165, &mut x166, 0x0, x117, x149); - let mut x167: u64 = 0; - let mut x168: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x167, &mut x168, x166, x119, x151); - let mut x169: u64 = 0; - let mut x170: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x169, &mut x170, x168, x121, x153); - let mut x171: u64 = 0; - let mut x172: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x171, &mut x172, x170, x123, x155); - let mut x173: u64 = 0; - let mut x174: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x173, &mut x174, x172, x125, x157); - let mut x175: u64 = 0; - let mut x176: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x127, x159); - let mut x177: u64 = 0; - let mut x178: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x129, x161); - let mut x179: u64 = 0; - let mut x180: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x131, x163); - let mut x181: u64 = 0; - let mut x182: u64 = 0; - fiat_bp512_mulx_u64(&mut x181, &mut x182, x2, 0x3c4c9d05a9ff6450); - let mut x183: u64 = 0; - let mut x184: u64 = 0; - fiat_bp512_mulx_u64(&mut x183, &mut x184, x2, 0x202e19402056eecc); - let mut x185: u64 = 0; - let mut x186: u64 = 0; - fiat_bp512_mulx_u64(&mut x185, &mut x186, x2, 0xa16daa5fd42bff83); - let mut x187: u64 = 0; - let mut x188: u64 = 0; - fiat_bp512_mulx_u64(&mut x187, &mut x188, x2, 0x19486fd8d5898057); - let mut x189: u64 = 0; - let mut x190: u64 = 0; - fiat_bp512_mulx_u64(&mut x189, &mut x190, x2, 0xe0c19a7783514a25); - let mut x191: u64 = 0; - let mut x192: u64 = 0; - fiat_bp512_mulx_u64(&mut x191, &mut x192, x2, 0x53b7f9bc905affd3); - let mut x193: u64 = 0; - let mut x194: u64 = 0; - fiat_bp512_mulx_u64(&mut x193, &mut x194, x2, 0x793fb13027157905); - let mut x195: u64 = 0; - let mut x196: u64 = 0; - fiat_bp512_mulx_u64(&mut x195, &mut x196, x2, 0x49ad144a6158f205); - let mut x197: u64 = 0; - let mut x198: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); - let mut x199: u64 = 0; - let mut x200: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); - let mut x201: u64 = 0; - let mut x202: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); - let mut x203: u64 = 0; - let mut x204: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); - let mut x205: u64 = 0; - let mut x206: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); - let mut x207: u64 = 0; - let mut x208: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x207, &mut x208, x206, x186, x183); - let mut x209: u64 = 0; - let mut x210: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x209, &mut x210, x208, x184, x181); - let mut x211: u64 = 0; - let mut x212: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x211, &mut x212, 0x0, x167, x195); - let mut x213: u64 = 0; - let mut x214: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x213, &mut x214, x212, x169, x197); - let mut x215: u64 = 0; - let mut x216: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x215, &mut x216, x214, x171, x199); - let mut x217: u64 = 0; - let mut x218: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x217, &mut x218, x216, x173, x201); - let mut x219: u64 = 0; - let mut x220: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x219, &mut x220, x218, x175, x203); - let mut x221: u64 = 0; - let mut x222: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x221, &mut x222, x220, x177, x205); - let mut x223: u64 = 0; - let mut x224: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x223, &mut x224, x222, x179, x207); - let mut x225: u64 = 0; - let mut x226: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x225, &mut x226, x224, (((x180 as u64) + ((x132 as u64) + ((x116 as u64) + x88))) + ((x164 as u64) + x136)), x209); - let mut x227: u64 = 0; - let mut x228: u64 = 0; - fiat_bp512_mulx_u64(&mut x227, &mut x228, x211, 0x839b32207d89efc5); - let mut x229: u64 = 0; - let mut x230: u64 = 0; - fiat_bp512_mulx_u64(&mut x229, &mut x230, x227, 0xaadd9db8dbe9c48b); - let mut x231: u64 = 0; - let mut x232: u64 = 0; - fiat_bp512_mulx_u64(&mut x231, &mut x232, x227, 0x3fd4e6ae33c9fc07); - let mut x233: u64 = 0; - let mut x234: u64 = 0; - fiat_bp512_mulx_u64(&mut x233, &mut x234, x227, 0xcb308db3b3c9d20e); - let mut x235: u64 = 0; - let mut x236: u64 = 0; - fiat_bp512_mulx_u64(&mut x235, &mut x236, x227, 0xd6639cca70330871); - let mut x237: u64 = 0; - let mut x238: u64 = 0; - fiat_bp512_mulx_u64(&mut x237, &mut x238, x227, 0x7d4d9b009bc66842); - let mut x239: u64 = 0; - let mut x240: u64 = 0; - fiat_bp512_mulx_u64(&mut x239, &mut x240, x227, 0xaecda12ae6a380e6); - let mut x241: u64 = 0; - let mut x242: u64 = 0; - fiat_bp512_mulx_u64(&mut x241, &mut x242, x227, 0x2881ff2f2d82c685); - let mut x243: u64 = 0; - let mut x244: u64 = 0; - fiat_bp512_mulx_u64(&mut x243, &mut x244, x227, 0x28aa6056583a48f3); - let mut x245: u64 = 0; - let mut x246: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x245, &mut x246, 0x0, x244, x241); - let mut x247: u64 = 0; - let mut x248: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x247, &mut x248, x246, x242, x239); - let mut x249: u64 = 0; - let mut x250: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x249, &mut x250, x248, x240, x237); - let mut x251: u64 = 0; - let mut x252: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x251, &mut x252, x250, x238, x235); - let mut x253: u64 = 0; - let mut x254: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x253, &mut x254, x252, x236, x233); - let mut x255: u64 = 0; - let mut x256: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x255, &mut x256, x254, x234, x231); - let mut x257: u64 = 0; - let mut x258: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x257, &mut x258, x256, x232, x229); - let mut x259: u64 = 0; - let mut x260: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x211, x243); - let mut x261: u64 = 0; - let mut x262: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x213, x245); - let mut x263: u64 = 0; - let mut x264: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x215, x247); - let mut x265: u64 = 0; - let mut x266: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x217, x249); - let mut x267: u64 = 0; - let mut x268: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x219, x251); - let mut x269: u64 = 0; - let mut x270: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x221, x253); - let mut x271: u64 = 0; - let mut x272: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x223, x255); - let mut x273: u64 = 0; - let mut x274: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x273, &mut x274, x272, x225, x257); - let mut x275: u64 = 0; - let mut x276: u64 = 0; - fiat_bp512_mulx_u64(&mut x275, &mut x276, x3, 0x3c4c9d05a9ff6450); - let mut x277: u64 = 0; - let mut x278: u64 = 0; - fiat_bp512_mulx_u64(&mut x277, &mut x278, x3, 0x202e19402056eecc); - let mut x279: u64 = 0; - let mut x280: u64 = 0; - fiat_bp512_mulx_u64(&mut x279, &mut x280, x3, 0xa16daa5fd42bff83); - let mut x281: u64 = 0; - let mut x282: u64 = 0; - fiat_bp512_mulx_u64(&mut x281, &mut x282, x3, 0x19486fd8d5898057); - let mut x283: u64 = 0; - let mut x284: u64 = 0; - fiat_bp512_mulx_u64(&mut x283, &mut x284, x3, 0xe0c19a7783514a25); - let mut x285: u64 = 0; - let mut x286: u64 = 0; - fiat_bp512_mulx_u64(&mut x285, &mut x286, x3, 0x53b7f9bc905affd3); - let mut x287: u64 = 0; - let mut x288: u64 = 0; - fiat_bp512_mulx_u64(&mut x287, &mut x288, x3, 0x793fb13027157905); - let mut x289: u64 = 0; - let mut x290: u64 = 0; - fiat_bp512_mulx_u64(&mut x289, &mut x290, x3, 0x49ad144a6158f205); - let mut x291: u64 = 0; - let mut x292: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x291, &mut x292, 0x0, x290, x287); - let mut x293: u64 = 0; - let mut x294: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x293, &mut x294, x292, x288, x285); - let mut x295: u64 = 0; - let mut x296: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x295, &mut x296, x294, x286, x283); - let mut x297: u64 = 0; - let mut x298: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x297, &mut x298, x296, x284, x281); - let mut x299: u64 = 0; - let mut x300: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x299, &mut x300, x298, x282, x279); - let mut x301: u64 = 0; - let mut x302: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x301, &mut x302, x300, x280, x277); - let mut x303: u64 = 0; - let mut x304: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x303, &mut x304, x302, x278, x275); - let mut x305: u64 = 0; - let mut x306: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x305, &mut x306, 0x0, x261, x289); - let mut x307: u64 = 0; - let mut x308: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x307, &mut x308, x306, x263, x291); - let mut x309: u64 = 0; - let mut x310: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x309, &mut x310, x308, x265, x293); - let mut x311: u64 = 0; - let mut x312: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x267, x295); - let mut x313: u64 = 0; - let mut x314: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x269, x297); - let mut x315: u64 = 0; - let mut x316: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x271, x299); - let mut x317: u64 = 0; - let mut x318: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x273, x301); - let mut x319: u64 = 0; - let mut x320: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x319, &mut x320, x318, (((x274 as u64) + ((x226 as u64) + ((x210 as u64) + x182))) + ((x258 as u64) + x230)), x303); - let mut x321: u64 = 0; - let mut x322: u64 = 0; - fiat_bp512_mulx_u64(&mut x321, &mut x322, x305, 0x839b32207d89efc5); - let mut x323: u64 = 0; - let mut x324: u64 = 0; - fiat_bp512_mulx_u64(&mut x323, &mut x324, x321, 0xaadd9db8dbe9c48b); - let mut x325: u64 = 0; - let mut x326: u64 = 0; - fiat_bp512_mulx_u64(&mut x325, &mut x326, x321, 0x3fd4e6ae33c9fc07); - let mut x327: u64 = 0; - let mut x328: u64 = 0; - fiat_bp512_mulx_u64(&mut x327, &mut x328, x321, 0xcb308db3b3c9d20e); - let mut x329: u64 = 0; - let mut x330: u64 = 0; - fiat_bp512_mulx_u64(&mut x329, &mut x330, x321, 0xd6639cca70330871); - let mut x331: u64 = 0; - let mut x332: u64 = 0; - fiat_bp512_mulx_u64(&mut x331, &mut x332, x321, 0x7d4d9b009bc66842); - let mut x333: u64 = 0; - let mut x334: u64 = 0; - fiat_bp512_mulx_u64(&mut x333, &mut x334, x321, 0xaecda12ae6a380e6); - let mut x335: u64 = 0; - let mut x336: u64 = 0; - fiat_bp512_mulx_u64(&mut x335, &mut x336, x321, 0x2881ff2f2d82c685); - let mut x337: u64 = 0; - let mut x338: u64 = 0; - fiat_bp512_mulx_u64(&mut x337, &mut x338, x321, 0x28aa6056583a48f3); - let mut x339: u64 = 0; - let mut x340: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x339, &mut x340, 0x0, x338, x335); - let mut x341: u64 = 0; - let mut x342: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x341, &mut x342, x340, x336, x333); - let mut x343: u64 = 0; - let mut x344: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x343, &mut x344, x342, x334, x331); - let mut x345: u64 = 0; - let mut x346: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x345, &mut x346, x344, x332, x329); - let mut x347: u64 = 0; - let mut x348: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x347, &mut x348, x346, x330, x327); - let mut x349: u64 = 0; - let mut x350: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x349, &mut x350, x348, x328, x325); - let mut x351: u64 = 0; - let mut x352: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x351, &mut x352, x350, x326, x323); - let mut x353: u64 = 0; - let mut x354: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x353, &mut x354, 0x0, x305, x337); - let mut x355: u64 = 0; - let mut x356: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x355, &mut x356, x354, x307, x339); - let mut x357: u64 = 0; - let mut x358: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x357, &mut x358, x356, x309, x341); - let mut x359: u64 = 0; - let mut x360: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x359, &mut x360, x358, x311, x343); - let mut x361: u64 = 0; - let mut x362: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x361, &mut x362, x360, x313, x345); - let mut x363: u64 = 0; - let mut x364: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x363, &mut x364, x362, x315, x347); - let mut x365: u64 = 0; - let mut x366: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x365, &mut x366, x364, x317, x349); - let mut x367: u64 = 0; - let mut x368: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x367, &mut x368, x366, x319, x351); - let mut x369: u64 = 0; - let mut x370: u64 = 0; - fiat_bp512_mulx_u64(&mut x369, &mut x370, x4, 0x3c4c9d05a9ff6450); - let mut x371: u64 = 0; - let mut x372: u64 = 0; - fiat_bp512_mulx_u64(&mut x371, &mut x372, x4, 0x202e19402056eecc); - let mut x373: u64 = 0; - let mut x374: u64 = 0; - fiat_bp512_mulx_u64(&mut x373, &mut x374, x4, 0xa16daa5fd42bff83); - let mut x375: u64 = 0; - let mut x376: u64 = 0; - fiat_bp512_mulx_u64(&mut x375, &mut x376, x4, 0x19486fd8d5898057); - let mut x377: u64 = 0; - let mut x378: u64 = 0; - fiat_bp512_mulx_u64(&mut x377, &mut x378, x4, 0xe0c19a7783514a25); - let mut x379: u64 = 0; - let mut x380: u64 = 0; - fiat_bp512_mulx_u64(&mut x379, &mut x380, x4, 0x53b7f9bc905affd3); - let mut x381: u64 = 0; - let mut x382: u64 = 0; - fiat_bp512_mulx_u64(&mut x381, &mut x382, x4, 0x793fb13027157905); - let mut x383: u64 = 0; - let mut x384: u64 = 0; - fiat_bp512_mulx_u64(&mut x383, &mut x384, x4, 0x49ad144a6158f205); - let mut x385: u64 = 0; - let mut x386: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x385, &mut x386, 0x0, x384, x381); - let mut x387: u64 = 0; - let mut x388: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x382, x379); - let mut x389: u64 = 0; - let mut x390: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x380, x377); - let mut x391: u64 = 0; - let mut x392: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x378, x375); - let mut x393: u64 = 0; - let mut x394: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x393, &mut x394, x392, x376, x373); - let mut x395: u64 = 0; - let mut x396: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x395, &mut x396, x394, x374, x371); - let mut x397: u64 = 0; - let mut x398: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x397, &mut x398, x396, x372, x369); - let mut x399: u64 = 0; - let mut x400: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x399, &mut x400, 0x0, x355, x383); - let mut x401: u64 = 0; - let mut x402: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x401, &mut x402, x400, x357, x385); - let mut x403: u64 = 0; - let mut x404: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x403, &mut x404, x402, x359, x387); - let mut x405: u64 = 0; - let mut x406: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x405, &mut x406, x404, x361, x389); - let mut x407: u64 = 0; - let mut x408: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x407, &mut x408, x406, x363, x391); - let mut x409: u64 = 0; - let mut x410: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x409, &mut x410, x408, x365, x393); - let mut x411: u64 = 0; - let mut x412: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x411, &mut x412, x410, x367, x395); - let mut x413: u64 = 0; - let mut x414: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x413, &mut x414, x412, (((x368 as u64) + ((x320 as u64) + ((x304 as u64) + x276))) + ((x352 as u64) + x324)), x397); - let mut x415: u64 = 0; - let mut x416: u64 = 0; - fiat_bp512_mulx_u64(&mut x415, &mut x416, x399, 0x839b32207d89efc5); - let mut x417: u64 = 0; - let mut x418: u64 = 0; - fiat_bp512_mulx_u64(&mut x417, &mut x418, x415, 0xaadd9db8dbe9c48b); - let mut x419: u64 = 0; - let mut x420: u64 = 0; - fiat_bp512_mulx_u64(&mut x419, &mut x420, x415, 0x3fd4e6ae33c9fc07); - let mut x421: u64 = 0; - let mut x422: u64 = 0; - fiat_bp512_mulx_u64(&mut x421, &mut x422, x415, 0xcb308db3b3c9d20e); - let mut x423: u64 = 0; - let mut x424: u64 = 0; - fiat_bp512_mulx_u64(&mut x423, &mut x424, x415, 0xd6639cca70330871); - let mut x425: u64 = 0; - let mut x426: u64 = 0; - fiat_bp512_mulx_u64(&mut x425, &mut x426, x415, 0x7d4d9b009bc66842); - let mut x427: u64 = 0; - let mut x428: u64 = 0; - fiat_bp512_mulx_u64(&mut x427, &mut x428, x415, 0xaecda12ae6a380e6); - let mut x429: u64 = 0; - let mut x430: u64 = 0; - fiat_bp512_mulx_u64(&mut x429, &mut x430, x415, 0x2881ff2f2d82c685); - let mut x431: u64 = 0; - let mut x432: u64 = 0; - fiat_bp512_mulx_u64(&mut x431, &mut x432, x415, 0x28aa6056583a48f3); - let mut x433: u64 = 0; - let mut x434: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x433, &mut x434, 0x0, x432, x429); - let mut x435: u64 = 0; - let mut x436: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x430, x427); - let mut x437: u64 = 0; - let mut x438: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x428, x425); - let mut x439: u64 = 0; - let mut x440: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x426, x423); - let mut x441: u64 = 0; - let mut x442: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x424, x421); - let mut x443: u64 = 0; - let mut x444: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x443, &mut x444, x442, x422, x419); - let mut x445: u64 = 0; - let mut x446: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x445, &mut x446, x444, x420, x417); - let mut x447: u64 = 0; - let mut x448: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x447, &mut x448, 0x0, x399, x431); - let mut x449: u64 = 0; - let mut x450: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x449, &mut x450, x448, x401, x433); - let mut x451: u64 = 0; - let mut x452: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x451, &mut x452, x450, x403, x435); - let mut x453: u64 = 0; - let mut x454: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x453, &mut x454, x452, x405, x437); - let mut x455: u64 = 0; - let mut x456: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x455, &mut x456, x454, x407, x439); - let mut x457: u64 = 0; - let mut x458: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x457, &mut x458, x456, x409, x441); - let mut x459: u64 = 0; - let mut x460: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x459, &mut x460, x458, x411, x443); - let mut x461: u64 = 0; - let mut x462: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x461, &mut x462, x460, x413, x445); - let mut x463: u64 = 0; - let mut x464: u64 = 0; - fiat_bp512_mulx_u64(&mut x463, &mut x464, x5, 0x3c4c9d05a9ff6450); - let mut x465: u64 = 0; - let mut x466: u64 = 0; - fiat_bp512_mulx_u64(&mut x465, &mut x466, x5, 0x202e19402056eecc); - let mut x467: u64 = 0; - let mut x468: u64 = 0; - fiat_bp512_mulx_u64(&mut x467, &mut x468, x5, 0xa16daa5fd42bff83); - let mut x469: u64 = 0; - let mut x470: u64 = 0; - fiat_bp512_mulx_u64(&mut x469, &mut x470, x5, 0x19486fd8d5898057); - let mut x471: u64 = 0; - let mut x472: u64 = 0; - fiat_bp512_mulx_u64(&mut x471, &mut x472, x5, 0xe0c19a7783514a25); - let mut x473: u64 = 0; - let mut x474: u64 = 0; - fiat_bp512_mulx_u64(&mut x473, &mut x474, x5, 0x53b7f9bc905affd3); - let mut x475: u64 = 0; - let mut x476: u64 = 0; - fiat_bp512_mulx_u64(&mut x475, &mut x476, x5, 0x793fb13027157905); - let mut x477: u64 = 0; - let mut x478: u64 = 0; - fiat_bp512_mulx_u64(&mut x477, &mut x478, x5, 0x49ad144a6158f205); - let mut x479: u64 = 0; - let mut x480: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x479, &mut x480, 0x0, x478, x475); - let mut x481: u64 = 0; - let mut x482: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x481, &mut x482, x480, x476, x473); - let mut x483: u64 = 0; - let mut x484: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x483, &mut x484, x482, x474, x471); - let mut x485: u64 = 0; - let mut x486: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x485, &mut x486, x484, x472, x469); - let mut x487: u64 = 0; - let mut x488: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x487, &mut x488, x486, x470, x467); - let mut x489: u64 = 0; - let mut x490: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x489, &mut x490, x488, x468, x465); - let mut x491: u64 = 0; - let mut x492: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x491, &mut x492, x490, x466, x463); - let mut x493: u64 = 0; - let mut x494: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x493, &mut x494, 0x0, x449, x477); - let mut x495: u64 = 0; - let mut x496: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x495, &mut x496, x494, x451, x479); - let mut x497: u64 = 0; - let mut x498: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x497, &mut x498, x496, x453, x481); - let mut x499: u64 = 0; - let mut x500: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x499, &mut x500, x498, x455, x483); - let mut x501: u64 = 0; - let mut x502: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x501, &mut x502, x500, x457, x485); - let mut x503: u64 = 0; - let mut x504: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x503, &mut x504, x502, x459, x487); - let mut x505: u64 = 0; - let mut x506: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x505, &mut x506, x504, x461, x489); - let mut x507: u64 = 0; - let mut x508: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x507, &mut x508, x506, (((x462 as u64) + ((x414 as u64) + ((x398 as u64) + x370))) + ((x446 as u64) + x418)), x491); - let mut x509: u64 = 0; - let mut x510: u64 = 0; - fiat_bp512_mulx_u64(&mut x509, &mut x510, x493, 0x839b32207d89efc5); - let mut x511: u64 = 0; - let mut x512: u64 = 0; - fiat_bp512_mulx_u64(&mut x511, &mut x512, x509, 0xaadd9db8dbe9c48b); - let mut x513: u64 = 0; - let mut x514: u64 = 0; - fiat_bp512_mulx_u64(&mut x513, &mut x514, x509, 0x3fd4e6ae33c9fc07); - let mut x515: u64 = 0; - let mut x516: u64 = 0; - fiat_bp512_mulx_u64(&mut x515, &mut x516, x509, 0xcb308db3b3c9d20e); - let mut x517: u64 = 0; - let mut x518: u64 = 0; - fiat_bp512_mulx_u64(&mut x517, &mut x518, x509, 0xd6639cca70330871); - let mut x519: u64 = 0; - let mut x520: u64 = 0; - fiat_bp512_mulx_u64(&mut x519, &mut x520, x509, 0x7d4d9b009bc66842); - let mut x521: u64 = 0; - let mut x522: u64 = 0; - fiat_bp512_mulx_u64(&mut x521, &mut x522, x509, 0xaecda12ae6a380e6); - let mut x523: u64 = 0; - let mut x524: u64 = 0; - fiat_bp512_mulx_u64(&mut x523, &mut x524, x509, 0x2881ff2f2d82c685); - let mut x525: u64 = 0; - let mut x526: u64 = 0; - fiat_bp512_mulx_u64(&mut x525, &mut x526, x509, 0x28aa6056583a48f3); - let mut x527: u64 = 0; - let mut x528: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x527, &mut x528, 0x0, x526, x523); - let mut x529: u64 = 0; - let mut x530: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x529, &mut x530, x528, x524, x521); - let mut x531: u64 = 0; - let mut x532: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x531, &mut x532, x530, x522, x519); - let mut x533: u64 = 0; - let mut x534: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x533, &mut x534, x532, x520, x517); - let mut x535: u64 = 0; - let mut x536: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x535, &mut x536, x534, x518, x515); - let mut x537: u64 = 0; - let mut x538: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x537, &mut x538, x536, x516, x513); - let mut x539: u64 = 0; - let mut x540: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x539, &mut x540, x538, x514, x511); - let mut x541: u64 = 0; - let mut x542: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x541, &mut x542, 0x0, x493, x525); - let mut x543: u64 = 0; - let mut x544: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x543, &mut x544, x542, x495, x527); - let mut x545: u64 = 0; - let mut x546: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x545, &mut x546, x544, x497, x529); - let mut x547: u64 = 0; - let mut x548: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x547, &mut x548, x546, x499, x531); - let mut x549: u64 = 0; - let mut x550: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x549, &mut x550, x548, x501, x533); - let mut x551: u64 = 0; - let mut x552: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x551, &mut x552, x550, x503, x535); - let mut x553: u64 = 0; - let mut x554: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x553, &mut x554, x552, x505, x537); - let mut x555: u64 = 0; - let mut x556: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x555, &mut x556, x554, x507, x539); - let mut x557: u64 = 0; - let mut x558: u64 = 0; - fiat_bp512_mulx_u64(&mut x557, &mut x558, x6, 0x3c4c9d05a9ff6450); - let mut x559: u64 = 0; - let mut x560: u64 = 0; - fiat_bp512_mulx_u64(&mut x559, &mut x560, x6, 0x202e19402056eecc); - let mut x561: u64 = 0; - let mut x562: u64 = 0; - fiat_bp512_mulx_u64(&mut x561, &mut x562, x6, 0xa16daa5fd42bff83); - let mut x563: u64 = 0; - let mut x564: u64 = 0; - fiat_bp512_mulx_u64(&mut x563, &mut x564, x6, 0x19486fd8d5898057); - let mut x565: u64 = 0; - let mut x566: u64 = 0; - fiat_bp512_mulx_u64(&mut x565, &mut x566, x6, 0xe0c19a7783514a25); - let mut x567: u64 = 0; - let mut x568: u64 = 0; - fiat_bp512_mulx_u64(&mut x567, &mut x568, x6, 0x53b7f9bc905affd3); - let mut x569: u64 = 0; - let mut x570: u64 = 0; - fiat_bp512_mulx_u64(&mut x569, &mut x570, x6, 0x793fb13027157905); - let mut x571: u64 = 0; - let mut x572: u64 = 0; - fiat_bp512_mulx_u64(&mut x571, &mut x572, x6, 0x49ad144a6158f205); - let mut x573: u64 = 0; - let mut x574: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x573, &mut x574, 0x0, x572, x569); - let mut x575: u64 = 0; - let mut x576: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x575, &mut x576, x574, x570, x567); - let mut x577: u64 = 0; - let mut x578: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x577, &mut x578, x576, x568, x565); - let mut x579: u64 = 0; - let mut x580: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x566, x563); - let mut x581: u64 = 0; - let mut x582: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x564, x561); - let mut x583: u64 = 0; - let mut x584: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x562, x559); - let mut x585: u64 = 0; - let mut x586: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x560, x557); - let mut x587: u64 = 0; - let mut x588: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x587, &mut x588, 0x0, x543, x571); - let mut x589: u64 = 0; - let mut x590: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x545, x573); - let mut x591: u64 = 0; - let mut x592: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x547, x575); - let mut x593: u64 = 0; - let mut x594: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x549, x577); - let mut x595: u64 = 0; - let mut x596: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x595, &mut x596, x594, x551, x579); - let mut x597: u64 = 0; - let mut x598: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x597, &mut x598, x596, x553, x581); - let mut x599: u64 = 0; - let mut x600: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x599, &mut x600, x598, x555, x583); - let mut x601: u64 = 0; - let mut x602: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x601, &mut x602, x600, (((x556 as u64) + ((x508 as u64) + ((x492 as u64) + x464))) + ((x540 as u64) + x512)), x585); - let mut x603: u64 = 0; - let mut x604: u64 = 0; - fiat_bp512_mulx_u64(&mut x603, &mut x604, x587, 0x839b32207d89efc5); - let mut x605: u64 = 0; - let mut x606: u64 = 0; - fiat_bp512_mulx_u64(&mut x605, &mut x606, x603, 0xaadd9db8dbe9c48b); - let mut x607: u64 = 0; - let mut x608: u64 = 0; - fiat_bp512_mulx_u64(&mut x607, &mut x608, x603, 0x3fd4e6ae33c9fc07); - let mut x609: u64 = 0; - let mut x610: u64 = 0; - fiat_bp512_mulx_u64(&mut x609, &mut x610, x603, 0xcb308db3b3c9d20e); - let mut x611: u64 = 0; - let mut x612: u64 = 0; - fiat_bp512_mulx_u64(&mut x611, &mut x612, x603, 0xd6639cca70330871); - let mut x613: u64 = 0; - let mut x614: u64 = 0; - fiat_bp512_mulx_u64(&mut x613, &mut x614, x603, 0x7d4d9b009bc66842); - let mut x615: u64 = 0; - let mut x616: u64 = 0; - fiat_bp512_mulx_u64(&mut x615, &mut x616, x603, 0xaecda12ae6a380e6); - let mut x617: u64 = 0; - let mut x618: u64 = 0; - fiat_bp512_mulx_u64(&mut x617, &mut x618, x603, 0x2881ff2f2d82c685); - let mut x619: u64 = 0; - let mut x620: u64 = 0; - fiat_bp512_mulx_u64(&mut x619, &mut x620, x603, 0x28aa6056583a48f3); - let mut x621: u64 = 0; - let mut x622: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x621, &mut x622, 0x0, x620, x617); - let mut x623: u64 = 0; - let mut x624: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x623, &mut x624, x622, x618, x615); - let mut x625: u64 = 0; - let mut x626: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x625, &mut x626, x624, x616, x613); - let mut x627: u64 = 0; - let mut x628: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x627, &mut x628, x626, x614, x611); - let mut x629: u64 = 0; - let mut x630: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x612, x609); - let mut x631: u64 = 0; - let mut x632: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x610, x607); - let mut x633: u64 = 0; - let mut x634: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x608, x605); - let mut x635: u64 = 0; - let mut x636: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x635, &mut x636, 0x0, x587, x619); - let mut x637: u64 = 0; - let mut x638: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x621); - let mut x639: u64 = 0; - let mut x640: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x623); - let mut x641: u64 = 0; - let mut x642: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x625); - let mut x643: u64 = 0; - let mut x644: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x627); - let mut x645: u64 = 0; - let mut x646: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x645, &mut x646, x644, x597, x629); - let mut x647: u64 = 0; - let mut x648: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x647, &mut x648, x646, x599, x631); - let mut x649: u64 = 0; - let mut x650: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x649, &mut x650, x648, x601, x633); - let mut x651: u64 = 0; - let mut x652: u64 = 0; - fiat_bp512_mulx_u64(&mut x651, &mut x652, x7, 0x3c4c9d05a9ff6450); - let mut x653: u64 = 0; - let mut x654: u64 = 0; - fiat_bp512_mulx_u64(&mut x653, &mut x654, x7, 0x202e19402056eecc); - let mut x655: u64 = 0; - let mut x656: u64 = 0; - fiat_bp512_mulx_u64(&mut x655, &mut x656, x7, 0xa16daa5fd42bff83); - let mut x657: u64 = 0; - let mut x658: u64 = 0; - fiat_bp512_mulx_u64(&mut x657, &mut x658, x7, 0x19486fd8d5898057); - let mut x659: u64 = 0; - let mut x660: u64 = 0; - fiat_bp512_mulx_u64(&mut x659, &mut x660, x7, 0xe0c19a7783514a25); - let mut x661: u64 = 0; - let mut x662: u64 = 0; - fiat_bp512_mulx_u64(&mut x661, &mut x662, x7, 0x53b7f9bc905affd3); - let mut x663: u64 = 0; - let mut x664: u64 = 0; - fiat_bp512_mulx_u64(&mut x663, &mut x664, x7, 0x793fb13027157905); - let mut x665: u64 = 0; - let mut x666: u64 = 0; - fiat_bp512_mulx_u64(&mut x665, &mut x666, x7, 0x49ad144a6158f205); - let mut x667: u64 = 0; - let mut x668: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x667, &mut x668, 0x0, x666, x663); - let mut x669: u64 = 0; - let mut x670: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x664, x661); - let mut x671: u64 = 0; - let mut x672: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x662, x659); - let mut x673: u64 = 0; - let mut x674: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x660, x657); - let mut x675: u64 = 0; - let mut x676: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x658, x655); - let mut x677: u64 = 0; - let mut x678: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x677, &mut x678, x676, x656, x653); - let mut x679: u64 = 0; - let mut x680: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x679, &mut x680, x678, x654, x651); - let mut x681: u64 = 0; - let mut x682: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x681, &mut x682, 0x0, x637, x665); - let mut x683: u64 = 0; - let mut x684: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x683, &mut x684, x682, x639, x667); - let mut x685: u64 = 0; - let mut x686: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x685, &mut x686, x684, x641, x669); - let mut x687: u64 = 0; - let mut x688: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x687, &mut x688, x686, x643, x671); - let mut x689: u64 = 0; - let mut x690: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x689, &mut x690, x688, x645, x673); - let mut x691: u64 = 0; - let mut x692: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x691, &mut x692, x690, x647, x675); - let mut x693: u64 = 0; - let mut x694: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x693, &mut x694, x692, x649, x677); - let mut x695: u64 = 0; - let mut x696: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x695, &mut x696, x694, (((x650 as u64) + ((x602 as u64) + ((x586 as u64) + x558))) + ((x634 as u64) + x606)), x679); - let mut x697: u64 = 0; - let mut x698: u64 = 0; - fiat_bp512_mulx_u64(&mut x697, &mut x698, x681, 0x839b32207d89efc5); - let mut x699: u64 = 0; - let mut x700: u64 = 0; - fiat_bp512_mulx_u64(&mut x699, &mut x700, x697, 0xaadd9db8dbe9c48b); - let mut x701: u64 = 0; - let mut x702: u64 = 0; - fiat_bp512_mulx_u64(&mut x701, &mut x702, x697, 0x3fd4e6ae33c9fc07); - let mut x703: u64 = 0; - let mut x704: u64 = 0; - fiat_bp512_mulx_u64(&mut x703, &mut x704, x697, 0xcb308db3b3c9d20e); - let mut x705: u64 = 0; - let mut x706: u64 = 0; - fiat_bp512_mulx_u64(&mut x705, &mut x706, x697, 0xd6639cca70330871); - let mut x707: u64 = 0; - let mut x708: u64 = 0; - fiat_bp512_mulx_u64(&mut x707, &mut x708, x697, 0x7d4d9b009bc66842); - let mut x709: u64 = 0; - let mut x710: u64 = 0; - fiat_bp512_mulx_u64(&mut x709, &mut x710, x697, 0xaecda12ae6a380e6); - let mut x711: u64 = 0; - let mut x712: u64 = 0; - fiat_bp512_mulx_u64(&mut x711, &mut x712, x697, 0x2881ff2f2d82c685); - let mut x713: u64 = 0; - let mut x714: u64 = 0; - fiat_bp512_mulx_u64(&mut x713, &mut x714, x697, 0x28aa6056583a48f3); - let mut x715: u64 = 0; - let mut x716: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x715, &mut x716, 0x0, x714, x711); - let mut x717: u64 = 0; - let mut x718: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x712, x709); - let mut x719: u64 = 0; - let mut x720: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x710, x707); - let mut x721: u64 = 0; - let mut x722: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x708, x705); - let mut x723: u64 = 0; - let mut x724: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x706, x703); - let mut x725: u64 = 0; - let mut x726: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x704, x701); - let mut x727: u64 = 0; - let mut x728: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x727, &mut x728, x726, x702, x699); - let mut x729: u64 = 0; - let mut x730: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x729, &mut x730, 0x0, x681, x713); - let mut x731: u64 = 0; - let mut x732: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x731, &mut x732, x730, x683, x715); - let mut x733: u64 = 0; - let mut x734: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x733, &mut x734, x732, x685, x717); - let mut x735: u64 = 0; - let mut x736: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x735, &mut x736, x734, x687, x719); - let mut x737: u64 = 0; - let mut x738: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x737, &mut x738, x736, x689, x721); - let mut x739: u64 = 0; - let mut x740: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x739, &mut x740, x738, x691, x723); - let mut x741: u64 = 0; - let mut x742: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x741, &mut x742, x740, x693, x725); - let mut x743: u64 = 0; - let mut x744: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x743, &mut x744, x742, x695, x727); - let x745: u64 = (((x744 as u64) + ((x696 as u64) + ((x680 as u64) + x652))) + ((x728 as u64) + x700)); - let mut x746: u64 = 0; - let mut x747: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x746, &mut x747, 0x0, x731, 0x28aa6056583a48f3); - let mut x748: u64 = 0; - let mut x749: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x748, &mut x749, x747, x733, 0x2881ff2f2d82c685); - let mut x750: u64 = 0; - let mut x751: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x750, &mut x751, x749, x735, 0xaecda12ae6a380e6); - let mut x752: u64 = 0; - let mut x753: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x752, &mut x753, x751, x737, 0x7d4d9b009bc66842); - let mut x754: u64 = 0; - let mut x755: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x754, &mut x755, x753, x739, 0xd6639cca70330871); - let mut x756: u64 = 0; - let mut x757: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x756, &mut x757, x755, x741, 0xcb308db3b3c9d20e); - let mut x758: u64 = 0; - let mut x759: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x758, &mut x759, x757, x743, 0x3fd4e6ae33c9fc07); - let mut x760: u64 = 0; - let mut x761: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x760, &mut x761, x759, x745, 0xaadd9db8dbe9c48b); - let mut x762: u64 = 0; - let mut x763: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x762, &mut x763, x761, (0x0 as u64), (0x0 as u64)); - let mut x764: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x764, x763, x746, x731); - let mut x765: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x765, x763, x748, x733); - let mut x766: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x766, x763, x750, x735); - let mut x767: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x767, x763, x752, x737); - let mut x768: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x768, x763, x754, x739); - let mut x769: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x769, x763, x756, x741); - let mut x770: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x770, x763, x758, x743); - let mut x771: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x771, x763, x760, x745); - out1[0] = x764; - out1[1] = x765; - out1[2] = x766; - out1[3] = x767; - out1[4] = x768; - out1[5] = x769; - out1[6] = x770; - out1[7] = x771; +pub fn fiat_bp512_to_montgomery( + out1: &mut fiat_bp512_montgomery_domain_field_element, + arg1: &fiat_bp512_non_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_mulx_u64(&mut x9, &mut x10, x8, 0x3c4c9d05a9ff6450); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_mulx_u64(&mut x11, &mut x12, x8, 0x202e19402056eecc); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_mulx_u64(&mut x13, &mut x14, x8, 0xa16daa5fd42bff83); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_mulx_u64(&mut x15, &mut x16, x8, 0x19486fd8d5898057); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_mulx_u64(&mut x17, &mut x18, x8, 0xe0c19a7783514a25); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_mulx_u64(&mut x19, &mut x20, x8, 0x53b7f9bc905affd3); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_mulx_u64(&mut x21, &mut x22, x8, 0x793fb13027157905); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_mulx_u64(&mut x23, &mut x24, x8, 0x49ad144a6158f205); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let mut x39: u64 = 0; + let mut x40: u64 = 0; + fiat_bp512_mulx_u64(&mut x39, &mut x40, x23, 0x839b32207d89efc5); + let mut x41: u64 = 0; + let mut x42: u64 = 0; + fiat_bp512_mulx_u64(&mut x41, &mut x42, x39, 0xaadd9db8dbe9c48b); + let mut x43: u64 = 0; + let mut x44: u64 = 0; + fiat_bp512_mulx_u64(&mut x43, &mut x44, x39, 0x3fd4e6ae33c9fc07); + let mut x45: u64 = 0; + let mut x46: u64 = 0; + fiat_bp512_mulx_u64(&mut x45, &mut x46, x39, 0xcb308db3b3c9d20e); + let mut x47: u64 = 0; + let mut x48: u64 = 0; + fiat_bp512_mulx_u64(&mut x47, &mut x48, x39, 0xd6639cca70330871); + let mut x49: u64 = 0; + let mut x50: u64 = 0; + fiat_bp512_mulx_u64(&mut x49, &mut x50, x39, 0x7d4d9b009bc66842); + let mut x51: u64 = 0; + let mut x52: u64 = 0; + fiat_bp512_mulx_u64(&mut x51, &mut x52, x39, 0xaecda12ae6a380e6); + let mut x53: u64 = 0; + let mut x54: u64 = 0; + fiat_bp512_mulx_u64(&mut x53, &mut x54, x39, 0x2881ff2f2d82c685); + let mut x55: u64 = 0; + let mut x56: u64 = 0; + fiat_bp512_mulx_u64(&mut x55, &mut x56, x39, 0x28aa6056583a48f3); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x57, &mut x58, 0x0, x56, x53); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x54, x51); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x52, x49); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x50, x47); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x48, x45); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x67, &mut x68, x66, x46, x43); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x69, &mut x70, x68, x44, x41); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x71, &mut x72, 0x0, x23, x55); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x73, &mut x74, x72, x25, x57); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x75, &mut x76, x74, x27, x59); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x77, &mut x78, x76, x29, x61); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x79, &mut x80, x78, x31, x63); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x81, &mut x82, x80, x33, x65); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x83, &mut x84, x82, x35, x67); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x85, &mut x86, x84, x37, x69); + let mut x87: u64 = 0; + let mut x88: u64 = 0; + fiat_bp512_mulx_u64(&mut x87, &mut x88, x1, 0x3c4c9d05a9ff6450); + let mut x89: u64 = 0; + let mut x90: u64 = 0; + fiat_bp512_mulx_u64(&mut x89, &mut x90, x1, 0x202e19402056eecc); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_mulx_u64(&mut x91, &mut x92, x1, 0xa16daa5fd42bff83); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_mulx_u64(&mut x93, &mut x94, x1, 0x19486fd8d5898057); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_mulx_u64(&mut x95, &mut x96, x1, 0xe0c19a7783514a25); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_mulx_u64(&mut x97, &mut x98, x1, 0x53b7f9bc905affd3); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_mulx_u64(&mut x99, &mut x100, x1, 0x793fb13027157905); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_mulx_u64(&mut x101, &mut x102, x1, 0x49ad144a6158f205); + let mut x103: u64 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x103, &mut x104, 0x0, x102, x99); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x105, &mut x106, x104, x100, x97); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x107, &mut x108, x106, x98, x95); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x109, &mut x110, x108, x96, x93); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x111, &mut x112, x110, x94, x91); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x113, &mut x114, x112, x92, x89); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x115, &mut x116, x114, x90, x87); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x117, &mut x118, 0x0, x73, x101); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x119, &mut x120, x118, x75, x103); + let mut x121: u64 = 0; + let mut x122: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x121, &mut x122, x120, x77, x105); + let mut x123: u64 = 0; + let mut x124: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x123, &mut x124, x122, x79, x107); + let mut x125: u64 = 0; + let mut x126: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x125, &mut x126, x124, x81, x109); + let mut x127: u64 = 0; + let mut x128: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x127, &mut x128, x126, x83, x111); + let mut x129: u64 = 0; + let mut x130: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x129, &mut x130, x128, x85, x113); + let mut x131: u64 = 0; + let mut x132: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x131, + &mut x132, + x130, + (((x86 as u64) + ((x38 as u64) + x10)) + ((x70 as u64) + x42)), + x115, + ); + let mut x133: u64 = 0; + let mut x134: u64 = 0; + fiat_bp512_mulx_u64(&mut x133, &mut x134, x117, 0x839b32207d89efc5); + let mut x135: u64 = 0; + let mut x136: u64 = 0; + fiat_bp512_mulx_u64(&mut x135, &mut x136, x133, 0xaadd9db8dbe9c48b); + let mut x137: u64 = 0; + let mut x138: u64 = 0; + fiat_bp512_mulx_u64(&mut x137, &mut x138, x133, 0x3fd4e6ae33c9fc07); + let mut x139: u64 = 0; + let mut x140: u64 = 0; + fiat_bp512_mulx_u64(&mut x139, &mut x140, x133, 0xcb308db3b3c9d20e); + let mut x141: u64 = 0; + let mut x142: u64 = 0; + fiat_bp512_mulx_u64(&mut x141, &mut x142, x133, 0xd6639cca70330871); + let mut x143: u64 = 0; + let mut x144: u64 = 0; + fiat_bp512_mulx_u64(&mut x143, &mut x144, x133, 0x7d4d9b009bc66842); + let mut x145: u64 = 0; + let mut x146: u64 = 0; + fiat_bp512_mulx_u64(&mut x145, &mut x146, x133, 0xaecda12ae6a380e6); + let mut x147: u64 = 0; + let mut x148: u64 = 0; + fiat_bp512_mulx_u64(&mut x147, &mut x148, x133, 0x2881ff2f2d82c685); + let mut x149: u64 = 0; + let mut x150: u64 = 0; + fiat_bp512_mulx_u64(&mut x149, &mut x150, x133, 0x28aa6056583a48f3); + let mut x151: u64 = 0; + let mut x152: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x151, &mut x152, 0x0, x150, x147); + let mut x153: u64 = 0; + let mut x154: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x153, &mut x154, x152, x148, x145); + let mut x155: u64 = 0; + let mut x156: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x155, &mut x156, x154, x146, x143); + let mut x157: u64 = 0; + let mut x158: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x157, &mut x158, x156, x144, x141); + let mut x159: u64 = 0; + let mut x160: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x159, &mut x160, x158, x142, x139); + let mut x161: u64 = 0; + let mut x162: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x161, &mut x162, x160, x140, x137); + let mut x163: u64 = 0; + let mut x164: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x163, &mut x164, x162, x138, x135); + let mut x165: u64 = 0; + let mut x166: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x165, &mut x166, 0x0, x117, x149); + let mut x167: u64 = 0; + let mut x168: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x167, &mut x168, x166, x119, x151); + let mut x169: u64 = 0; + let mut x170: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x169, &mut x170, x168, x121, x153); + let mut x171: u64 = 0; + let mut x172: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x171, &mut x172, x170, x123, x155); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x173, &mut x174, x172, x125, x157); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x175, &mut x176, x174, x127, x159); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x177, &mut x178, x176, x129, x161); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x179, &mut x180, x178, x131, x163); + let mut x181: u64 = 0; + let mut x182: u64 = 0; + fiat_bp512_mulx_u64(&mut x181, &mut x182, x2, 0x3c4c9d05a9ff6450); + let mut x183: u64 = 0; + let mut x184: u64 = 0; + fiat_bp512_mulx_u64(&mut x183, &mut x184, x2, 0x202e19402056eecc); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp512_mulx_u64(&mut x185, &mut x186, x2, 0xa16daa5fd42bff83); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp512_mulx_u64(&mut x187, &mut x188, x2, 0x19486fd8d5898057); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp512_mulx_u64(&mut x189, &mut x190, x2, 0xe0c19a7783514a25); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp512_mulx_u64(&mut x191, &mut x192, x2, 0x53b7f9bc905affd3); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp512_mulx_u64(&mut x193, &mut x194, x2, 0x793fb13027157905); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp512_mulx_u64(&mut x195, &mut x196, x2, 0x49ad144a6158f205); + let mut x197: u64 = 0; + let mut x198: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x197, &mut x198, 0x0, x196, x193); + let mut x199: u64 = 0; + let mut x200: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x199, &mut x200, x198, x194, x191); + let mut x201: u64 = 0; + let mut x202: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x201, &mut x202, x200, x192, x189); + let mut x203: u64 = 0; + let mut x204: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x203, &mut x204, x202, x190, x187); + let mut x205: u64 = 0; + let mut x206: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x205, &mut x206, x204, x188, x185); + let mut x207: u64 = 0; + let mut x208: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x207, &mut x208, x206, x186, x183); + let mut x209: u64 = 0; + let mut x210: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x209, &mut x210, x208, x184, x181); + let mut x211: u64 = 0; + let mut x212: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x211, &mut x212, 0x0, x167, x195); + let mut x213: u64 = 0; + let mut x214: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x213, &mut x214, x212, x169, x197); + let mut x215: u64 = 0; + let mut x216: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x215, &mut x216, x214, x171, x199); + let mut x217: u64 = 0; + let mut x218: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x217, &mut x218, x216, x173, x201); + let mut x219: u64 = 0; + let mut x220: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x219, &mut x220, x218, x175, x203); + let mut x221: u64 = 0; + let mut x222: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x221, &mut x222, x220, x177, x205); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x223, &mut x224, x222, x179, x207); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x225, + &mut x226, + x224, + (((x180 as u64) + ((x132 as u64) + ((x116 as u64) + x88))) + ((x164 as u64) + x136)), + x209, + ); + let mut x227: u64 = 0; + let mut x228: u64 = 0; + fiat_bp512_mulx_u64(&mut x227, &mut x228, x211, 0x839b32207d89efc5); + let mut x229: u64 = 0; + let mut x230: u64 = 0; + fiat_bp512_mulx_u64(&mut x229, &mut x230, x227, 0xaadd9db8dbe9c48b); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp512_mulx_u64(&mut x231, &mut x232, x227, 0x3fd4e6ae33c9fc07); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp512_mulx_u64(&mut x233, &mut x234, x227, 0xcb308db3b3c9d20e); + let mut x235: u64 = 0; + let mut x236: u64 = 0; + fiat_bp512_mulx_u64(&mut x235, &mut x236, x227, 0xd6639cca70330871); + let mut x237: u64 = 0; + let mut x238: u64 = 0; + fiat_bp512_mulx_u64(&mut x237, &mut x238, x227, 0x7d4d9b009bc66842); + let mut x239: u64 = 0; + let mut x240: u64 = 0; + fiat_bp512_mulx_u64(&mut x239, &mut x240, x227, 0xaecda12ae6a380e6); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_mulx_u64(&mut x241, &mut x242, x227, 0x2881ff2f2d82c685); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_mulx_u64(&mut x243, &mut x244, x227, 0x28aa6056583a48f3); + let mut x245: u64 = 0; + let mut x246: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x245, &mut x246, 0x0, x244, x241); + let mut x247: u64 = 0; + let mut x248: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x247, &mut x248, x246, x242, x239); + let mut x249: u64 = 0; + let mut x250: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x249, &mut x250, x248, x240, x237); + let mut x251: u64 = 0; + let mut x252: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x251, &mut x252, x250, x238, x235); + let mut x253: u64 = 0; + let mut x254: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x253, &mut x254, x252, x236, x233); + let mut x255: u64 = 0; + let mut x256: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x255, &mut x256, x254, x234, x231); + let mut x257: u64 = 0; + let mut x258: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x257, &mut x258, x256, x232, x229); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x259, &mut x260, 0x0, x211, x243); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x261, &mut x262, x260, x213, x245); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x263, &mut x264, x262, x215, x247); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x265, &mut x266, x264, x217, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x267, &mut x268, x266, x219, x251); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x269, &mut x270, x268, x221, x253); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x271, &mut x272, x270, x223, x255); + let mut x273: u64 = 0; + let mut x274: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x273, &mut x274, x272, x225, x257); + let mut x275: u64 = 0; + let mut x276: u64 = 0; + fiat_bp512_mulx_u64(&mut x275, &mut x276, x3, 0x3c4c9d05a9ff6450); + let mut x277: u64 = 0; + let mut x278: u64 = 0; + fiat_bp512_mulx_u64(&mut x277, &mut x278, x3, 0x202e19402056eecc); + let mut x279: u64 = 0; + let mut x280: u64 = 0; + fiat_bp512_mulx_u64(&mut x279, &mut x280, x3, 0xa16daa5fd42bff83); + let mut x281: u64 = 0; + let mut x282: u64 = 0; + fiat_bp512_mulx_u64(&mut x281, &mut x282, x3, 0x19486fd8d5898057); + let mut x283: u64 = 0; + let mut x284: u64 = 0; + fiat_bp512_mulx_u64(&mut x283, &mut x284, x3, 0xe0c19a7783514a25); + let mut x285: u64 = 0; + let mut x286: u64 = 0; + fiat_bp512_mulx_u64(&mut x285, &mut x286, x3, 0x53b7f9bc905affd3); + let mut x287: u64 = 0; + let mut x288: u64 = 0; + fiat_bp512_mulx_u64(&mut x287, &mut x288, x3, 0x793fb13027157905); + let mut x289: u64 = 0; + let mut x290: u64 = 0; + fiat_bp512_mulx_u64(&mut x289, &mut x290, x3, 0x49ad144a6158f205); + let mut x291: u64 = 0; + let mut x292: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x291, &mut x292, 0x0, x290, x287); + let mut x293: u64 = 0; + let mut x294: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x293, &mut x294, x292, x288, x285); + let mut x295: u64 = 0; + let mut x296: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x295, &mut x296, x294, x286, x283); + let mut x297: u64 = 0; + let mut x298: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x297, &mut x298, x296, x284, x281); + let mut x299: u64 = 0; + let mut x300: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x299, &mut x300, x298, x282, x279); + let mut x301: u64 = 0; + let mut x302: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x301, &mut x302, x300, x280, x277); + let mut x303: u64 = 0; + let mut x304: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x303, &mut x304, x302, x278, x275); + let mut x305: u64 = 0; + let mut x306: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x305, &mut x306, 0x0, x261, x289); + let mut x307: u64 = 0; + let mut x308: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x307, &mut x308, x306, x263, x291); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x309, &mut x310, x308, x265, x293); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x311, &mut x312, x310, x267, x295); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x313, &mut x314, x312, x269, x297); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x315, &mut x316, x314, x271, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x317, &mut x318, x316, x273, x301); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x319, + &mut x320, + x318, + (((x274 as u64) + ((x226 as u64) + ((x210 as u64) + x182))) + ((x258 as u64) + x230)), + x303, + ); + let mut x321: u64 = 0; + let mut x322: u64 = 0; + fiat_bp512_mulx_u64(&mut x321, &mut x322, x305, 0x839b32207d89efc5); + let mut x323: u64 = 0; + let mut x324: u64 = 0; + fiat_bp512_mulx_u64(&mut x323, &mut x324, x321, 0xaadd9db8dbe9c48b); + let mut x325: u64 = 0; + let mut x326: u64 = 0; + fiat_bp512_mulx_u64(&mut x325, &mut x326, x321, 0x3fd4e6ae33c9fc07); + let mut x327: u64 = 0; + let mut x328: u64 = 0; + fiat_bp512_mulx_u64(&mut x327, &mut x328, x321, 0xcb308db3b3c9d20e); + let mut x329: u64 = 0; + let mut x330: u64 = 0; + fiat_bp512_mulx_u64(&mut x329, &mut x330, x321, 0xd6639cca70330871); + let mut x331: u64 = 0; + let mut x332: u64 = 0; + fiat_bp512_mulx_u64(&mut x331, &mut x332, x321, 0x7d4d9b009bc66842); + let mut x333: u64 = 0; + let mut x334: u64 = 0; + fiat_bp512_mulx_u64(&mut x333, &mut x334, x321, 0xaecda12ae6a380e6); + let mut x335: u64 = 0; + let mut x336: u64 = 0; + fiat_bp512_mulx_u64(&mut x335, &mut x336, x321, 0x2881ff2f2d82c685); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp512_mulx_u64(&mut x337, &mut x338, x321, 0x28aa6056583a48f3); + let mut x339: u64 = 0; + let mut x340: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x339, &mut x340, 0x0, x338, x335); + let mut x341: u64 = 0; + let mut x342: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x341, &mut x342, x340, x336, x333); + let mut x343: u64 = 0; + let mut x344: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x343, &mut x344, x342, x334, x331); + let mut x345: u64 = 0; + let mut x346: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x345, &mut x346, x344, x332, x329); + let mut x347: u64 = 0; + let mut x348: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x347, &mut x348, x346, x330, x327); + let mut x349: u64 = 0; + let mut x350: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x349, &mut x350, x348, x328, x325); + let mut x351: u64 = 0; + let mut x352: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x351, &mut x352, x350, x326, x323); + let mut x353: u64 = 0; + let mut x354: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x353, &mut x354, 0x0, x305, x337); + let mut x355: u64 = 0; + let mut x356: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x355, &mut x356, x354, x307, x339); + let mut x357: u64 = 0; + let mut x358: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x357, &mut x358, x356, x309, x341); + let mut x359: u64 = 0; + let mut x360: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x359, &mut x360, x358, x311, x343); + let mut x361: u64 = 0; + let mut x362: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x361, &mut x362, x360, x313, x345); + let mut x363: u64 = 0; + let mut x364: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x363, &mut x364, x362, x315, x347); + let mut x365: u64 = 0; + let mut x366: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x365, &mut x366, x364, x317, x349); + let mut x367: u64 = 0; + let mut x368: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x367, &mut x368, x366, x319, x351); + let mut x369: u64 = 0; + let mut x370: u64 = 0; + fiat_bp512_mulx_u64(&mut x369, &mut x370, x4, 0x3c4c9d05a9ff6450); + let mut x371: u64 = 0; + let mut x372: u64 = 0; + fiat_bp512_mulx_u64(&mut x371, &mut x372, x4, 0x202e19402056eecc); + let mut x373: u64 = 0; + let mut x374: u64 = 0; + fiat_bp512_mulx_u64(&mut x373, &mut x374, x4, 0xa16daa5fd42bff83); + let mut x375: u64 = 0; + let mut x376: u64 = 0; + fiat_bp512_mulx_u64(&mut x375, &mut x376, x4, 0x19486fd8d5898057); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp512_mulx_u64(&mut x377, &mut x378, x4, 0xe0c19a7783514a25); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp512_mulx_u64(&mut x379, &mut x380, x4, 0x53b7f9bc905affd3); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp512_mulx_u64(&mut x381, &mut x382, x4, 0x793fb13027157905); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp512_mulx_u64(&mut x383, &mut x384, x4, 0x49ad144a6158f205); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x385, &mut x386, 0x0, x384, x381); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x387, &mut x388, x386, x382, x379); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x389, &mut x390, x388, x380, x377); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x391, &mut x392, x390, x378, x375); + let mut x393: u64 = 0; + let mut x394: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x393, &mut x394, x392, x376, x373); + let mut x395: u64 = 0; + let mut x396: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x395, &mut x396, x394, x374, x371); + let mut x397: u64 = 0; + let mut x398: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x397, &mut x398, x396, x372, x369); + let mut x399: u64 = 0; + let mut x400: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x399, &mut x400, 0x0, x355, x383); + let mut x401: u64 = 0; + let mut x402: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x401, &mut x402, x400, x357, x385); + let mut x403: u64 = 0; + let mut x404: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x403, &mut x404, x402, x359, x387); + let mut x405: u64 = 0; + let mut x406: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x405, &mut x406, x404, x361, x389); + let mut x407: u64 = 0; + let mut x408: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x407, &mut x408, x406, x363, x391); + let mut x409: u64 = 0; + let mut x410: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x409, &mut x410, x408, x365, x393); + let mut x411: u64 = 0; + let mut x412: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x411, &mut x412, x410, x367, x395); + let mut x413: u64 = 0; + let mut x414: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x413, + &mut x414, + x412, + (((x368 as u64) + ((x320 as u64) + ((x304 as u64) + x276))) + ((x352 as u64) + x324)), + x397, + ); + let mut x415: u64 = 0; + let mut x416: u64 = 0; + fiat_bp512_mulx_u64(&mut x415, &mut x416, x399, 0x839b32207d89efc5); + let mut x417: u64 = 0; + let mut x418: u64 = 0; + fiat_bp512_mulx_u64(&mut x417, &mut x418, x415, 0xaadd9db8dbe9c48b); + let mut x419: u64 = 0; + let mut x420: u64 = 0; + fiat_bp512_mulx_u64(&mut x419, &mut x420, x415, 0x3fd4e6ae33c9fc07); + let mut x421: u64 = 0; + let mut x422: u64 = 0; + fiat_bp512_mulx_u64(&mut x421, &mut x422, x415, 0xcb308db3b3c9d20e); + let mut x423: u64 = 0; + let mut x424: u64 = 0; + fiat_bp512_mulx_u64(&mut x423, &mut x424, x415, 0xd6639cca70330871); + let mut x425: u64 = 0; + let mut x426: u64 = 0; + fiat_bp512_mulx_u64(&mut x425, &mut x426, x415, 0x7d4d9b009bc66842); + let mut x427: u64 = 0; + let mut x428: u64 = 0; + fiat_bp512_mulx_u64(&mut x427, &mut x428, x415, 0xaecda12ae6a380e6); + let mut x429: u64 = 0; + let mut x430: u64 = 0; + fiat_bp512_mulx_u64(&mut x429, &mut x430, x415, 0x2881ff2f2d82c685); + let mut x431: u64 = 0; + let mut x432: u64 = 0; + fiat_bp512_mulx_u64(&mut x431, &mut x432, x415, 0x28aa6056583a48f3); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x433, &mut x434, 0x0, x432, x429); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x435, &mut x436, x434, x430, x427); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x437, &mut x438, x436, x428, x425); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x439, &mut x440, x438, x426, x423); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x441, &mut x442, x440, x424, x421); + let mut x443: u64 = 0; + let mut x444: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x443, &mut x444, x442, x422, x419); + let mut x445: u64 = 0; + let mut x446: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x445, &mut x446, x444, x420, x417); + let mut x447: u64 = 0; + let mut x448: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x447, &mut x448, 0x0, x399, x431); + let mut x449: u64 = 0; + let mut x450: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x449, &mut x450, x448, x401, x433); + let mut x451: u64 = 0; + let mut x452: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x451, &mut x452, x450, x403, x435); + let mut x453: u64 = 0; + let mut x454: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x453, &mut x454, x452, x405, x437); + let mut x455: u64 = 0; + let mut x456: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x455, &mut x456, x454, x407, x439); + let mut x457: u64 = 0; + let mut x458: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x457, &mut x458, x456, x409, x441); + let mut x459: u64 = 0; + let mut x460: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x459, &mut x460, x458, x411, x443); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x461, &mut x462, x460, x413, x445); + let mut x463: u64 = 0; + let mut x464: u64 = 0; + fiat_bp512_mulx_u64(&mut x463, &mut x464, x5, 0x3c4c9d05a9ff6450); + let mut x465: u64 = 0; + let mut x466: u64 = 0; + fiat_bp512_mulx_u64(&mut x465, &mut x466, x5, 0x202e19402056eecc); + let mut x467: u64 = 0; + let mut x468: u64 = 0; + fiat_bp512_mulx_u64(&mut x467, &mut x468, x5, 0xa16daa5fd42bff83); + let mut x469: u64 = 0; + let mut x470: u64 = 0; + fiat_bp512_mulx_u64(&mut x469, &mut x470, x5, 0x19486fd8d5898057); + let mut x471: u64 = 0; + let mut x472: u64 = 0; + fiat_bp512_mulx_u64(&mut x471, &mut x472, x5, 0xe0c19a7783514a25); + let mut x473: u64 = 0; + let mut x474: u64 = 0; + fiat_bp512_mulx_u64(&mut x473, &mut x474, x5, 0x53b7f9bc905affd3); + let mut x475: u64 = 0; + let mut x476: u64 = 0; + fiat_bp512_mulx_u64(&mut x475, &mut x476, x5, 0x793fb13027157905); + let mut x477: u64 = 0; + let mut x478: u64 = 0; + fiat_bp512_mulx_u64(&mut x477, &mut x478, x5, 0x49ad144a6158f205); + let mut x479: u64 = 0; + let mut x480: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x479, &mut x480, 0x0, x478, x475); + let mut x481: u64 = 0; + let mut x482: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x481, &mut x482, x480, x476, x473); + let mut x483: u64 = 0; + let mut x484: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x483, &mut x484, x482, x474, x471); + let mut x485: u64 = 0; + let mut x486: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x485, &mut x486, x484, x472, x469); + let mut x487: u64 = 0; + let mut x488: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x487, &mut x488, x486, x470, x467); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x489, &mut x490, x488, x468, x465); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x491, &mut x492, x490, x466, x463); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x493, &mut x494, 0x0, x449, x477); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x495, &mut x496, x494, x451, x479); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x497, &mut x498, x496, x453, x481); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x499, &mut x500, x498, x455, x483); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x501, &mut x502, x500, x457, x485); + let mut x503: u64 = 0; + let mut x504: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x503, &mut x504, x502, x459, x487); + let mut x505: u64 = 0; + let mut x506: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x505, &mut x506, x504, x461, x489); + let mut x507: u64 = 0; + let mut x508: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x507, + &mut x508, + x506, + (((x462 as u64) + ((x414 as u64) + ((x398 as u64) + x370))) + ((x446 as u64) + x418)), + x491, + ); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_mulx_u64(&mut x509, &mut x510, x493, 0x839b32207d89efc5); + let mut x511: u64 = 0; + let mut x512: u64 = 0; + fiat_bp512_mulx_u64(&mut x511, &mut x512, x509, 0xaadd9db8dbe9c48b); + let mut x513: u64 = 0; + let mut x514: u64 = 0; + fiat_bp512_mulx_u64(&mut x513, &mut x514, x509, 0x3fd4e6ae33c9fc07); + let mut x515: u64 = 0; + let mut x516: u64 = 0; + fiat_bp512_mulx_u64(&mut x515, &mut x516, x509, 0xcb308db3b3c9d20e); + let mut x517: u64 = 0; + let mut x518: u64 = 0; + fiat_bp512_mulx_u64(&mut x517, &mut x518, x509, 0xd6639cca70330871); + let mut x519: u64 = 0; + let mut x520: u64 = 0; + fiat_bp512_mulx_u64(&mut x519, &mut x520, x509, 0x7d4d9b009bc66842); + let mut x521: u64 = 0; + let mut x522: u64 = 0; + fiat_bp512_mulx_u64(&mut x521, &mut x522, x509, 0xaecda12ae6a380e6); + let mut x523: u64 = 0; + let mut x524: u64 = 0; + fiat_bp512_mulx_u64(&mut x523, &mut x524, x509, 0x2881ff2f2d82c685); + let mut x525: u64 = 0; + let mut x526: u64 = 0; + fiat_bp512_mulx_u64(&mut x525, &mut x526, x509, 0x28aa6056583a48f3); + let mut x527: u64 = 0; + let mut x528: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x527, &mut x528, 0x0, x526, x523); + let mut x529: u64 = 0; + let mut x530: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x529, &mut x530, x528, x524, x521); + let mut x531: u64 = 0; + let mut x532: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x531, &mut x532, x530, x522, x519); + let mut x533: u64 = 0; + let mut x534: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x533, &mut x534, x532, x520, x517); + let mut x535: u64 = 0; + let mut x536: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x535, &mut x536, x534, x518, x515); + let mut x537: u64 = 0; + let mut x538: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x537, &mut x538, x536, x516, x513); + let mut x539: u64 = 0; + let mut x540: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x539, &mut x540, x538, x514, x511); + let mut x541: u64 = 0; + let mut x542: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x541, &mut x542, 0x0, x493, x525); + let mut x543: u64 = 0; + let mut x544: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x543, &mut x544, x542, x495, x527); + let mut x545: u64 = 0; + let mut x546: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x545, &mut x546, x544, x497, x529); + let mut x547: u64 = 0; + let mut x548: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x547, &mut x548, x546, x499, x531); + let mut x549: u64 = 0; + let mut x550: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x549, &mut x550, x548, x501, x533); + let mut x551: u64 = 0; + let mut x552: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x551, &mut x552, x550, x503, x535); + let mut x553: u64 = 0; + let mut x554: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x553, &mut x554, x552, x505, x537); + let mut x555: u64 = 0; + let mut x556: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x555, &mut x556, x554, x507, x539); + let mut x557: u64 = 0; + let mut x558: u64 = 0; + fiat_bp512_mulx_u64(&mut x557, &mut x558, x6, 0x3c4c9d05a9ff6450); + let mut x559: u64 = 0; + let mut x560: u64 = 0; + fiat_bp512_mulx_u64(&mut x559, &mut x560, x6, 0x202e19402056eecc); + let mut x561: u64 = 0; + let mut x562: u64 = 0; + fiat_bp512_mulx_u64(&mut x561, &mut x562, x6, 0xa16daa5fd42bff83); + let mut x563: u64 = 0; + let mut x564: u64 = 0; + fiat_bp512_mulx_u64(&mut x563, &mut x564, x6, 0x19486fd8d5898057); + let mut x565: u64 = 0; + let mut x566: u64 = 0; + fiat_bp512_mulx_u64(&mut x565, &mut x566, x6, 0xe0c19a7783514a25); + let mut x567: u64 = 0; + let mut x568: u64 = 0; + fiat_bp512_mulx_u64(&mut x567, &mut x568, x6, 0x53b7f9bc905affd3); + let mut x569: u64 = 0; + let mut x570: u64 = 0; + fiat_bp512_mulx_u64(&mut x569, &mut x570, x6, 0x793fb13027157905); + let mut x571: u64 = 0; + let mut x572: u64 = 0; + fiat_bp512_mulx_u64(&mut x571, &mut x572, x6, 0x49ad144a6158f205); + let mut x573: u64 = 0; + let mut x574: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x573, &mut x574, 0x0, x572, x569); + let mut x575: u64 = 0; + let mut x576: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x575, &mut x576, x574, x570, x567); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x577, &mut x578, x576, x568, x565); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x579, &mut x580, x578, x566, x563); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x581, &mut x582, x580, x564, x561); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x583, &mut x584, x582, x562, x559); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x585, &mut x586, x584, x560, x557); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x587, &mut x588, 0x0, x543, x571); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x589, &mut x590, x588, x545, x573); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x591, &mut x592, x590, x547, x575); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x593, &mut x594, x592, x549, x577); + let mut x595: u64 = 0; + let mut x596: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x595, &mut x596, x594, x551, x579); + let mut x597: u64 = 0; + let mut x598: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x597, &mut x598, x596, x553, x581); + let mut x599: u64 = 0; + let mut x600: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x599, &mut x600, x598, x555, x583); + let mut x601: u64 = 0; + let mut x602: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x601, + &mut x602, + x600, + (((x556 as u64) + ((x508 as u64) + ((x492 as u64) + x464))) + ((x540 as u64) + x512)), + x585, + ); + let mut x603: u64 = 0; + let mut x604: u64 = 0; + fiat_bp512_mulx_u64(&mut x603, &mut x604, x587, 0x839b32207d89efc5); + let mut x605: u64 = 0; + let mut x606: u64 = 0; + fiat_bp512_mulx_u64(&mut x605, &mut x606, x603, 0xaadd9db8dbe9c48b); + let mut x607: u64 = 0; + let mut x608: u64 = 0; + fiat_bp512_mulx_u64(&mut x607, &mut x608, x603, 0x3fd4e6ae33c9fc07); + let mut x609: u64 = 0; + let mut x610: u64 = 0; + fiat_bp512_mulx_u64(&mut x609, &mut x610, x603, 0xcb308db3b3c9d20e); + let mut x611: u64 = 0; + let mut x612: u64 = 0; + fiat_bp512_mulx_u64(&mut x611, &mut x612, x603, 0xd6639cca70330871); + let mut x613: u64 = 0; + let mut x614: u64 = 0; + fiat_bp512_mulx_u64(&mut x613, &mut x614, x603, 0x7d4d9b009bc66842); + let mut x615: u64 = 0; + let mut x616: u64 = 0; + fiat_bp512_mulx_u64(&mut x615, &mut x616, x603, 0xaecda12ae6a380e6); + let mut x617: u64 = 0; + let mut x618: u64 = 0; + fiat_bp512_mulx_u64(&mut x617, &mut x618, x603, 0x2881ff2f2d82c685); + let mut x619: u64 = 0; + let mut x620: u64 = 0; + fiat_bp512_mulx_u64(&mut x619, &mut x620, x603, 0x28aa6056583a48f3); + let mut x621: u64 = 0; + let mut x622: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x621, &mut x622, 0x0, x620, x617); + let mut x623: u64 = 0; + let mut x624: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x623, &mut x624, x622, x618, x615); + let mut x625: u64 = 0; + let mut x626: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x625, &mut x626, x624, x616, x613); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x627, &mut x628, x626, x614, x611); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x629, &mut x630, x628, x612, x609); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x631, &mut x632, x630, x610, x607); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x633, &mut x634, x632, x608, x605); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x635, &mut x636, 0x0, x587, x619); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x637, &mut x638, x636, x589, x621); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x639, &mut x640, x638, x591, x623); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x641, &mut x642, x640, x593, x625); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x643, &mut x644, x642, x595, x627); + let mut x645: u64 = 0; + let mut x646: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x645, &mut x646, x644, x597, x629); + let mut x647: u64 = 0; + let mut x648: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x647, &mut x648, x646, x599, x631); + let mut x649: u64 = 0; + let mut x650: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x649, &mut x650, x648, x601, x633); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_mulx_u64(&mut x651, &mut x652, x7, 0x3c4c9d05a9ff6450); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_mulx_u64(&mut x653, &mut x654, x7, 0x202e19402056eecc); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_mulx_u64(&mut x655, &mut x656, x7, 0xa16daa5fd42bff83); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_mulx_u64(&mut x657, &mut x658, x7, 0x19486fd8d5898057); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_mulx_u64(&mut x659, &mut x660, x7, 0xe0c19a7783514a25); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_mulx_u64(&mut x661, &mut x662, x7, 0x53b7f9bc905affd3); + let mut x663: u64 = 0; + let mut x664: u64 = 0; + fiat_bp512_mulx_u64(&mut x663, &mut x664, x7, 0x793fb13027157905); + let mut x665: u64 = 0; + let mut x666: u64 = 0; + fiat_bp512_mulx_u64(&mut x665, &mut x666, x7, 0x49ad144a6158f205); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x667, &mut x668, 0x0, x666, x663); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x669, &mut x670, x668, x664, x661); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x671, &mut x672, x670, x662, x659); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x673, &mut x674, x672, x660, x657); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x675, &mut x676, x674, x658, x655); + let mut x677: u64 = 0; + let mut x678: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x677, &mut x678, x676, x656, x653); + let mut x679: u64 = 0; + let mut x680: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x679, &mut x680, x678, x654, x651); + let mut x681: u64 = 0; + let mut x682: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x681, &mut x682, 0x0, x637, x665); + let mut x683: u64 = 0; + let mut x684: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x683, &mut x684, x682, x639, x667); + let mut x685: u64 = 0; + let mut x686: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x685, &mut x686, x684, x641, x669); + let mut x687: u64 = 0; + let mut x688: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x687, &mut x688, x686, x643, x671); + let mut x689: u64 = 0; + let mut x690: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x689, &mut x690, x688, x645, x673); + let mut x691: u64 = 0; + let mut x692: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x691, &mut x692, x690, x647, x675); + let mut x693: u64 = 0; + let mut x694: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x693, &mut x694, x692, x649, x677); + let mut x695: u64 = 0; + let mut x696: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x695, + &mut x696, + x694, + (((x650 as u64) + ((x602 as u64) + ((x586 as u64) + x558))) + ((x634 as u64) + x606)), + x679, + ); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_mulx_u64(&mut x697, &mut x698, x681, 0x839b32207d89efc5); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_mulx_u64(&mut x699, &mut x700, x697, 0xaadd9db8dbe9c48b); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_mulx_u64(&mut x701, &mut x702, x697, 0x3fd4e6ae33c9fc07); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_mulx_u64(&mut x703, &mut x704, x697, 0xcb308db3b3c9d20e); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_mulx_u64(&mut x705, &mut x706, x697, 0xd6639cca70330871); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_mulx_u64(&mut x707, &mut x708, x697, 0x7d4d9b009bc66842); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_mulx_u64(&mut x709, &mut x710, x697, 0xaecda12ae6a380e6); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_mulx_u64(&mut x711, &mut x712, x697, 0x2881ff2f2d82c685); + let mut x713: u64 = 0; + let mut x714: u64 = 0; + fiat_bp512_mulx_u64(&mut x713, &mut x714, x697, 0x28aa6056583a48f3); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x715, &mut x716, 0x0, x714, x711); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x717, &mut x718, x716, x712, x709); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x719, &mut x720, x718, x710, x707); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x721, &mut x722, x720, x708, x705); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x723, &mut x724, x722, x706, x703); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x725, &mut x726, x724, x704, x701); + let mut x727: u64 = 0; + let mut x728: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x727, &mut x728, x726, x702, x699); + let mut x729: u64 = 0; + let mut x730: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x729, &mut x730, 0x0, x681, x713); + let mut x731: u64 = 0; + let mut x732: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x731, &mut x732, x730, x683, x715); + let mut x733: u64 = 0; + let mut x734: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x733, &mut x734, x732, x685, x717); + let mut x735: u64 = 0; + let mut x736: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x735, &mut x736, x734, x687, x719); + let mut x737: u64 = 0; + let mut x738: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x737, &mut x738, x736, x689, x721); + let mut x739: u64 = 0; + let mut x740: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x739, &mut x740, x738, x691, x723); + let mut x741: u64 = 0; + let mut x742: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x741, &mut x742, x740, x693, x725); + let mut x743: u64 = 0; + let mut x744: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x743, &mut x744, x742, x695, x727); + let x745: u64 = + (((x744 as u64) + ((x696 as u64) + ((x680 as u64) + x652))) + ((x728 as u64) + x700)); + let mut x746: u64 = 0; + let mut x747: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x746, &mut x747, 0x0, x731, 0x28aa6056583a48f3); + let mut x748: u64 = 0; + let mut x749: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x748, &mut x749, x747, x733, 0x2881ff2f2d82c685); + let mut x750: u64 = 0; + let mut x751: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x750, &mut x751, x749, x735, 0xaecda12ae6a380e6); + let mut x752: u64 = 0; + let mut x753: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x752, &mut x753, x751, x737, 0x7d4d9b009bc66842); + let mut x754: u64 = 0; + let mut x755: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x754, &mut x755, x753, x739, 0xd6639cca70330871); + let mut x756: u64 = 0; + let mut x757: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x756, &mut x757, x755, x741, 0xcb308db3b3c9d20e); + let mut x758: u64 = 0; + let mut x759: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x758, &mut x759, x757, x743, 0x3fd4e6ae33c9fc07); + let mut x760: u64 = 0; + let mut x761: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x760, &mut x761, x759, x745, 0xaadd9db8dbe9c48b); + let mut x762: u64 = 0; + let mut x763: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x762, &mut x763, x761, (0x0 as u64), (0x0 as u64)); + let mut x764: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x764, x763, x746, x731); + let mut x765: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x765, x763, x748, x733); + let mut x766: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x766, x763, x750, x735); + let mut x767: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x767, x763, x752, x737); + let mut x768: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x768, x763, x754, x739); + let mut x769: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x769, x763, x756, x741); + let mut x770: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x770, x763, x758, x743); + let mut x771: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x771, x763, x760, x745); + out1[0] = x764; + out1[1] = x765; + out1[2] = x766; + out1[3] = x767; + out1[4] = x768; + out1[5] = x769; + out1[6] = x770; + out1[7] = x771; } /// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. @@ -4847,8 +4968,10 @@ pub fn fiat_bp512_to_montgomery(out1: &mut fiat_bp512_montgomery_domain_field_el /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] pub fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { - let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); - *out1 = x1; + let x1: u64 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); + *out1 = x1; } /// The function fiat_bp512_selectznz is a multi-limb conditional select. @@ -4863,31 +4986,36 @@ pub fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_selectznz(out1: &mut [u64; 8], arg1: fiat_bp512_u1, arg2: &[u64; 8], arg3: &[u64; 8]) { - let mut x1: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); - let mut x2: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); - let mut x3: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); - let mut x4: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); - let mut x5: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); - let mut x6: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); - let mut x7: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x7, arg1, (arg2[6]), (arg3[6])); - let mut x8: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x8, arg1, (arg2[7]), (arg3[7])); - out1[0] = x1; - out1[1] = x2; - out1[2] = x3; - out1[3] = x4; - out1[4] = x5; - out1[5] = x6; - out1[6] = x7; - out1[7] = x8; +pub fn fiat_bp512_selectznz( + out1: &mut [u64; 8], + arg1: fiat_bp512_u1, + arg2: &[u64; 8], + arg3: &[u64; 8], +) { + let mut x1: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x8, arg1, (arg2[7]), (arg3[7])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; } /// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. @@ -4903,190 +5031,190 @@ pub fn fiat_bp512_selectznz(out1: &mut [u64; 8], arg1: fiat_bp512_u1, arg2: &[u6 /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { - let x1: u64 = (arg1[7]); - let x2: u64 = (arg1[6]); - let x3: u64 = (arg1[5]); - let x4: u64 = (arg1[4]); - let x5: u64 = (arg1[3]); - let x6: u64 = (arg1[2]); - let x7: u64 = (arg1[1]); - let x8: u64 = (arg1[0]); - let x9: u8 = ((x8 & (0xff as u64)) as u8); - let x10: u64 = (x8 >> 8); - let x11: u8 = ((x10 & (0xff as u64)) as u8); - let x12: u64 = (x10 >> 8); - let x13: u8 = ((x12 & (0xff as u64)) as u8); - let x14: u64 = (x12 >> 8); - let x15: u8 = ((x14 & (0xff as u64)) as u8); - let x16: u64 = (x14 >> 8); - let x17: u8 = ((x16 & (0xff as u64)) as u8); - let x18: u64 = (x16 >> 8); - let x19: u8 = ((x18 & (0xff as u64)) as u8); - let x20: u64 = (x18 >> 8); - let x21: u8 = ((x20 & (0xff as u64)) as u8); - let x22: u8 = ((x20 >> 8) as u8); - let x23: u8 = ((x7 & (0xff as u64)) as u8); - let x24: u64 = (x7 >> 8); - let x25: u8 = ((x24 & (0xff as u64)) as u8); - let x26: u64 = (x24 >> 8); - let x27: u8 = ((x26 & (0xff as u64)) as u8); - let x28: u64 = (x26 >> 8); - let x29: u8 = ((x28 & (0xff as u64)) as u8); - let x30: u64 = (x28 >> 8); - let x31: u8 = ((x30 & (0xff as u64)) as u8); - let x32: u64 = (x30 >> 8); - let x33: u8 = ((x32 & (0xff as u64)) as u8); - let x34: u64 = (x32 >> 8); - let x35: u8 = ((x34 & (0xff as u64)) as u8); - let x36: u8 = ((x34 >> 8) as u8); - let x37: u8 = ((x6 & (0xff as u64)) as u8); - let x38: u64 = (x6 >> 8); - let x39: u8 = ((x38 & (0xff as u64)) as u8); - let x40: u64 = (x38 >> 8); - let x41: u8 = ((x40 & (0xff as u64)) as u8); - let x42: u64 = (x40 >> 8); - let x43: u8 = ((x42 & (0xff as u64)) as u8); - let x44: u64 = (x42 >> 8); - let x45: u8 = ((x44 & (0xff as u64)) as u8); - let x46: u64 = (x44 >> 8); - let x47: u8 = ((x46 & (0xff as u64)) as u8); - let x48: u64 = (x46 >> 8); - let x49: u8 = ((x48 & (0xff as u64)) as u8); - let x50: u8 = ((x48 >> 8) as u8); - let x51: u8 = ((x5 & (0xff as u64)) as u8); - let x52: u64 = (x5 >> 8); - let x53: u8 = ((x52 & (0xff as u64)) as u8); - let x54: u64 = (x52 >> 8); - let x55: u8 = ((x54 & (0xff as u64)) as u8); - let x56: u64 = (x54 >> 8); - let x57: u8 = ((x56 & (0xff as u64)) as u8); - let x58: u64 = (x56 >> 8); - let x59: u8 = ((x58 & (0xff as u64)) as u8); - let x60: u64 = (x58 >> 8); - let x61: u8 = ((x60 & (0xff as u64)) as u8); - let x62: u64 = (x60 >> 8); - let x63: u8 = ((x62 & (0xff as u64)) as u8); - let x64: u8 = ((x62 >> 8) as u8); - let x65: u8 = ((x4 & (0xff as u64)) as u8); - let x66: u64 = (x4 >> 8); - let x67: u8 = ((x66 & (0xff as u64)) as u8); - let x68: u64 = (x66 >> 8); - let x69: u8 = ((x68 & (0xff as u64)) as u8); - let x70: u64 = (x68 >> 8); - let x71: u8 = ((x70 & (0xff as u64)) as u8); - let x72: u64 = (x70 >> 8); - let x73: u8 = ((x72 & (0xff as u64)) as u8); - let x74: u64 = (x72 >> 8); - let x75: u8 = ((x74 & (0xff as u64)) as u8); - let x76: u64 = (x74 >> 8); - let x77: u8 = ((x76 & (0xff as u64)) as u8); - let x78: u8 = ((x76 >> 8) as u8); - let x79: u8 = ((x3 & (0xff as u64)) as u8); - let x80: u64 = (x3 >> 8); - let x81: u8 = ((x80 & (0xff as u64)) as u8); - let x82: u64 = (x80 >> 8); - let x83: u8 = ((x82 & (0xff as u64)) as u8); - let x84: u64 = (x82 >> 8); - let x85: u8 = ((x84 & (0xff as u64)) as u8); - let x86: u64 = (x84 >> 8); - let x87: u8 = ((x86 & (0xff as u64)) as u8); - let x88: u64 = (x86 >> 8); - let x89: u8 = ((x88 & (0xff as u64)) as u8); - let x90: u64 = (x88 >> 8); - let x91: u8 = ((x90 & (0xff as u64)) as u8); - let x92: u8 = ((x90 >> 8) as u8); - let x93: u8 = ((x2 & (0xff as u64)) as u8); - let x94: u64 = (x2 >> 8); - let x95: u8 = ((x94 & (0xff as u64)) as u8); - let x96: u64 = (x94 >> 8); - let x97: u8 = ((x96 & (0xff as u64)) as u8); - let x98: u64 = (x96 >> 8); - let x99: u8 = ((x98 & (0xff as u64)) as u8); - let x100: u64 = (x98 >> 8); - let x101: u8 = ((x100 & (0xff as u64)) as u8); - let x102: u64 = (x100 >> 8); - let x103: u8 = ((x102 & (0xff as u64)) as u8); - let x104: u64 = (x102 >> 8); - let x105: u8 = ((x104 & (0xff as u64)) as u8); - let x106: u8 = ((x104 >> 8) as u8); - let x107: u8 = ((x1 & (0xff as u64)) as u8); - let x108: u64 = (x1 >> 8); - let x109: u8 = ((x108 & (0xff as u64)) as u8); - let x110: u64 = (x108 >> 8); - let x111: u8 = ((x110 & (0xff as u64)) as u8); - let x112: u64 = (x110 >> 8); - let x113: u8 = ((x112 & (0xff as u64)) as u8); - let x114: u64 = (x112 >> 8); - let x115: u8 = ((x114 & (0xff as u64)) as u8); - let x116: u64 = (x114 >> 8); - let x117: u8 = ((x116 & (0xff as u64)) as u8); - let x118: u64 = (x116 >> 8); - let x119: u8 = ((x118 & (0xff as u64)) as u8); - let x120: u8 = ((x118 >> 8) as u8); - out1[0] = x9; - out1[1] = x11; - out1[2] = x13; - out1[3] = x15; - out1[4] = x17; - out1[5] = x19; - out1[6] = x21; - out1[7] = x22; - out1[8] = x23; - out1[9] = x25; - out1[10] = x27; - out1[11] = x29; - out1[12] = x31; - out1[13] = x33; - out1[14] = x35; - out1[15] = x36; - out1[16] = x37; - out1[17] = x39; - out1[18] = x41; - out1[19] = x43; - out1[20] = x45; - out1[21] = x47; - out1[22] = x49; - out1[23] = x50; - out1[24] = x51; - out1[25] = x53; - out1[26] = x55; - out1[27] = x57; - out1[28] = x59; - out1[29] = x61; - out1[30] = x63; - out1[31] = x64; - out1[32] = x65; - out1[33] = x67; - out1[34] = x69; - out1[35] = x71; - out1[36] = x73; - out1[37] = x75; - out1[38] = x77; - out1[39] = x78; - out1[40] = x79; - out1[41] = x81; - out1[42] = x83; - out1[43] = x85; - out1[44] = x87; - out1[45] = x89; - out1[46] = x91; - out1[47] = x92; - out1[48] = x93; - out1[49] = x95; - out1[50] = x97; - out1[51] = x99; - out1[52] = x101; - out1[53] = x103; - out1[54] = x105; - out1[55] = x106; - out1[56] = x107; - out1[57] = x109; - out1[58] = x111; - out1[59] = x113; - out1[60] = x115; - out1[61] = x117; - out1[62] = x119; - out1[63] = x120; + let x1: u64 = (arg1[7]); + let x2: u64 = (arg1[6]); + let x3: u64 = (arg1[5]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[3]); + let x6: u64 = (arg1[2]); + let x7: u64 = (arg1[1]); + let x8: u64 = (arg1[0]); + let x9: u8 = ((x8 & (0xff as u64)) as u8); + let x10: u64 = (x8 >> 8); + let x11: u8 = ((x10 & (0xff as u64)) as u8); + let x12: u64 = (x10 >> 8); + let x13: u8 = ((x12 & (0xff as u64)) as u8); + let x14: u64 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u64)) as u8); + let x16: u64 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u64)) as u8); + let x18: u64 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u64)) as u8); + let x20: u64 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u64)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x7 & (0xff as u64)) as u8); + let x24: u64 = (x7 >> 8); + let x25: u8 = ((x24 & (0xff as u64)) as u8); + let x26: u64 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u64)) as u8); + let x28: u64 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u64)) as u8); + let x30: u64 = (x28 >> 8); + let x31: u8 = ((x30 & (0xff as u64)) as u8); + let x32: u64 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u64)) as u8); + let x34: u64 = (x32 >> 8); + let x35: u8 = ((x34 & (0xff as u64)) as u8); + let x36: u8 = ((x34 >> 8) as u8); + let x37: u8 = ((x6 & (0xff as u64)) as u8); + let x38: u64 = (x6 >> 8); + let x39: u8 = ((x38 & (0xff as u64)) as u8); + let x40: u64 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u64)) as u8); + let x42: u64 = (x40 >> 8); + let x43: u8 = ((x42 & (0xff as u64)) as u8); + let x44: u64 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u64)) as u8); + let x46: u64 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u64)) as u8); + let x48: u64 = (x46 >> 8); + let x49: u8 = ((x48 & (0xff as u64)) as u8); + let x50: u8 = ((x48 >> 8) as u8); + let x51: u8 = ((x5 & (0xff as u64)) as u8); + let x52: u64 = (x5 >> 8); + let x53: u8 = ((x52 & (0xff as u64)) as u8); + let x54: u64 = (x52 >> 8); + let x55: u8 = ((x54 & (0xff as u64)) as u8); + let x56: u64 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u64)) as u8); + let x58: u64 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u64)) as u8); + let x60: u64 = (x58 >> 8); + let x61: u8 = ((x60 & (0xff as u64)) as u8); + let x62: u64 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u64)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x4 & (0xff as u64)) as u8); + let x66: u64 = (x4 >> 8); + let x67: u8 = ((x66 & (0xff as u64)) as u8); + let x68: u64 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u64)) as u8); + let x70: u64 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u64)) as u8); + let x72: u64 = (x70 >> 8); + let x73: u8 = ((x72 & (0xff as u64)) as u8); + let x74: u64 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u64)) as u8); + let x76: u64 = (x74 >> 8); + let x77: u8 = ((x76 & (0xff as u64)) as u8); + let x78: u8 = ((x76 >> 8) as u8); + let x79: u8 = ((x3 & (0xff as u64)) as u8); + let x80: u64 = (x3 >> 8); + let x81: u8 = ((x80 & (0xff as u64)) as u8); + let x82: u64 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u64)) as u8); + let x84: u64 = (x82 >> 8); + let x85: u8 = ((x84 & (0xff as u64)) as u8); + let x86: u64 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u64)) as u8); + let x88: u64 = (x86 >> 8); + let x89: u8 = ((x88 & (0xff as u64)) as u8); + let x90: u64 = (x88 >> 8); + let x91: u8 = ((x90 & (0xff as u64)) as u8); + let x92: u8 = ((x90 >> 8) as u8); + let x93: u8 = ((x2 & (0xff as u64)) as u8); + let x94: u64 = (x2 >> 8); + let x95: u8 = ((x94 & (0xff as u64)) as u8); + let x96: u64 = (x94 >> 8); + let x97: u8 = ((x96 & (0xff as u64)) as u8); + let x98: u64 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u64)) as u8); + let x100: u64 = (x98 >> 8); + let x101: u8 = ((x100 & (0xff as u64)) as u8); + let x102: u64 = (x100 >> 8); + let x103: u8 = ((x102 & (0xff as u64)) as u8); + let x104: u64 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u64)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u64)) as u8); + let x108: u64 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u64)) as u8); + let x110: u64 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u64)) as u8); + let x112: u64 = (x110 >> 8); + let x113: u8 = ((x112 & (0xff as u64)) as u8); + let x114: u64 = (x112 >> 8); + let x115: u8 = ((x114 & (0xff as u64)) as u8); + let x116: u64 = (x114 >> 8); + let x117: u8 = ((x116 & (0xff as u64)) as u8); + let x118: u64 = (x116 >> 8); + let x119: u8 = ((x118 & (0xff as u64)) as u8); + let x120: u8 = ((x118 >> 8) as u8); + out1[0] = x9; + out1[1] = x11; + out1[2] = x13; + out1[3] = x15; + out1[4] = x17; + out1[5] = x19; + out1[6] = x21; + out1[7] = x22; + out1[8] = x23; + out1[9] = x25; + out1[10] = x27; + out1[11] = x29; + out1[12] = x31; + out1[13] = x33; + out1[14] = x35; + out1[15] = x36; + out1[16] = x37; + out1[17] = x39; + out1[18] = x41; + out1[19] = x43; + out1[20] = x45; + out1[21] = x47; + out1[22] = x49; + out1[23] = x50; + out1[24] = x51; + out1[25] = x53; + out1[26] = x55; + out1[27] = x57; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x71; + out1[36] = x73; + out1[37] = x75; + out1[38] = x77; + out1[39] = x78; + out1[40] = x79; + out1[41] = x81; + out1[42] = x83; + out1[43] = x85; + out1[44] = x87; + out1[45] = x89; + out1[46] = x91; + out1[47] = x92; + out1[48] = x93; + out1[49] = x95; + out1[50] = x97; + out1[51] = x99; + out1[52] = x101; + out1[53] = x103; + out1[54] = x105; + out1[55] = x106; + out1[56] = x107; + out1[57] = x109; + out1[58] = x111; + out1[59] = x113; + out1[60] = x115; + out1[61] = x117; + out1[62] = x119; + out1[63] = x120; } /// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. @@ -5103,134 +5231,134 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { - let x1: u64 = (((arg1[63]) as u64) << 56); - let x2: u64 = (((arg1[62]) as u64) << 48); - let x3: u64 = (((arg1[61]) as u64) << 40); - let x4: u64 = (((arg1[60]) as u64) << 32); - let x5: u64 = (((arg1[59]) as u64) << 24); - let x6: u64 = (((arg1[58]) as u64) << 16); - let x7: u64 = (((arg1[57]) as u64) << 8); - let x8: u8 = (arg1[56]); - let x9: u64 = (((arg1[55]) as u64) << 56); - let x10: u64 = (((arg1[54]) as u64) << 48); - let x11: u64 = (((arg1[53]) as u64) << 40); - let x12: u64 = (((arg1[52]) as u64) << 32); - let x13: u64 = (((arg1[51]) as u64) << 24); - let x14: u64 = (((arg1[50]) as u64) << 16); - let x15: u64 = (((arg1[49]) as u64) << 8); - let x16: u8 = (arg1[48]); - let x17: u64 = (((arg1[47]) as u64) << 56); - let x18: u64 = (((arg1[46]) as u64) << 48); - let x19: u64 = (((arg1[45]) as u64) << 40); - let x20: u64 = (((arg1[44]) as u64) << 32); - let x21: u64 = (((arg1[43]) as u64) << 24); - let x22: u64 = (((arg1[42]) as u64) << 16); - let x23: u64 = (((arg1[41]) as u64) << 8); - let x24: u8 = (arg1[40]); - let x25: u64 = (((arg1[39]) as u64) << 56); - let x26: u64 = (((arg1[38]) as u64) << 48); - let x27: u64 = (((arg1[37]) as u64) << 40); - let x28: u64 = (((arg1[36]) as u64) << 32); - let x29: u64 = (((arg1[35]) as u64) << 24); - let x30: u64 = (((arg1[34]) as u64) << 16); - let x31: u64 = (((arg1[33]) as u64) << 8); - let x32: u8 = (arg1[32]); - let x33: u64 = (((arg1[31]) as u64) << 56); - let x34: u64 = (((arg1[30]) as u64) << 48); - let x35: u64 = (((arg1[29]) as u64) << 40); - let x36: u64 = (((arg1[28]) as u64) << 32); - let x37: u64 = (((arg1[27]) as u64) << 24); - let x38: u64 = (((arg1[26]) as u64) << 16); - let x39: u64 = (((arg1[25]) as u64) << 8); - let x40: u8 = (arg1[24]); - let x41: u64 = (((arg1[23]) as u64) << 56); - let x42: u64 = (((arg1[22]) as u64) << 48); - let x43: u64 = (((arg1[21]) as u64) << 40); - let x44: u64 = (((arg1[20]) as u64) << 32); - let x45: u64 = (((arg1[19]) as u64) << 24); - let x46: u64 = (((arg1[18]) as u64) << 16); - let x47: u64 = (((arg1[17]) as u64) << 8); - let x48: u8 = (arg1[16]); - let x49: u64 = (((arg1[15]) as u64) << 56); - let x50: u64 = (((arg1[14]) as u64) << 48); - let x51: u64 = (((arg1[13]) as u64) << 40); - let x52: u64 = (((arg1[12]) as u64) << 32); - let x53: u64 = (((arg1[11]) as u64) << 24); - let x54: u64 = (((arg1[10]) as u64) << 16); - let x55: u64 = (((arg1[9]) as u64) << 8); - let x56: u8 = (arg1[8]); - let x57: u64 = (((arg1[7]) as u64) << 56); - let x58: u64 = (((arg1[6]) as u64) << 48); - let x59: u64 = (((arg1[5]) as u64) << 40); - let x60: u64 = (((arg1[4]) as u64) << 32); - let x61: u64 = (((arg1[3]) as u64) << 24); - let x62: u64 = (((arg1[2]) as u64) << 16); - let x63: u64 = (((arg1[1]) as u64) << 8); - let x64: u8 = (arg1[0]); - let x65: u64 = (x63 + (x64 as u64)); - let x66: u64 = (x62 + x65); - let x67: u64 = (x61 + x66); - let x68: u64 = (x60 + x67); - let x69: u64 = (x59 + x68); - let x70: u64 = (x58 + x69); - let x71: u64 = (x57 + x70); - let x72: u64 = (x55 + (x56 as u64)); - let x73: u64 = (x54 + x72); - let x74: u64 = (x53 + x73); - let x75: u64 = (x52 + x74); - let x76: u64 = (x51 + x75); - let x77: u64 = (x50 + x76); - let x78: u64 = (x49 + x77); - let x79: u64 = (x47 + (x48 as u64)); - let x80: u64 = (x46 + x79); - let x81: u64 = (x45 + x80); - let x82: u64 = (x44 + x81); - let x83: u64 = (x43 + x82); - let x84: u64 = (x42 + x83); - let x85: u64 = (x41 + x84); - let x86: u64 = (x39 + (x40 as u64)); - let x87: u64 = (x38 + x86); - let x88: u64 = (x37 + x87); - let x89: u64 = (x36 + x88); - let x90: u64 = (x35 + x89); - let x91: u64 = (x34 + x90); - let x92: u64 = (x33 + x91); - let x93: u64 = (x31 + (x32 as u64)); - let x94: u64 = (x30 + x93); - let x95: u64 = (x29 + x94); - let x96: u64 = (x28 + x95); - let x97: u64 = (x27 + x96); - let x98: u64 = (x26 + x97); - let x99: u64 = (x25 + x98); - let x100: u64 = (x23 + (x24 as u64)); - let x101: u64 = (x22 + x100); - let x102: u64 = (x21 + x101); - let x103: u64 = (x20 + x102); - let x104: u64 = (x19 + x103); - let x105: u64 = (x18 + x104); - let x106: u64 = (x17 + x105); - let x107: u64 = (x15 + (x16 as u64)); - let x108: u64 = (x14 + x107); - let x109: u64 = (x13 + x108); - let x110: u64 = (x12 + x109); - let x111: u64 = (x11 + x110); - let x112: u64 = (x10 + x111); - let x113: u64 = (x9 + x112); - let x114: u64 = (x7 + (x8 as u64)); - let x115: u64 = (x6 + x114); - let x116: u64 = (x5 + x115); - let x117: u64 = (x4 + x116); - let x118: u64 = (x3 + x117); - let x119: u64 = (x2 + x118); - let x120: u64 = (x1 + x119); - out1[0] = x71; - out1[1] = x78; - out1[2] = x85; - out1[3] = x92; - out1[4] = x99; - out1[5] = x106; - out1[6] = x113; - out1[7] = x120; + let x1: u64 = (((arg1[63]) as u64) << 56); + let x2: u64 = (((arg1[62]) as u64) << 48); + let x3: u64 = (((arg1[61]) as u64) << 40); + let x4: u64 = (((arg1[60]) as u64) << 32); + let x5: u64 = (((arg1[59]) as u64) << 24); + let x6: u64 = (((arg1[58]) as u64) << 16); + let x7: u64 = (((arg1[57]) as u64) << 8); + let x8: u8 = (arg1[56]); + let x9: u64 = (((arg1[55]) as u64) << 56); + let x10: u64 = (((arg1[54]) as u64) << 48); + let x11: u64 = (((arg1[53]) as u64) << 40); + let x12: u64 = (((arg1[52]) as u64) << 32); + let x13: u64 = (((arg1[51]) as u64) << 24); + let x14: u64 = (((arg1[50]) as u64) << 16); + let x15: u64 = (((arg1[49]) as u64) << 8); + let x16: u8 = (arg1[48]); + let x17: u64 = (((arg1[47]) as u64) << 56); + let x18: u64 = (((arg1[46]) as u64) << 48); + let x19: u64 = (((arg1[45]) as u64) << 40); + let x20: u64 = (((arg1[44]) as u64) << 32); + let x21: u64 = (((arg1[43]) as u64) << 24); + let x22: u64 = (((arg1[42]) as u64) << 16); + let x23: u64 = (((arg1[41]) as u64) << 8); + let x24: u8 = (arg1[40]); + let x25: u64 = (((arg1[39]) as u64) << 56); + let x26: u64 = (((arg1[38]) as u64) << 48); + let x27: u64 = (((arg1[37]) as u64) << 40); + let x28: u64 = (((arg1[36]) as u64) << 32); + let x29: u64 = (((arg1[35]) as u64) << 24); + let x30: u64 = (((arg1[34]) as u64) << 16); + let x31: u64 = (((arg1[33]) as u64) << 8); + let x32: u8 = (arg1[32]); + let x33: u64 = (((arg1[31]) as u64) << 56); + let x34: u64 = (((arg1[30]) as u64) << 48); + let x35: u64 = (((arg1[29]) as u64) << 40); + let x36: u64 = (((arg1[28]) as u64) << 32); + let x37: u64 = (((arg1[27]) as u64) << 24); + let x38: u64 = (((arg1[26]) as u64) << 16); + let x39: u64 = (((arg1[25]) as u64) << 8); + let x40: u8 = (arg1[24]); + let x41: u64 = (((arg1[23]) as u64) << 56); + let x42: u64 = (((arg1[22]) as u64) << 48); + let x43: u64 = (((arg1[21]) as u64) << 40); + let x44: u64 = (((arg1[20]) as u64) << 32); + let x45: u64 = (((arg1[19]) as u64) << 24); + let x46: u64 = (((arg1[18]) as u64) << 16); + let x47: u64 = (((arg1[17]) as u64) << 8); + let x48: u8 = (arg1[16]); + let x49: u64 = (((arg1[15]) as u64) << 56); + let x50: u64 = (((arg1[14]) as u64) << 48); + let x51: u64 = (((arg1[13]) as u64) << 40); + let x52: u64 = (((arg1[12]) as u64) << 32); + let x53: u64 = (((arg1[11]) as u64) << 24); + let x54: u64 = (((arg1[10]) as u64) << 16); + let x55: u64 = (((arg1[9]) as u64) << 8); + let x56: u8 = (arg1[8]); + let x57: u64 = (((arg1[7]) as u64) << 56); + let x58: u64 = (((arg1[6]) as u64) << 48); + let x59: u64 = (((arg1[5]) as u64) << 40); + let x60: u64 = (((arg1[4]) as u64) << 32); + let x61: u64 = (((arg1[3]) as u64) << 24); + let x62: u64 = (((arg1[2]) as u64) << 16); + let x63: u64 = (((arg1[1]) as u64) << 8); + let x64: u8 = (arg1[0]); + let x65: u64 = (x63 + (x64 as u64)); + let x66: u64 = (x62 + x65); + let x67: u64 = (x61 + x66); + let x68: u64 = (x60 + x67); + let x69: u64 = (x59 + x68); + let x70: u64 = (x58 + x69); + let x71: u64 = (x57 + x70); + let x72: u64 = (x55 + (x56 as u64)); + let x73: u64 = (x54 + x72); + let x74: u64 = (x53 + x73); + let x75: u64 = (x52 + x74); + let x76: u64 = (x51 + x75); + let x77: u64 = (x50 + x76); + let x78: u64 = (x49 + x77); + let x79: u64 = (x47 + (x48 as u64)); + let x80: u64 = (x46 + x79); + let x81: u64 = (x45 + x80); + let x82: u64 = (x44 + x81); + let x83: u64 = (x43 + x82); + let x84: u64 = (x42 + x83); + let x85: u64 = (x41 + x84); + let x86: u64 = (x39 + (x40 as u64)); + let x87: u64 = (x38 + x86); + let x88: u64 = (x37 + x87); + let x89: u64 = (x36 + x88); + let x90: u64 = (x35 + x89); + let x91: u64 = (x34 + x90); + let x92: u64 = (x33 + x91); + let x93: u64 = (x31 + (x32 as u64)); + let x94: u64 = (x30 + x93); + let x95: u64 = (x29 + x94); + let x96: u64 = (x28 + x95); + let x97: u64 = (x27 + x96); + let x98: u64 = (x26 + x97); + let x99: u64 = (x25 + x98); + let x100: u64 = (x23 + (x24 as u64)); + let x101: u64 = (x22 + x100); + let x102: u64 = (x21 + x101); + let x103: u64 = (x20 + x102); + let x104: u64 = (x19 + x103); + let x105: u64 = (x18 + x104); + let x106: u64 = (x17 + x105); + let x107: u64 = (x15 + (x16 as u64)); + let x108: u64 = (x14 + x107); + let x109: u64 = (x13 + x108); + let x110: u64 = (x12 + x109); + let x111: u64 = (x11 + x110); + let x112: u64 = (x10 + x111); + let x113: u64 = (x9 + x112); + let x114: u64 = (x7 + (x8 as u64)); + let x115: u64 = (x6 + x114); + let x116: u64 = (x5 + x115); + let x117: u64 = (x4 + x116); + let x118: u64 = (x3 + x117); + let x119: u64 = (x2 + x118); + let x120: u64 = (x1 + x119); + out1[0] = x71; + out1[1] = x78; + out1[2] = x85; + out1[3] = x92; + out1[4] = x99; + out1[5] = x106; + out1[6] = x113; + out1[7] = x120; } /// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. @@ -5241,14 +5369,14 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { /// #[inline] pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { - out1[0] = 0xd7559fa9a7c5b70d; - out1[1] = 0xd77e00d0d27d397a; - out1[2] = 0x51325ed5195c7f19; - out1[3] = 0x82b264ff643997bd; - out1[4] = 0x299c63358fccf78e; - out1[5] = 0x34cf724c4c362df1; - out1[6] = 0xc02b1951cc3603f8; - out1[7] = 0x5522624724163b74; + out1[0] = 0xd7559fa9a7c5b70d; + out1[1] = 0xd77e00d0d27d397a; + out1[2] = 0x51325ed5195c7f19; + out1[3] = 0x82b264ff643997bd; + out1[4] = 0x299c63358fccf78e; + out1[5] = 0x34cf724c4c362df1; + out1[6] = 0xc02b1951cc3603f8; + out1[7] = 0x5522624724163b74; } /// The function fiat_bp512_msat returns the saturated representation of the prime modulus. @@ -5261,15 +5389,15 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { - out1[0] = 0x28aa6056583a48f3; - out1[1] = 0x2881ff2f2d82c685; - out1[2] = 0xaecda12ae6a380e6; - out1[3] = 0x7d4d9b009bc66842; - out1[4] = 0xd6639cca70330871; - out1[5] = 0xcb308db3b3c9d20e; - out1[6] = 0x3fd4e6ae33c9fc07; - out1[7] = 0xaadd9db8dbe9c48b; - out1[8] = (0x0 as u64); + out1[0] = 0x28aa6056583a48f3; + out1[1] = 0x2881ff2f2d82c685; + out1[2] = 0xaecda12ae6a380e6; + out1[3] = 0x7d4d9b009bc66842; + out1[4] = 0xd6639cca70330871; + out1[5] = 0xcb308db3b3c9d20e; + out1[6] = 0x3fd4e6ae33c9fc07; + out1[7] = 0xaadd9db8dbe9c48b; + out1[8] = (0x0 as u64); } /// The function fiat_bp512_divstep computes a divstep. @@ -5301,412 +5429,448 @@ pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { /// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] /// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_divstep(out1: &mut u64, out2: &mut [u64; 9], out3: &mut [u64; 9], out4: &mut [u64; 8], out5: &mut [u64; 8], arg1: u64, arg2: &[u64; 9], arg3: &[u64; 9], arg4: &[u64; 8], arg5: &[u64; 8]) { - let mut x1: u64 = 0; - let mut x2: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); - let x3: fiat_bp512_u1 = (((x1 >> 63) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u64)) as fiat_bp512_u1)); - let mut x4: u64 = 0; - let mut x5: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); - let mut x6: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x6, x3, arg1, x4); - let mut x7: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); - let mut x8: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); - let mut x9: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); - let mut x10: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); - let mut x11: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); - let mut x12: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); - let mut x13: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); - let mut x14: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x14, x3, (arg2[7]), (arg3[7])); - let mut x15: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x15, x3, (arg2[8]), (arg3[8])); - let mut x16: u64 = 0; - let mut x17: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x16, &mut x17, 0x0, (0x1 as u64), (!(arg2[0]))); - let mut x18: u64 = 0; - let mut x19: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[1]))); - let mut x20: u64 = 0; - let mut x21: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[2]))); - let mut x22: u64 = 0; - let mut x23: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[3]))); - let mut x24: u64 = 0; - let mut x25: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[4]))); - let mut x26: u64 = 0; - let mut x27: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[5]))); - let mut x28: u64 = 0; - let mut x29: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), (!(arg2[6]))); - let mut x30: u64 = 0; - let mut x31: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), (!(arg2[7]))); - let mut x32: u64 = 0; - let mut x33: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), (!(arg2[8]))); - let mut x34: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x34, x3, (arg3[0]), x16); - let mut x35: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x35, x3, (arg3[1]), x18); - let mut x36: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x36, x3, (arg3[2]), x20); - let mut x37: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x37, x3, (arg3[3]), x22); - let mut x38: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x38, x3, (arg3[4]), x24); - let mut x39: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x39, x3, (arg3[5]), x26); - let mut x40: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x40, x3, (arg3[6]), x28); - let mut x41: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x41, x3, (arg3[7]), x30); - let mut x42: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x42, x3, (arg3[8]), x32); - let mut x43: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x43, x3, (arg4[0]), (arg5[0])); - let mut x44: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x44, x3, (arg4[1]), (arg5[1])); - let mut x45: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x45, x3, (arg4[2]), (arg5[2])); - let mut x46: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x46, x3, (arg4[3]), (arg5[3])); - let mut x47: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x47, x3, (arg4[4]), (arg5[4])); - let mut x48: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x48, x3, (arg4[5]), (arg5[5])); - let mut x49: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x49, x3, (arg4[6]), (arg5[6])); - let mut x50: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x50, x3, (arg4[7]), (arg5[7])); - let mut x51: u64 = 0; - let mut x52: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x51, &mut x52, 0x0, x43, x43); - let mut x53: u64 = 0; - let mut x54: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x53, &mut x54, x52, x44, x44); - let mut x55: u64 = 0; - let mut x56: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x55, &mut x56, x54, x45, x45); - let mut x57: u64 = 0; - let mut x58: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x57, &mut x58, x56, x46, x46); - let mut x59: u64 = 0; - let mut x60: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x47, x47); - let mut x61: u64 = 0; - let mut x62: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x48, x48); - let mut x63: u64 = 0; - let mut x64: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x49, x49); - let mut x65: u64 = 0; - let mut x66: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x50, x50); - let mut x67: u64 = 0; - let mut x68: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x67, &mut x68, 0x0, x51, 0x28aa6056583a48f3); - let mut x69: u64 = 0; - let mut x70: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x69, &mut x70, x68, x53, 0x2881ff2f2d82c685); - let mut x71: u64 = 0; - let mut x72: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x71, &mut x72, x70, x55, 0xaecda12ae6a380e6); - let mut x73: u64 = 0; - let mut x74: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x73, &mut x74, x72, x57, 0x7d4d9b009bc66842); - let mut x75: u64 = 0; - let mut x76: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x75, &mut x76, x74, x59, 0xd6639cca70330871); - let mut x77: u64 = 0; - let mut x78: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x77, &mut x78, x76, x61, 0xcb308db3b3c9d20e); - let mut x79: u64 = 0; - let mut x80: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x79, &mut x80, x78, x63, 0x3fd4e6ae33c9fc07); - let mut x81: u64 = 0; - let mut x82: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x81, &mut x82, x80, x65, 0xaadd9db8dbe9c48b); - let mut x83: u64 = 0; - let mut x84: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x83, &mut x84, x82, (x66 as u64), (0x0 as u64)); - let x85: u64 = (arg4[7]); - let x86: u64 = (arg4[6]); - let x87: u64 = (arg4[5]); - let x88: u64 = (arg4[4]); - let x89: u64 = (arg4[3]); - let x90: u64 = (arg4[2]); - let x91: u64 = (arg4[1]); - let x92: u64 = (arg4[0]); - let mut x93: u64 = 0; - let mut x94: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x93, &mut x94, 0x0, (0x0 as u64), x92); - let mut x95: u64 = 0; - let mut x96: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x95, &mut x96, x94, (0x0 as u64), x91); - let mut x97: u64 = 0; - let mut x98: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x97, &mut x98, x96, (0x0 as u64), x90); - let mut x99: u64 = 0; - let mut x100: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x99, &mut x100, x98, (0x0 as u64), x89); - let mut x101: u64 = 0; - let mut x102: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x101, &mut x102, x100, (0x0 as u64), x88); - let mut x103: u64 = 0; - let mut x104: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x103, &mut x104, x102, (0x0 as u64), x87); - let mut x105: u64 = 0; - let mut x106: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x105, &mut x106, x104, (0x0 as u64), x86); - let mut x107: u64 = 0; - let mut x108: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x107, &mut x108, x106, (0x0 as u64), x85); - let mut x109: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x109, x108, (0x0 as u64), 0xffffffffffffffff); - let mut x110: u64 = 0; - let mut x111: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x110, &mut x111, 0x0, x93, (x109 & 0x28aa6056583a48f3)); - let mut x112: u64 = 0; - let mut x113: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x112, &mut x113, x111, x95, (x109 & 0x2881ff2f2d82c685)); - let mut x114: u64 = 0; - let mut x115: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x97, (x109 & 0xaecda12ae6a380e6)); - let mut x116: u64 = 0; - let mut x117: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x99, (x109 & 0x7d4d9b009bc66842)); - let mut x118: u64 = 0; - let mut x119: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x118, &mut x119, x117, x101, (x109 & 0xd6639cca70330871)); - let mut x120: u64 = 0; - let mut x121: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x120, &mut x121, x119, x103, (x109 & 0xcb308db3b3c9d20e)); - let mut x122: u64 = 0; - let mut x123: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x122, &mut x123, x121, x105, (x109 & 0x3fd4e6ae33c9fc07)); - let mut x124: u64 = 0; - let mut x125: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x124, &mut x125, x123, x107, (x109 & 0xaadd9db8dbe9c48b)); - let mut x126: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x126, x3, (arg5[0]), x110); - let mut x127: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x127, x3, (arg5[1]), x112); - let mut x128: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x128, x3, (arg5[2]), x114); - let mut x129: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x129, x3, (arg5[3]), x116); - let mut x130: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x130, x3, (arg5[4]), x118); - let mut x131: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x131, x3, (arg5[5]), x120); - let mut x132: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x132, x3, (arg5[6]), x122); - let mut x133: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x133, x3, (arg5[7]), x124); - let x134: fiat_bp512_u1 = ((x34 & (0x1 as u64)) as fiat_bp512_u1); - let mut x135: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x135, x134, (0x0 as u64), x7); - let mut x136: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x136, x134, (0x0 as u64), x8); - let mut x137: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x137, x134, (0x0 as u64), x9); - let mut x138: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x138, x134, (0x0 as u64), x10); - let mut x139: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x139, x134, (0x0 as u64), x11); - let mut x140: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x140, x134, (0x0 as u64), x12); - let mut x141: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x141, x134, (0x0 as u64), x13); - let mut x142: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x142, x134, (0x0 as u64), x14); - let mut x143: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x143, x134, (0x0 as u64), x15); - let mut x144: u64 = 0; - let mut x145: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x34, x135); - let mut x146: u64 = 0; - let mut x147: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x35, x136); - let mut x148: u64 = 0; - let mut x149: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x36, x137); - let mut x150: u64 = 0; - let mut x151: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x37, x138); - let mut x152: u64 = 0; - let mut x153: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x38, x139); - let mut x154: u64 = 0; - let mut x155: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x39, x140); - let mut x156: u64 = 0; - let mut x157: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x40, x141); - let mut x158: u64 = 0; - let mut x159: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x158, &mut x159, x157, x41, x142); - let mut x160: u64 = 0; - let mut x161: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x42, x143); - let mut x162: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x162, x134, (0x0 as u64), x43); - let mut x163: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x163, x134, (0x0 as u64), x44); - let mut x164: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x164, x134, (0x0 as u64), x45); - let mut x165: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x165, x134, (0x0 as u64), x46); - let mut x166: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x166, x134, (0x0 as u64), x47); - let mut x167: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x167, x134, (0x0 as u64), x48); - let mut x168: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x168, x134, (0x0 as u64), x49); - let mut x169: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x169, x134, (0x0 as u64), x50); - let mut x170: u64 = 0; - let mut x171: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x170, &mut x171, 0x0, x126, x162); - let mut x172: u64 = 0; - let mut x173: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x172, &mut x173, x171, x127, x163); - let mut x174: u64 = 0; - let mut x175: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x174, &mut x175, x173, x128, x164); - let mut x176: u64 = 0; - let mut x177: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x129, x165); - let mut x178: u64 = 0; - let mut x179: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x130, x166); - let mut x180: u64 = 0; - let mut x181: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x131, x167); - let mut x182: u64 = 0; - let mut x183: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x132, x168); - let mut x184: u64 = 0; - let mut x185: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x133, x169); - let mut x186: u64 = 0; - let mut x187: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x186, &mut x187, 0x0, x170, 0x28aa6056583a48f3); - let mut x188: u64 = 0; - let mut x189: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x188, &mut x189, x187, x172, 0x2881ff2f2d82c685); - let mut x190: u64 = 0; - let mut x191: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x190, &mut x191, x189, x174, 0xaecda12ae6a380e6); - let mut x192: u64 = 0; - let mut x193: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x192, &mut x193, x191, x176, 0x7d4d9b009bc66842); - let mut x194: u64 = 0; - let mut x195: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x194, &mut x195, x193, x178, 0xd6639cca70330871); - let mut x196: u64 = 0; - let mut x197: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x196, &mut x197, x195, x180, 0xcb308db3b3c9d20e); - let mut x198: u64 = 0; - let mut x199: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x198, &mut x199, x197, x182, 0x3fd4e6ae33c9fc07); - let mut x200: u64 = 0; - let mut x201: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x200, &mut x201, x199, x184, 0xaadd9db8dbe9c48b); - let mut x202: u64 = 0; - let mut x203: fiat_bp512_u1 = 0; - fiat_bp512_subborrowx_u64(&mut x202, &mut x203, x201, (x185 as u64), (0x0 as u64)); - let mut x204: u64 = 0; - let mut x205: fiat_bp512_u1 = 0; - fiat_bp512_addcarryx_u64(&mut x204, &mut x205, 0x0, x6, (0x1 as u64)); - let x206: u64 = ((x144 >> 1) | ((x146 << 63) & 0xffffffffffffffff)); - let x207: u64 = ((x146 >> 1) | ((x148 << 63) & 0xffffffffffffffff)); - let x208: u64 = ((x148 >> 1) | ((x150 << 63) & 0xffffffffffffffff)); - let x209: u64 = ((x150 >> 1) | ((x152 << 63) & 0xffffffffffffffff)); - let x210: u64 = ((x152 >> 1) | ((x154 << 63) & 0xffffffffffffffff)); - let x211: u64 = ((x154 >> 1) | ((x156 << 63) & 0xffffffffffffffff)); - let x212: u64 = ((x156 >> 1) | ((x158 << 63) & 0xffffffffffffffff)); - let x213: u64 = ((x158 >> 1) | ((x160 << 63) & 0xffffffffffffffff)); - let x214: u64 = ((x160 & 0x8000000000000000) | (x160 >> 1)); - let mut x215: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x215, x84, x67, x51); - let mut x216: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x216, x84, x69, x53); - let mut x217: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x217, x84, x71, x55); - let mut x218: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x218, x84, x73, x57); - let mut x219: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x219, x84, x75, x59); - let mut x220: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x220, x84, x77, x61); - let mut x221: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x221, x84, x79, x63); - let mut x222: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x222, x84, x81, x65); - let mut x223: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x223, x203, x186, x170); - let mut x224: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x224, x203, x188, x172); - let mut x225: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x225, x203, x190, x174); - let mut x226: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x226, x203, x192, x176); - let mut x227: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x227, x203, x194, x178); - let mut x228: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x228, x203, x196, x180); - let mut x229: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x229, x203, x198, x182); - let mut x230: u64 = 0; - fiat_bp512_cmovznz_u64(&mut x230, x203, x200, x184); - *out1 = x204; - out2[0] = x7; - out2[1] = x8; - out2[2] = x9; - out2[3] = x10; - out2[4] = x11; - out2[5] = x12; - out2[6] = x13; - out2[7] = x14; - out2[8] = x15; - out3[0] = x206; - out3[1] = x207; - out3[2] = x208; - out3[3] = x209; - out3[4] = x210; - out3[5] = x211; - out3[6] = x212; - out3[7] = x213; - out3[8] = x214; - out4[0] = x215; - out4[1] = x216; - out4[2] = x217; - out4[3] = x218; - out4[4] = x219; - out4[5] = x220; - out4[6] = x221; - out4[7] = x222; - out5[0] = x223; - out5[1] = x224; - out5[2] = x225; - out5[3] = x226; - out5[4] = x227; - out5[5] = x228; - out5[6] = x229; - out5[7] = x230; +pub fn fiat_bp512_divstep( + out1: &mut u64, + out2: &mut [u64; 9], + out3: &mut [u64; 9], + out4: &mut [u64; 8], + out5: &mut [u64; 8], + arg1: u64, + arg2: &[u64; 9], + arg3: &[u64; 9], + arg4: &[u64; 8], + arg5: &[u64; 8], +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); + let x3: fiat_bp512_u1 = + (((x1 >> 63) as fiat_bp512_u1) & (((arg3[0]) & (0x1 as u64)) as fiat_bp512_u1)); + let mut x4: u64 = 0; + let mut x5: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); + let mut x6: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x6, x3, arg1, x4); + let mut x7: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u64 = 0; + let mut x17: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x16, &mut x17, 0x0, (0x1 as u64), (!(arg2[0]))); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[1]))); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[2]))); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[3]))); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[4]))); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[5]))); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), (!(arg2[6]))); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), (!(arg2[7]))); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), (!(arg2[8]))); + let mut x34: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x34, x3, (arg3[0]), x16); + let mut x35: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x35, x3, (arg3[1]), x18); + let mut x36: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x36, x3, (arg3[2]), x20); + let mut x37: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x37, x3, (arg3[3]), x22); + let mut x38: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x38, x3, (arg3[4]), x24); + let mut x39: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x39, x3, (arg3[5]), x26); + let mut x40: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x40, x3, (arg3[6]), x28); + let mut x41: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x41, x3, (arg3[7]), x30); + let mut x42: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x42, x3, (arg3[8]), x32); + let mut x43: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x43, x3, (arg4[0]), (arg5[0])); + let mut x44: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x44, x3, (arg4[1]), (arg5[1])); + let mut x45: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x45, x3, (arg4[2]), (arg5[2])); + let mut x46: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x46, x3, (arg4[3]), (arg5[3])); + let mut x47: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x47, x3, (arg4[4]), (arg5[4])); + let mut x48: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x48, x3, (arg4[5]), (arg5[5])); + let mut x49: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x49, x3, (arg4[6]), (arg5[6])); + let mut x50: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x50, x3, (arg4[7]), (arg5[7])); + let mut x51: u64 = 0; + let mut x52: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x51, &mut x52, 0x0, x43, x43); + let mut x53: u64 = 0; + let mut x54: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x53, &mut x54, x52, x44, x44); + let mut x55: u64 = 0; + let mut x56: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x55, &mut x56, x54, x45, x45); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x57, &mut x58, x56, x46, x46); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x59, &mut x60, x58, x47, x47); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x61, &mut x62, x60, x48, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x63, &mut x64, x62, x49, x49); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x65, &mut x66, x64, x50, x50); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x67, &mut x68, 0x0, x51, 0x28aa6056583a48f3); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x69, &mut x70, x68, x53, 0x2881ff2f2d82c685); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x71, &mut x72, x70, x55, 0xaecda12ae6a380e6); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x73, &mut x74, x72, x57, 0x7d4d9b009bc66842); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x75, &mut x76, x74, x59, 0xd6639cca70330871); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x77, &mut x78, x76, x61, 0xcb308db3b3c9d20e); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x79, &mut x80, x78, x63, 0x3fd4e6ae33c9fc07); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x81, &mut x82, x80, x65, 0xaadd9db8dbe9c48b); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x83, &mut x84, x82, (x66 as u64), (0x0 as u64)); + let x85: u64 = (arg4[7]); + let x86: u64 = (arg4[6]); + let x87: u64 = (arg4[5]); + let x88: u64 = (arg4[4]); + let x89: u64 = (arg4[3]); + let x90: u64 = (arg4[2]); + let x91: u64 = (arg4[1]); + let x92: u64 = (arg4[0]); + let mut x93: u64 = 0; + let mut x94: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x93, &mut x94, 0x0, (0x0 as u64), x92); + let mut x95: u64 = 0; + let mut x96: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x95, &mut x96, x94, (0x0 as u64), x91); + let mut x97: u64 = 0; + let mut x98: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x97, &mut x98, x96, (0x0 as u64), x90); + let mut x99: u64 = 0; + let mut x100: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x99, &mut x100, x98, (0x0 as u64), x89); + let mut x101: u64 = 0; + let mut x102: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x101, &mut x102, x100, (0x0 as u64), x88); + let mut x103: u64 = 0; + let mut x104: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x103, &mut x104, x102, (0x0 as u64), x87); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x105, &mut x106, x104, (0x0 as u64), x86); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x107, &mut x108, x106, (0x0 as u64), x85); + let mut x109: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x109, x108, (0x0 as u64), 0xffffffffffffffff); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x110, &mut x111, 0x0, x93, (x109 & 0x28aa6056583a48f3)); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x112, &mut x113, x111, x95, (x109 & 0x2881ff2f2d82c685)); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x114, &mut x115, x113, x97, (x109 & 0xaecda12ae6a380e6)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x116, &mut x117, x115, x99, (x109 & 0x7d4d9b009bc66842)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x118, + &mut x119, + x117, + x101, + (x109 & 0xd6639cca70330871), + ); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x120, + &mut x121, + x119, + x103, + (x109 & 0xcb308db3b3c9d20e), + ); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x122, + &mut x123, + x121, + x105, + (x109 & 0x3fd4e6ae33c9fc07), + ); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64( + &mut x124, + &mut x125, + x123, + x107, + (x109 & 0xaadd9db8dbe9c48b), + ); + let mut x126: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x126, x3, (arg5[0]), x110); + let mut x127: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x127, x3, (arg5[1]), x112); + let mut x128: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x128, x3, (arg5[2]), x114); + let mut x129: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x129, x3, (arg5[3]), x116); + let mut x130: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x130, x3, (arg5[4]), x118); + let mut x131: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x131, x3, (arg5[5]), x120); + let mut x132: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x132, x3, (arg5[6]), x122); + let mut x133: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x133, x3, (arg5[7]), x124); + let x134: fiat_bp512_u1 = ((x34 & (0x1 as u64)) as fiat_bp512_u1); + let mut x135: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x135, x134, (0x0 as u64), x7); + let mut x136: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x136, x134, (0x0 as u64), x8); + let mut x137: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x137, x134, (0x0 as u64), x9); + let mut x138: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x138, x134, (0x0 as u64), x10); + let mut x139: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x139, x134, (0x0 as u64), x11); + let mut x140: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x140, x134, (0x0 as u64), x12); + let mut x141: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x141, x134, (0x0 as u64), x13); + let mut x142: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x142, x134, (0x0 as u64), x14); + let mut x143: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x143, x134, (0x0 as u64), x15); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x144, &mut x145, 0x0, x34, x135); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x146, &mut x147, x145, x35, x136); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x148, &mut x149, x147, x36, x137); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x150, &mut x151, x149, x37, x138); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x152, &mut x153, x151, x38, x139); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x154, &mut x155, x153, x39, x140); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x156, &mut x157, x155, x40, x141); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x158, &mut x159, x157, x41, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x160, &mut x161, x159, x42, x143); + let mut x162: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x162, x134, (0x0 as u64), x43); + let mut x163: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x163, x134, (0x0 as u64), x44); + let mut x164: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x164, x134, (0x0 as u64), x45); + let mut x165: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x165, x134, (0x0 as u64), x46); + let mut x166: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x166, x134, (0x0 as u64), x47); + let mut x167: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x167, x134, (0x0 as u64), x48); + let mut x168: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x168, x134, (0x0 as u64), x49); + let mut x169: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x169, x134, (0x0 as u64), x50); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x170, &mut x171, 0x0, x126, x162); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x172, &mut x173, x171, x127, x163); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x174, &mut x175, x173, x128, x164); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x176, &mut x177, x175, x129, x165); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x178, &mut x179, x177, x130, x166); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x180, &mut x181, x179, x131, x167); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x182, &mut x183, x181, x132, x168); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x184, &mut x185, x183, x133, x169); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x186, &mut x187, 0x0, x170, 0x28aa6056583a48f3); + let mut x188: u64 = 0; + let mut x189: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x188, &mut x189, x187, x172, 0x2881ff2f2d82c685); + let mut x190: u64 = 0; + let mut x191: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x190, &mut x191, x189, x174, 0xaecda12ae6a380e6); + let mut x192: u64 = 0; + let mut x193: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x192, &mut x193, x191, x176, 0x7d4d9b009bc66842); + let mut x194: u64 = 0; + let mut x195: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x194, &mut x195, x193, x178, 0xd6639cca70330871); + let mut x196: u64 = 0; + let mut x197: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x196, &mut x197, x195, x180, 0xcb308db3b3c9d20e); + let mut x198: u64 = 0; + let mut x199: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x198, &mut x199, x197, x182, 0x3fd4e6ae33c9fc07); + let mut x200: u64 = 0; + let mut x201: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x200, &mut x201, x199, x184, 0xaadd9db8dbe9c48b); + let mut x202: u64 = 0; + let mut x203: fiat_bp512_u1 = 0; + fiat_bp512_subborrowx_u64(&mut x202, &mut x203, x201, (x185 as u64), (0x0 as u64)); + let mut x204: u64 = 0; + let mut x205: fiat_bp512_u1 = 0; + fiat_bp512_addcarryx_u64(&mut x204, &mut x205, 0x0, x6, (0x1 as u64)); + let x206: u64 = ((x144 >> 1) | ((x146 << 63) & 0xffffffffffffffff)); + let x207: u64 = ((x146 >> 1) | ((x148 << 63) & 0xffffffffffffffff)); + let x208: u64 = ((x148 >> 1) | ((x150 << 63) & 0xffffffffffffffff)); + let x209: u64 = ((x150 >> 1) | ((x152 << 63) & 0xffffffffffffffff)); + let x210: u64 = ((x152 >> 1) | ((x154 << 63) & 0xffffffffffffffff)); + let x211: u64 = ((x154 >> 1) | ((x156 << 63) & 0xffffffffffffffff)); + let x212: u64 = ((x156 >> 1) | ((x158 << 63) & 0xffffffffffffffff)); + let x213: u64 = ((x158 >> 1) | ((x160 << 63) & 0xffffffffffffffff)); + let x214: u64 = ((x160 & 0x8000000000000000) | (x160 >> 1)); + let mut x215: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x215, x84, x67, x51); + let mut x216: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x216, x84, x69, x53); + let mut x217: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x217, x84, x71, x55); + let mut x218: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x218, x84, x73, x57); + let mut x219: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x219, x84, x75, x59); + let mut x220: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x220, x84, x77, x61); + let mut x221: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x221, x84, x79, x63); + let mut x222: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x222, x84, x81, x65); + let mut x223: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x223, x203, x186, x170); + let mut x224: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x224, x203, x188, x172); + let mut x225: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x225, x203, x190, x174); + let mut x226: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x226, x203, x192, x176); + let mut x227: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x227, x203, x194, x178); + let mut x228: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x228, x203, x196, x180); + let mut x229: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x229, x203, x198, x182); + let mut x230: u64 = 0; + fiat_bp512_cmovznz_u64(&mut x230, x203, x200, x184); + *out1 = x204; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out3[0] = x206; + out3[1] = x207; + out3[2] = x208; + out3[3] = x209; + out3[4] = x210; + out3[5] = x211; + out3[6] = x212; + out3[7] = x213; + out3[8] = x214; + out4[0] = x215; + out4[1] = x216; + out4[2] = x217; + out4[3] = x218; + out4[4] = x219; + out4[5] = x220; + out4[6] = x221; + out4[7] = x222; + out5[0] = x223; + out5[1] = x224; + out5[2] = x225; + out5[3] = x226; + out5[4] = x227; + out5[5] = x228; + out5[6] = x229; + out5[7] = x230; } /// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). @@ -5719,12 +5883,12 @@ pub fn fiat_bp512_divstep(out1: &mut u64, out2: &mut [u64; 9], out3: &mut [u64; /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] pub fn fiat_bp512_divstep_precomp(out1: &mut [u64; 8]) { - out1[0] = 0x6bba0f9e8878ef1d; - out1[1] = 0xdaeb7446fe513a69; - out1[2] = 0x425e2db1a502204b; - out1[3] = 0x6c6090efde354e9d; - out1[4] = 0x80ba3167b5431792; - out1[5] = 0x2f0dc07635149425; - out1[6] = 0xc024c549f34d8fd; - out1[7] = 0x2d82c4ad19ba97f7; + out1[0] = 0x6bba0f9e8878ef1d; + out1[1] = 0xdaeb7446fe513a69; + out1[2] = 0x425e2db1a502204b; + out1[3] = 0x6c6090efde354e9d; + out1[4] = 0x80ba3167b5431792; + out1[5] = 0x2f0dc07635149425; + out1[6] = 0xc024c549f34d8fd; + out1[7] = 0x2d82c4ad19ba97f7; } diff --git a/bp512/src/arithmetic/scalar.rs b/bp512/src/arithmetic/scalar.rs index 2a94ae33d..f9ba4422f 100644 --- a/bp512/src/arithmetic/scalar.rs +++ b/bp512/src/arithmetic/scalar.rs @@ -10,8 +10,8 @@ //! Apache License (Version 2.0), and the BSD 1-Clause License; //! users may pick which license to apply. -#[cfg_attr(target_pointer_width = "32", path = "scalar/bp384_scalar_32.rs")] -#[cfg_attr(target_pointer_width = "64", path = "scalar/bp384_scalar_64.rs")] +#[cfg_attr(target_pointer_width = "32", path = "scalar/bp512_scalar_32.rs")] +#[cfg_attr(target_pointer_width = "64", path = "scalar/bp512_scalar_64.rs")] mod scalar_impl; use self::scalar_impl::*; @@ -45,19 +45,19 @@ primefield::fiat_field_arithmetic!( Scalar, FieldBytes, U512, - fiat_bp384_scalar_non_montgomery_domain_field_element, - fiat_bp384_scalar_montgomery_domain_field_element, - fiat_bp384_scalar_from_montgomery, - fiat_bp384_scalar_to_montgomery, - fiat_bp384_scalar_add, - fiat_bp384_scalar_sub, - fiat_bp384_scalar_mul, - fiat_bp384_scalar_opp, - fiat_bp384_scalar_square, - fiat_bp384_scalar_divstep_precomp, - fiat_bp384_scalar_divstep, - fiat_bp384_scalar_msat, - fiat_bp384_scalar_selectznz + fiat_bp512_scalar_non_montgomery_domain_field_element, + fiat_bp512_scalar_montgomery_domain_field_element, + fiat_bp512_scalar_from_montgomery, + fiat_bp512_scalar_to_montgomery, + fiat_bp512_scalar_add, + fiat_bp512_scalar_sub, + fiat_bp512_scalar_mul, + fiat_bp512_scalar_opp, + fiat_bp512_scalar_square, + fiat_bp512_scalar_divstep_precomp, + fiat_bp512_scalar_divstep, + fiat_bp512_scalar_msat, + fiat_bp512_scalar_selectznz ); impl Scalar { diff --git a/bp512/src/arithmetic/scalar/bp512_scalar_32.rs b/bp512/src/arithmetic/scalar/bp512_scalar_32.rs new file mode 100644 index 000000000..b4be391bd --- /dev/null +++ b/bp512/src/arithmetic/scalar/bp512_scalar_32.rs @@ -0,0 +1,19470 @@ +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512_scalar 32 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp512_scalar +//! machine_wordsize = 32 (from "32") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 (from "0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) in +//! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 + +#![allow(unused_parens)] +#![allow(non_camel_case_types)] + +/** fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_scalar_u1 = u8; +/** fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_scalar_i1 = i8; +/** fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_scalar_u2 = u8; +/** fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_scalar_i2 = i8; + +/** The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_scalar_montgomery_domain_field_element(pub [u32; 16]); + +impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_scalar_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/** The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_scalar_non_montgomery_domain_field_element(pub [u32; 16]); + +impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_element { + type Output = u32; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/// The function fiat_bp512_scalar_addcarryx_u32 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^32 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_scalar_addcarryx_u32( + out1: &mut u32, + out2: &mut fiat_bp512_scalar_u1, + arg1: fiat_bp512_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: u64 = (((arg1 as u64) + (arg2 as u64)) + (arg3 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: fiat_bp512_scalar_u1 = ((x1 >> 32) as fiat_bp512_scalar_u1); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_scalar_subborrowx_u32 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^32 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_scalar_subborrowx_u32( + out1: &mut u32, + out2: &mut fiat_bp512_scalar_u1, + arg1: fiat_bp512_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: i64 = (((arg2 as i64) - (arg1 as i64)) - (arg3 as i64)); + let x2: fiat_bp512_scalar_i1 = ((x1 >> 32) as fiat_bp512_scalar_i1); + let x3: u32 = ((x1 & (0xffffffff as i64)) as u32); + *out1 = x3; + *out2 = + (((0x0 as fiat_bp512_scalar_i2) - (x2 as fiat_bp512_scalar_i2)) as fiat_bp512_scalar_u1); +} + +/// The function fiat_bp512_scalar_mulx_u32 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^32 +/// out2 = ⌊arg1 * arg2 / 2^32⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_scalar_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { + let x1: u64 = ((arg1 as u64) * (arg2 as u64)); + let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); + let x3: u32 = ((x1 >> 32) as u32); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_scalar_cmovznz_u32 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffff] +/// arg3: [0x0 ~> 0xffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_scalar_cmovznz_u32( + out1: &mut u32, + arg1: fiat_bp512_scalar_u1, + arg2: u32, + arg3: u32, +) { + let x1: fiat_bp512_scalar_u1 = (!(!arg1)); + let x2: u32 = ((((((0x0 as fiat_bp512_scalar_i2) - (x1 as fiat_bp512_scalar_i2)) + as fiat_bp512_scalar_i1) as i64) + & (0xffffffff as i64)) as u32); + let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} + +/// The function fiat_bp512_scalar_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_mul( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x17, &mut x18, x16, (arg2[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x19, &mut x20, x16, (arg2[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x21, &mut x22, x16, (arg2[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x23, &mut x24, x16, (arg2[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x25, &mut x26, x16, (arg2[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x27, &mut x28, x16, (arg2[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x29, &mut x30, x16, (arg2[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x31, &mut x32, x16, (arg2[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x33, &mut x34, x16, (arg2[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x35, &mut x36, x16, (arg2[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x37, &mut x38, x16, (arg2[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x39, &mut x40, x16, (arg2[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x41, &mut x42, x16, (arg2[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x43, &mut x44, x16, (arg2[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x45, &mut x46, x16, (arg2[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x47, &mut x48, x16, (arg2[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x80, &mut x81, x47, 0xf1b7027); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x96, &mut x97, x80, 0x70330870); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x98, &mut x99, x80, 0x553e5c41); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x100, &mut x101, x80, 0x4ca92619); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x102, &mut x103, x80, 0x41866119); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x104, &mut x105, x80, 0x7fac1047); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x106, &mut x107, x80, 0x1db1d381); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x108, &mut x109, x80, 0x85ddadd); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x110, &mut x111, x80, 0xb5879682); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x112, &mut x113, x80, 0x9ca90069); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x179, &mut x180, x1, (arg2[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x181, &mut x182, x1, (arg2[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x183, &mut x184, x1, (arg2[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x185, &mut x186, x1, (arg2[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x187, &mut x188, x1, (arg2[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x189, &mut x190, x1, (arg2[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x191, &mut x192, x1, (arg2[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x193, &mut x194, x1, (arg2[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x195, &mut x196, x1, (arg2[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x197, &mut x198, x1, (arg2[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x199, &mut x200, x1, (arg2[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x201, &mut x202, x1, (arg2[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x203, &mut x204, x1, (arg2[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x205, &mut x206, x1, (arg2[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x207, &mut x208, x1, (arg2[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x209, &mut x210, x1, (arg2[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x276, &mut x277, x242, 0xf1b7027); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x292, &mut x293, x276, 0x70330870); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x294, &mut x295, x276, 0x553e5c41); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x296, &mut x297, x276, 0x4ca92619); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x298, &mut x299, x276, 0x41866119); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x300, &mut x301, x276, 0x7fac1047); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x302, &mut x303, x276, 0x1db1d381); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x304, &mut x305, x276, 0x85ddadd); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x306, &mut x307, x276, 0xb5879682); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x308, &mut x309, x276, 0x9ca90069); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x376, &mut x377, x2, (arg2[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x378, &mut x379, x2, (arg2[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x380, &mut x381, x2, (arg2[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x382, &mut x383, x2, (arg2[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x384, &mut x385, x2, (arg2[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x386, &mut x387, x2, (arg2[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x388, &mut x389, x2, (arg2[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x390, &mut x391, x2, (arg2[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x392, &mut x393, x2, (arg2[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x394, &mut x395, x2, (arg2[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x396, &mut x397, x2, (arg2[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x398, &mut x399, x2, (arg2[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x400, &mut x401, x2, (arg2[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x402, &mut x403, x2, (arg2[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x404, &mut x405, x2, (arg2[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x406, &mut x407, x2, (arg2[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x473, &mut x474, x439, 0xf1b7027); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x489, &mut x490, x473, 0x70330870); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x491, &mut x492, x473, 0x553e5c41); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x493, &mut x494, x473, 0x4ca92619); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x495, &mut x496, x473, 0x41866119); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x497, &mut x498, x473, 0x7fac1047); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x499, &mut x500, x473, 0x1db1d381); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x501, &mut x502, x473, 0x85ddadd); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x503, &mut x504, x473, 0xb5879682); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x505, &mut x506, x473, 0x9ca90069); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x573, &mut x574, x3, (arg2[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x575, &mut x576, x3, (arg2[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x577, &mut x578, x3, (arg2[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x579, &mut x580, x3, (arg2[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x581, &mut x582, x3, (arg2[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x583, &mut x584, x3, (arg2[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x585, &mut x586, x3, (arg2[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x587, &mut x588, x3, (arg2[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x589, &mut x590, x3, (arg2[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x591, &mut x592, x3, (arg2[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x593, &mut x594, x3, (arg2[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x595, &mut x596, x3, (arg2[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x597, &mut x598, x3, (arg2[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x599, &mut x600, x3, (arg2[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x601, &mut x602, x3, (arg2[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x603, &mut x604, x3, (arg2[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x670, &mut x671, x636, 0xf1b7027); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x686, &mut x687, x670, 0x70330870); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x688, &mut x689, x670, 0x553e5c41); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x690, &mut x691, x670, 0x4ca92619); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x692, &mut x693, x670, 0x41866119); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x694, &mut x695, x670, 0x7fac1047); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x696, &mut x697, x670, 0x1db1d381); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x698, &mut x699, x670, 0x85ddadd); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x700, &mut x701, x670, 0xb5879682); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x702, &mut x703, x670, 0x9ca90069); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x770, &mut x771, x4, (arg2[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x772, &mut x773, x4, (arg2[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x774, &mut x775, x4, (arg2[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x776, &mut x777, x4, (arg2[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x778, &mut x779, x4, (arg2[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x780, &mut x781, x4, (arg2[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x782, &mut x783, x4, (arg2[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x784, &mut x785, x4, (arg2[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x786, &mut x787, x4, (arg2[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x788, &mut x789, x4, (arg2[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x790, &mut x791, x4, (arg2[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x792, &mut x793, x4, (arg2[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x794, &mut x795, x4, (arg2[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x796, &mut x797, x4, (arg2[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x798, &mut x799, x4, (arg2[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x800, &mut x801, x4, (arg2[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x867, &mut x868, x833, 0xf1b7027); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x883, &mut x884, x867, 0x70330870); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x885, &mut x886, x867, 0x553e5c41); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x887, &mut x888, x867, 0x4ca92619); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x889, &mut x890, x867, 0x41866119); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x891, &mut x892, x867, 0x7fac1047); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x893, &mut x894, x867, 0x1db1d381); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x895, &mut x896, x867, 0x85ddadd); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x897, &mut x898, x867, 0xb5879682); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x899, &mut x900, x867, 0x9ca90069); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x967, &mut x968, x5, (arg2[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x969, &mut x970, x5, (arg2[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x971, &mut x972, x5, (arg2[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x973, &mut x974, x5, (arg2[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x975, &mut x976, x5, (arg2[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x977, &mut x978, x5, (arg2[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x979, &mut x980, x5, (arg2[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x981, &mut x982, x5, (arg2[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x983, &mut x984, x5, (arg2[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x985, &mut x986, x5, (arg2[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x987, &mut x988, x5, (arg2[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x989, &mut x990, x5, (arg2[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x991, &mut x992, x5, (arg2[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x993, &mut x994, x5, (arg2[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x995, &mut x996, x5, (arg2[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x997, &mut x998, x5, (arg2[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1064, &mut x1065, x1030, 0xf1b7027); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330870); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1082, &mut x1083, x1064, 0x553e5c41); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1084, &mut x1085, x1064, 0x4ca92619); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1086, &mut x1087, x1064, 0x41866119); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1088, &mut x1089, x1064, 0x7fac1047); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1090, &mut x1091, x1064, 0x1db1d381); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1092, &mut x1093, x1064, 0x85ddadd); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1094, &mut x1095, x1064, 0xb5879682); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1096, &mut x1097, x1064, 0x9ca90069); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1164, &mut x1165, x6, (arg2[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1166, &mut x1167, x6, (arg2[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1168, &mut x1169, x6, (arg2[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1170, &mut x1171, x6, (arg2[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1172, &mut x1173, x6, (arg2[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1174, &mut x1175, x6, (arg2[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1176, &mut x1177, x6, (arg2[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1178, &mut x1179, x6, (arg2[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1180, &mut x1181, x6, (arg2[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1182, &mut x1183, x6, (arg2[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1184, &mut x1185, x6, (arg2[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1186, &mut x1187, x6, (arg2[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1188, &mut x1189, x6, (arg2[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1190, &mut x1191, x6, (arg2[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1192, &mut x1193, x6, (arg2[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1194, &mut x1195, x6, (arg2[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1261, &mut x1262, x1227, 0xf1b7027); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330870); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1279, &mut x1280, x1261, 0x553e5c41); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1281, &mut x1282, x1261, 0x4ca92619); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1283, &mut x1284, x1261, 0x41866119); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1285, &mut x1286, x1261, 0x7fac1047); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1287, &mut x1288, x1261, 0x1db1d381); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1289, &mut x1290, x1261, 0x85ddadd); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1291, &mut x1292, x1261, 0xb5879682); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1293, &mut x1294, x1261, 0x9ca90069); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1361, &mut x1362, x7, (arg2[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1363, &mut x1364, x7, (arg2[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1365, &mut x1366, x7, (arg2[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1367, &mut x1368, x7, (arg2[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1369, &mut x1370, x7, (arg2[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1371, &mut x1372, x7, (arg2[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1373, &mut x1374, x7, (arg2[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1375, &mut x1376, x7, (arg2[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1377, &mut x1378, x7, (arg2[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1379, &mut x1380, x7, (arg2[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1381, &mut x1382, x7, (arg2[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1383, &mut x1384, x7, (arg2[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1385, &mut x1386, x7, (arg2[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1387, &mut x1388, x7, (arg2[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1389, &mut x1390, x7, (arg2[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1391, &mut x1392, x7, (arg2[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1458, &mut x1459, x1424, 0xf1b7027); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330870); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1476, &mut x1477, x1458, 0x553e5c41); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1478, &mut x1479, x1458, 0x4ca92619); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1480, &mut x1481, x1458, 0x41866119); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1482, &mut x1483, x1458, 0x7fac1047); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1484, &mut x1485, x1458, 0x1db1d381); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1486, &mut x1487, x1458, 0x85ddadd); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1488, &mut x1489, x1458, 0xb5879682); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1490, &mut x1491, x1458, 0x9ca90069); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1558, &mut x1559, x8, (arg2[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1560, &mut x1561, x8, (arg2[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1562, &mut x1563, x8, (arg2[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1564, &mut x1565, x8, (arg2[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1566, &mut x1567, x8, (arg2[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1568, &mut x1569, x8, (arg2[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1570, &mut x1571, x8, (arg2[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1572, &mut x1573, x8, (arg2[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1574, &mut x1575, x8, (arg2[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1576, &mut x1577, x8, (arg2[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1578, &mut x1579, x8, (arg2[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1580, &mut x1581, x8, (arg2[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1582, &mut x1583, x8, (arg2[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1584, &mut x1585, x8, (arg2[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1586, &mut x1587, x8, (arg2[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1588, &mut x1589, x8, (arg2[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1655, &mut x1656, x1621, 0xf1b7027); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330870); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1673, &mut x1674, x1655, 0x553e5c41); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1675, &mut x1676, x1655, 0x4ca92619); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1677, &mut x1678, x1655, 0x41866119); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1679, &mut x1680, x1655, 0x7fac1047); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1681, &mut x1682, x1655, 0x1db1d381); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1683, &mut x1684, x1655, 0x85ddadd); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1685, &mut x1686, x1655, 0xb5879682); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1687, &mut x1688, x1655, 0x9ca90069); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1755, &mut x1756, x9, (arg2[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1757, &mut x1758, x9, (arg2[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1759, &mut x1760, x9, (arg2[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1761, &mut x1762, x9, (arg2[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1763, &mut x1764, x9, (arg2[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1765, &mut x1766, x9, (arg2[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1767, &mut x1768, x9, (arg2[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1769, &mut x1770, x9, (arg2[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1771, &mut x1772, x9, (arg2[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1773, &mut x1774, x9, (arg2[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1775, &mut x1776, x9, (arg2[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1777, &mut x1778, x9, (arg2[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1779, &mut x1780, x9, (arg2[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1781, &mut x1782, x9, (arg2[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1783, &mut x1784, x9, (arg2[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1785, &mut x1786, x9, (arg2[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1852, &mut x1853, x1818, 0xf1b7027); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330870); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1870, &mut x1871, x1852, 0x553e5c41); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1872, &mut x1873, x1852, 0x4ca92619); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1874, &mut x1875, x1852, 0x41866119); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1876, &mut x1877, x1852, 0x7fac1047); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1878, &mut x1879, x1852, 0x1db1d381); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1880, &mut x1881, x1852, 0x85ddadd); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1882, &mut x1883, x1852, 0xb5879682); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1884, &mut x1885, x1852, 0x9ca90069); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1952, &mut x1953, x10, (arg2[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1954, &mut x1955, x10, (arg2[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1956, &mut x1957, x10, (arg2[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1958, &mut x1959, x10, (arg2[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1960, &mut x1961, x10, (arg2[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1962, &mut x1963, x10, (arg2[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1964, &mut x1965, x10, (arg2[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1966, &mut x1967, x10, (arg2[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1968, &mut x1969, x10, (arg2[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1970, &mut x1971, x10, (arg2[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1972, &mut x1973, x10, (arg2[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1974, &mut x1975, x10, (arg2[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1976, &mut x1977, x10, (arg2[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1978, &mut x1979, x10, (arg2[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1980, &mut x1981, x10, (arg2[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1982, &mut x1983, x10, (arg2[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2049, &mut x2050, x2015, 0xf1b7027); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330870); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2067, &mut x2068, x2049, 0x553e5c41); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2069, &mut x2070, x2049, 0x4ca92619); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2071, &mut x2072, x2049, 0x41866119); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2073, &mut x2074, x2049, 0x7fac1047); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2075, &mut x2076, x2049, 0x1db1d381); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2077, &mut x2078, x2049, 0x85ddadd); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2079, &mut x2080, x2049, 0xb5879682); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2081, &mut x2082, x2049, 0x9ca90069); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2149, &mut x2150, x11, (arg2[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2151, &mut x2152, x11, (arg2[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2153, &mut x2154, x11, (arg2[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2155, &mut x2156, x11, (arg2[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2157, &mut x2158, x11, (arg2[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2159, &mut x2160, x11, (arg2[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2161, &mut x2162, x11, (arg2[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2163, &mut x2164, x11, (arg2[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2165, &mut x2166, x11, (arg2[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2167, &mut x2168, x11, (arg2[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2169, &mut x2170, x11, (arg2[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2171, &mut x2172, x11, (arg2[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2173, &mut x2174, x11, (arg2[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2175, &mut x2176, x11, (arg2[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2177, &mut x2178, x11, (arg2[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2179, &mut x2180, x11, (arg2[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2246, &mut x2247, x2212, 0xf1b7027); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330870); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2264, &mut x2265, x2246, 0x553e5c41); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2266, &mut x2267, x2246, 0x4ca92619); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2268, &mut x2269, x2246, 0x41866119); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2270, &mut x2271, x2246, 0x7fac1047); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2272, &mut x2273, x2246, 0x1db1d381); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2274, &mut x2275, x2246, 0x85ddadd); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2276, &mut x2277, x2246, 0xb5879682); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2278, &mut x2279, x2246, 0x9ca90069); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2346, &mut x2347, x12, (arg2[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2348, &mut x2349, x12, (arg2[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2350, &mut x2351, x12, (arg2[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2352, &mut x2353, x12, (arg2[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2354, &mut x2355, x12, (arg2[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2356, &mut x2357, x12, (arg2[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2358, &mut x2359, x12, (arg2[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2360, &mut x2361, x12, (arg2[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2362, &mut x2363, x12, (arg2[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2364, &mut x2365, x12, (arg2[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2366, &mut x2367, x12, (arg2[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2368, &mut x2369, x12, (arg2[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2370, &mut x2371, x12, (arg2[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2372, &mut x2373, x12, (arg2[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2374, &mut x2375, x12, (arg2[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2376, &mut x2377, x12, (arg2[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2443, &mut x2444, x2409, 0xf1b7027); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330870); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2461, &mut x2462, x2443, 0x553e5c41); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2463, &mut x2464, x2443, 0x4ca92619); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2465, &mut x2466, x2443, 0x41866119); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2467, &mut x2468, x2443, 0x7fac1047); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2469, &mut x2470, x2443, 0x1db1d381); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2471, &mut x2472, x2443, 0x85ddadd); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2473, &mut x2474, x2443, 0xb5879682); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2475, &mut x2476, x2443, 0x9ca90069); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2543, &mut x2544, x13, (arg2[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2545, &mut x2546, x13, (arg2[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2547, &mut x2548, x13, (arg2[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2549, &mut x2550, x13, (arg2[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2551, &mut x2552, x13, (arg2[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2553, &mut x2554, x13, (arg2[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2555, &mut x2556, x13, (arg2[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2557, &mut x2558, x13, (arg2[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2559, &mut x2560, x13, (arg2[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2561, &mut x2562, x13, (arg2[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2563, &mut x2564, x13, (arg2[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2565, &mut x2566, x13, (arg2[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2567, &mut x2568, x13, (arg2[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2569, &mut x2570, x13, (arg2[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2571, &mut x2572, x13, (arg2[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2573, &mut x2574, x13, (arg2[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2640, &mut x2641, x2606, 0xf1b7027); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330870); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2658, &mut x2659, x2640, 0x553e5c41); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2660, &mut x2661, x2640, 0x4ca92619); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2662, &mut x2663, x2640, 0x41866119); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2664, &mut x2665, x2640, 0x7fac1047); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2666, &mut x2667, x2640, 0x1db1d381); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2668, &mut x2669, x2640, 0x85ddadd); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2670, &mut x2671, x2640, 0xb5879682); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2672, &mut x2673, x2640, 0x9ca90069); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2740, &mut x2741, x14, (arg2[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2742, &mut x2743, x14, (arg2[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2744, &mut x2745, x14, (arg2[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2746, &mut x2747, x14, (arg2[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2748, &mut x2749, x14, (arg2[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2750, &mut x2751, x14, (arg2[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2752, &mut x2753, x14, (arg2[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2754, &mut x2755, x14, (arg2[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2756, &mut x2757, x14, (arg2[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2758, &mut x2759, x14, (arg2[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2760, &mut x2761, x14, (arg2[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2762, &mut x2763, x14, (arg2[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2764, &mut x2765, x14, (arg2[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2766, &mut x2767, x14, (arg2[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2768, &mut x2769, x14, (arg2[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2770, &mut x2771, x14, (arg2[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2837, &mut x2838, x2803, 0xf1b7027); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330870); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2855, &mut x2856, x2837, 0x553e5c41); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2857, &mut x2858, x2837, 0x4ca92619); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2859, &mut x2860, x2837, 0x41866119); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2861, &mut x2862, x2837, 0x7fac1047); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2863, &mut x2864, x2837, 0x1db1d381); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2865, &mut x2866, x2837, 0x85ddadd); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2867, &mut x2868, x2837, 0xb5879682); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2869, &mut x2870, x2837, 0x9ca90069); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2937, &mut x2938, x15, (arg2[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2939, &mut x2940, x15, (arg2[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2941, &mut x2942, x15, (arg2[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2943, &mut x2944, x15, (arg2[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2945, &mut x2946, x15, (arg2[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2947, &mut x2948, x15, (arg2[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2949, &mut x2950, x15, (arg2[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2951, &mut x2952, x15, (arg2[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2953, &mut x2954, x15, (arg2[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2955, &mut x2956, x15, (arg2[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2957, &mut x2958, x15, (arg2[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2959, &mut x2960, x15, (arg2[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2961, &mut x2962, x15, (arg2[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2963, &mut x2964, x15, (arg2[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2965, &mut x2966, x15, (arg2[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2967, &mut x2968, x15, (arg2[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3034, &mut x3035, x3000, 0xf1b7027); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330870); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3052, &mut x3053, x3034, 0x553e5c41); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3054, &mut x3055, x3034, 0x4ca92619); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3056, &mut x3057, x3034, 0x41866119); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3058, &mut x3059, x3034, 0x7fac1047); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3060, &mut x3061, x3034, 0x1db1d381); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3062, &mut x3063, x3034, 0x85ddadd); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3064, &mut x3065, x3034, 0xb5879682); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3066, &mut x3067, x3034, 0x9ca90069); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x9ca90069); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0xb5879682); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x85ddadd); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x1db1d381); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0x7fac1047); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0x41866119); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x4ca92619); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x553e5c41); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330870); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; +} + +/// The function fiat_bp512_scalar_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_square( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x17, &mut x18, x16, (arg1[15])); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x19, &mut x20, x16, (arg1[14])); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x21, &mut x22, x16, (arg1[13])); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x23, &mut x24, x16, (arg1[12])); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x25, &mut x26, x16, (arg1[11])); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x27, &mut x28, x16, (arg1[10])); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x29, &mut x30, x16, (arg1[9])); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x31, &mut x32, x16, (arg1[8])); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x33, &mut x34, x16, (arg1[7])); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x35, &mut x36, x16, (arg1[6])); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x37, &mut x38, x16, (arg1[5])); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x39, &mut x40, x16, (arg1[4])); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x41, &mut x42, x16, (arg1[3])); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x43, &mut x44, x16, (arg1[2])); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x45, &mut x46, x16, (arg1[1])); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x47, &mut x48, x16, (arg1[0])); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let x79: u32 = ((x78 as u32) + x18); + let mut x80: u32 = 0; + let mut x81: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x80, &mut x81, x47, 0xf1b7027); + let mut x82: u32 = 0; + let mut x83: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x82, &mut x83, x80, 0xaadd9db8); + let mut x84: u32 = 0; + let mut x85: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x84, &mut x85, x80, 0xdbe9c48b); + let mut x86: u32 = 0; + let mut x87: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x86, &mut x87, x80, 0x3fd4e6ae); + let mut x88: u32 = 0; + let mut x89: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x88, &mut x89, x80, 0x33c9fc07); + let mut x90: u32 = 0; + let mut x91: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x90, &mut x91, x80, 0xcb308db3); + let mut x92: u32 = 0; + let mut x93: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x92, &mut x93, x80, 0xb3c9d20e); + let mut x94: u32 = 0; + let mut x95: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x94, &mut x95, x80, 0xd6639cca); + let mut x96: u32 = 0; + let mut x97: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x96, &mut x97, x80, 0x70330870); + let mut x98: u32 = 0; + let mut x99: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x98, &mut x99, x80, 0x553e5c41); + let mut x100: u32 = 0; + let mut x101: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x100, &mut x101, x80, 0x4ca92619); + let mut x102: u32 = 0; + let mut x103: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x102, &mut x103, x80, 0x41866119); + let mut x104: u32 = 0; + let mut x105: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x104, &mut x105, x80, 0x7fac1047); + let mut x106: u32 = 0; + let mut x107: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x106, &mut x107, x80, 0x1db1d381); + let mut x108: u32 = 0; + let mut x109: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x108, &mut x109, x80, 0x85ddadd); + let mut x110: u32 = 0; + let mut x111: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x110, &mut x111, x80, 0xb5879682); + let mut x112: u32 = 0; + let mut x113: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x112, &mut x113, x80, 0x9ca90069); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x114, &mut x115, 0x0, x113, x110); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x116, &mut x117, x115, x111, x108); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x118, &mut x119, x117, x109, x106); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x120, &mut x121, x119, x107, x104); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x122, &mut x123, x121, x105, x102); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x124, &mut x125, x123, x103, x100); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x126, &mut x127, x125, x101, x98); + let mut x128: u32 = 0; + let mut x129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x128, &mut x129, x127, x99, x96); + let mut x130: u32 = 0; + let mut x131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x130, &mut x131, x129, x97, x94); + let mut x132: u32 = 0; + let mut x133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x132, &mut x133, x131, x95, x92); + let mut x134: u32 = 0; + let mut x135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x134, &mut x135, x133, x93, x90); + let mut x136: u32 = 0; + let mut x137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x136, &mut x137, x135, x91, x88); + let mut x138: u32 = 0; + let mut x139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x138, &mut x139, x137, x89, x86); + let mut x140: u32 = 0; + let mut x141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x140, &mut x141, x139, x87, x84); + let mut x142: u32 = 0; + let mut x143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x142, &mut x143, x141, x85, x82); + let x144: u32 = ((x143 as u32) + x83); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x145, &mut x146, 0x0, x47, x112); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x147, &mut x148, x146, x49, x114); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x149, &mut x150, x148, x51, x116); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x151, &mut x152, x150, x53, x118); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x153, &mut x154, x152, x55, x120); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x155, &mut x156, x154, x57, x122); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x157, &mut x158, x156, x59, x124); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x159, &mut x160, x158, x61, x126); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x63, x128); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x65, x130); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x67, x132); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x69, x134); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x71, x136); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x73, x138); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x75, x140); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x175, &mut x176, x174, x77, x142); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x177, &mut x178, x176, x79, x144); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x179, &mut x180, x1, (arg1[15])); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x181, &mut x182, x1, (arg1[14])); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x183, &mut x184, x1, (arg1[13])); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x185, &mut x186, x1, (arg1[12])); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x187, &mut x188, x1, (arg1[11])); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x189, &mut x190, x1, (arg1[10])); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x191, &mut x192, x1, (arg1[9])); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x193, &mut x194, x1, (arg1[8])); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x195, &mut x196, x1, (arg1[7])); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x197, &mut x198, x1, (arg1[6])); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x199, &mut x200, x1, (arg1[5])); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x201, &mut x202, x1, (arg1[4])); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x203, &mut x204, x1, (arg1[3])); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x205, &mut x206, x1, (arg1[2])); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x207, &mut x208, x1, (arg1[1])); + let mut x209: u32 = 0; + let mut x210: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x209, &mut x210, x1, (arg1[0])); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x211, &mut x212, 0x0, x210, x207); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x213, &mut x214, x212, x208, x205); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x215, &mut x216, x214, x206, x203); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x217, &mut x218, x216, x204, x201); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x219, &mut x220, x218, x202, x199); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x221, &mut x222, x220, x200, x197); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x223, &mut x224, x222, x198, x195); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x225, &mut x226, x224, x196, x193); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x227, &mut x228, x226, x194, x191); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x229, &mut x230, x228, x192, x189); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x231, &mut x232, x230, x190, x187); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x233, &mut x234, x232, x188, x185); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x235, &mut x236, x234, x186, x183); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x237, &mut x238, x236, x184, x181); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x239, &mut x240, x238, x182, x179); + let x241: u32 = ((x240 as u32) + x180); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x242, &mut x243, 0x0, x147, x209); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x149, x211); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x151, x213); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x153, x215); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x155, x217); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x157, x219); + let mut x254: u32 = 0; + let mut x255: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x254, &mut x255, x253, x159, x221); + let mut x256: u32 = 0; + let mut x257: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x256, &mut x257, x255, x161, x223); + let mut x258: u32 = 0; + let mut x259: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x258, &mut x259, x257, x163, x225); + let mut x260: u32 = 0; + let mut x261: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x260, &mut x261, x259, x165, x227); + let mut x262: u32 = 0; + let mut x263: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x262, &mut x263, x261, x167, x229); + let mut x264: u32 = 0; + let mut x265: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x264, &mut x265, x263, x169, x231); + let mut x266: u32 = 0; + let mut x267: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x266, &mut x267, x265, x171, x233); + let mut x268: u32 = 0; + let mut x269: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x268, &mut x269, x267, x173, x235); + let mut x270: u32 = 0; + let mut x271: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x270, &mut x271, x269, x175, x237); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x272, &mut x273, x271, x177, x239); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x274, &mut x275, x273, (x178 as u32), x241); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x276, &mut x277, x242, 0xf1b7027); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x278, &mut x279, x276, 0xaadd9db8); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x280, &mut x281, x276, 0xdbe9c48b); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x282, &mut x283, x276, 0x3fd4e6ae); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x284, &mut x285, x276, 0x33c9fc07); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x286, &mut x287, x276, 0xcb308db3); + let mut x288: u32 = 0; + let mut x289: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x288, &mut x289, x276, 0xb3c9d20e); + let mut x290: u32 = 0; + let mut x291: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x290, &mut x291, x276, 0xd6639cca); + let mut x292: u32 = 0; + let mut x293: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x292, &mut x293, x276, 0x70330870); + let mut x294: u32 = 0; + let mut x295: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x294, &mut x295, x276, 0x553e5c41); + let mut x296: u32 = 0; + let mut x297: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x296, &mut x297, x276, 0x4ca92619); + let mut x298: u32 = 0; + let mut x299: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x298, &mut x299, x276, 0x41866119); + let mut x300: u32 = 0; + let mut x301: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x300, &mut x301, x276, 0x7fac1047); + let mut x302: u32 = 0; + let mut x303: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x302, &mut x303, x276, 0x1db1d381); + let mut x304: u32 = 0; + let mut x305: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x304, &mut x305, x276, 0x85ddadd); + let mut x306: u32 = 0; + let mut x307: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x306, &mut x307, x276, 0xb5879682); + let mut x308: u32 = 0; + let mut x309: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x308, &mut x309, x276, 0x9ca90069); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x310, &mut x311, 0x0, x309, x306); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x307, x304); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x305, x302); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x303, x300); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x318, &mut x319, x317, x301, x298); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x299, x296); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x297, x294); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x295, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x293, x290); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x291, x288); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x330, &mut x331, x329, x289, x286); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x332, &mut x333, x331, x287, x284); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x334, &mut x335, x333, x285, x282); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x336, &mut x337, x335, x283, x280); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x338, &mut x339, x337, x281, x278); + let x340: u32 = ((x339 as u32) + x279); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x341, &mut x342, 0x0, x242, x308); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x343, &mut x344, x342, x244, x310); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x345, &mut x346, x344, x246, x312); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x347, &mut x348, x346, x248, x314); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x349, &mut x350, x348, x250, x316); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x351, &mut x352, x350, x252, x318); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x353, &mut x354, x352, x254, x320); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x355, &mut x356, x354, x256, x322); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x357, &mut x358, x356, x258, x324); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x359, &mut x360, x358, x260, x326); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x361, &mut x362, x360, x262, x328); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x363, &mut x364, x362, x264, x330); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x365, &mut x366, x364, x266, x332); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x367, &mut x368, x366, x268, x334); + let mut x369: u32 = 0; + let mut x370: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x369, &mut x370, x368, x270, x336); + let mut x371: u32 = 0; + let mut x372: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x371, &mut x372, x370, x272, x338); + let mut x373: u32 = 0; + let mut x374: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x373, &mut x374, x372, x274, x340); + let x375: u32 = ((x374 as u32) + (x275 as u32)); + let mut x376: u32 = 0; + let mut x377: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x376, &mut x377, x2, (arg1[15])); + let mut x378: u32 = 0; + let mut x379: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x378, &mut x379, x2, (arg1[14])); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x380, &mut x381, x2, (arg1[13])); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x382, &mut x383, x2, (arg1[12])); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x384, &mut x385, x2, (arg1[11])); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x386, &mut x387, x2, (arg1[10])); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x388, &mut x389, x2, (arg1[9])); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x390, &mut x391, x2, (arg1[8])); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x392, &mut x393, x2, (arg1[7])); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x394, &mut x395, x2, (arg1[6])); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x396, &mut x397, x2, (arg1[5])); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x398, &mut x399, x2, (arg1[4])); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x400, &mut x401, x2, (arg1[3])); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x402, &mut x403, x2, (arg1[2])); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x404, &mut x405, x2, (arg1[1])); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x406, &mut x407, x2, (arg1[0])); + let mut x408: u32 = 0; + let mut x409: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x408, &mut x409, 0x0, x407, x404); + let mut x410: u32 = 0; + let mut x411: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x410, &mut x411, x409, x405, x402); + let mut x412: u32 = 0; + let mut x413: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x412, &mut x413, x411, x403, x400); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x414, &mut x415, x413, x401, x398); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x399, x396); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x397, x394); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x395, x392); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x393, x390); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x391, x388); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x426, &mut x427, x425, x389, x386); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x387, x384); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x385, x382); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x432, &mut x433, x431, x383, x380); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x434, &mut x435, x433, x381, x378); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x436, &mut x437, x435, x379, x376); + let x438: u32 = ((x437 as u32) + x377); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x439, &mut x440, 0x0, x343, x406); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x441, &mut x442, x440, x345, x408); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x443, &mut x444, x442, x347, x410); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x445, &mut x446, x444, x349, x412); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x447, &mut x448, x446, x351, x414); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x449, &mut x450, x448, x353, x416); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x451, &mut x452, x450, x355, x418); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x453, &mut x454, x452, x357, x420); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x455, &mut x456, x454, x359, x422); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x457, &mut x458, x456, x361, x424); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x363, x426); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x461, &mut x462, x460, x365, x428); + let mut x463: u32 = 0; + let mut x464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x463, &mut x464, x462, x367, x430); + let mut x465: u32 = 0; + let mut x466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x465, &mut x466, x464, x369, x432); + let mut x467: u32 = 0; + let mut x468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x467, &mut x468, x466, x371, x434); + let mut x469: u32 = 0; + let mut x470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x469, &mut x470, x468, x373, x436); + let mut x471: u32 = 0; + let mut x472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x471, &mut x472, x470, x375, x438); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x473, &mut x474, x439, 0xf1b7027); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x475, &mut x476, x473, 0xaadd9db8); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x477, &mut x478, x473, 0xdbe9c48b); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x479, &mut x480, x473, 0x3fd4e6ae); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x481, &mut x482, x473, 0x33c9fc07); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x483, &mut x484, x473, 0xcb308db3); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x485, &mut x486, x473, 0xb3c9d20e); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x487, &mut x488, x473, 0xd6639cca); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x489, &mut x490, x473, 0x70330870); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x491, &mut x492, x473, 0x553e5c41); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x493, &mut x494, x473, 0x4ca92619); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x495, &mut x496, x473, 0x41866119); + let mut x497: u32 = 0; + let mut x498: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x497, &mut x498, x473, 0x7fac1047); + let mut x499: u32 = 0; + let mut x500: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x499, &mut x500, x473, 0x1db1d381); + let mut x501: u32 = 0; + let mut x502: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x501, &mut x502, x473, 0x85ddadd); + let mut x503: u32 = 0; + let mut x504: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x503, &mut x504, x473, 0xb5879682); + let mut x505: u32 = 0; + let mut x506: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x505, &mut x506, x473, 0x9ca90069); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x507, &mut x508, 0x0, x506, x503); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x509, &mut x510, x508, x504, x501); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x511, &mut x512, x510, x502, x499); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x513, &mut x514, x512, x500, x497); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x515, &mut x516, x514, x498, x495); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x517, &mut x518, x516, x496, x493); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x519, &mut x520, x518, x494, x491); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x521, &mut x522, x520, x492, x489); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x523, &mut x524, x522, x490, x487); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x525, &mut x526, x524, x488, x485); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x527, &mut x528, x526, x486, x483); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x529, &mut x530, x528, x484, x481); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x531, &mut x532, x530, x482, x479); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x533, &mut x534, x532, x480, x477); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x535, &mut x536, x534, x478, x475); + let x537: u32 = ((x536 as u32) + x476); + let mut x538: u32 = 0; + let mut x539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x538, &mut x539, 0x0, x439, x505); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x540, &mut x541, x539, x441, x507); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x542, &mut x543, x541, x443, x509); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x544, &mut x545, x543, x445, x511); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x447, x513); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x449, x515); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x451, x517); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x453, x519); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x554, &mut x555, x553, x455, x521); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x556, &mut x557, x555, x457, x523); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x558, &mut x559, x557, x459, x525); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x560, &mut x561, x559, x461, x527); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x562, &mut x563, x561, x463, x529); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x564, &mut x565, x563, x465, x531); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x566, &mut x567, x565, x467, x533); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x568, &mut x569, x567, x469, x535); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x570, &mut x571, x569, x471, x537); + let x572: u32 = ((x571 as u32) + (x472 as u32)); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x573, &mut x574, x3, (arg1[15])); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x575, &mut x576, x3, (arg1[14])); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x577, &mut x578, x3, (arg1[13])); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x579, &mut x580, x3, (arg1[12])); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x581, &mut x582, x3, (arg1[11])); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x583, &mut x584, x3, (arg1[10])); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x585, &mut x586, x3, (arg1[9])); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x587, &mut x588, x3, (arg1[8])); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x589, &mut x590, x3, (arg1[7])); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x591, &mut x592, x3, (arg1[6])); + let mut x593: u32 = 0; + let mut x594: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x593, &mut x594, x3, (arg1[5])); + let mut x595: u32 = 0; + let mut x596: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x595, &mut x596, x3, (arg1[4])); + let mut x597: u32 = 0; + let mut x598: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x597, &mut x598, x3, (arg1[3])); + let mut x599: u32 = 0; + let mut x600: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x599, &mut x600, x3, (arg1[2])); + let mut x601: u32 = 0; + let mut x602: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x601, &mut x602, x3, (arg1[1])); + let mut x603: u32 = 0; + let mut x604: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x603, &mut x604, x3, (arg1[0])); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x605, &mut x606, 0x0, x604, x601); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x607, &mut x608, x606, x602, x599); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x609, &mut x610, x608, x600, x597); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x611, &mut x612, x610, x598, x595); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x613, &mut x614, x612, x596, x593); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x615, &mut x616, x614, x594, x591); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x617, &mut x618, x616, x592, x589); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x619, &mut x620, x618, x590, x587); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x621, &mut x622, x620, x588, x585); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x623, &mut x624, x622, x586, x583); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x625, &mut x626, x624, x584, x581); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x627, &mut x628, x626, x582, x579); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x629, &mut x630, x628, x580, x577); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x631, &mut x632, x630, x578, x575); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x633, &mut x634, x632, x576, x573); + let x635: u32 = ((x634 as u32) + x574); + let mut x636: u32 = 0; + let mut x637: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x636, &mut x637, 0x0, x540, x603); + let mut x638: u32 = 0; + let mut x639: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x638, &mut x639, x637, x542, x605); + let mut x640: u32 = 0; + let mut x641: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x640, &mut x641, x639, x544, x607); + let mut x642: u32 = 0; + let mut x643: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x642, &mut x643, x641, x546, x609); + let mut x644: u32 = 0; + let mut x645: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x644, &mut x645, x643, x548, x611); + let mut x646: u32 = 0; + let mut x647: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x646, &mut x647, x645, x550, x613); + let mut x648: u32 = 0; + let mut x649: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x648, &mut x649, x647, x552, x615); + let mut x650: u32 = 0; + let mut x651: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x650, &mut x651, x649, x554, x617); + let mut x652: u32 = 0; + let mut x653: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x652, &mut x653, x651, x556, x619); + let mut x654: u32 = 0; + let mut x655: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x654, &mut x655, x653, x558, x621); + let mut x656: u32 = 0; + let mut x657: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x656, &mut x657, x655, x560, x623); + let mut x658: u32 = 0; + let mut x659: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x658, &mut x659, x657, x562, x625); + let mut x660: u32 = 0; + let mut x661: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x660, &mut x661, x659, x564, x627); + let mut x662: u32 = 0; + let mut x663: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x662, &mut x663, x661, x566, x629); + let mut x664: u32 = 0; + let mut x665: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x664, &mut x665, x663, x568, x631); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x666, &mut x667, x665, x570, x633); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x668, &mut x669, x667, x572, x635); + let mut x670: u32 = 0; + let mut x671: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x670, &mut x671, x636, 0xf1b7027); + let mut x672: u32 = 0; + let mut x673: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x672, &mut x673, x670, 0xaadd9db8); + let mut x674: u32 = 0; + let mut x675: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x674, &mut x675, x670, 0xdbe9c48b); + let mut x676: u32 = 0; + let mut x677: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x676, &mut x677, x670, 0x3fd4e6ae); + let mut x678: u32 = 0; + let mut x679: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x678, &mut x679, x670, 0x33c9fc07); + let mut x680: u32 = 0; + let mut x681: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x680, &mut x681, x670, 0xcb308db3); + let mut x682: u32 = 0; + let mut x683: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x682, &mut x683, x670, 0xb3c9d20e); + let mut x684: u32 = 0; + let mut x685: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x684, &mut x685, x670, 0xd6639cca); + let mut x686: u32 = 0; + let mut x687: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x686, &mut x687, x670, 0x70330870); + let mut x688: u32 = 0; + let mut x689: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x688, &mut x689, x670, 0x553e5c41); + let mut x690: u32 = 0; + let mut x691: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x690, &mut x691, x670, 0x4ca92619); + let mut x692: u32 = 0; + let mut x693: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x692, &mut x693, x670, 0x41866119); + let mut x694: u32 = 0; + let mut x695: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x694, &mut x695, x670, 0x7fac1047); + let mut x696: u32 = 0; + let mut x697: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x696, &mut x697, x670, 0x1db1d381); + let mut x698: u32 = 0; + let mut x699: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x698, &mut x699, x670, 0x85ddadd); + let mut x700: u32 = 0; + let mut x701: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x700, &mut x701, x670, 0xb5879682); + let mut x702: u32 = 0; + let mut x703: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x702, &mut x703, x670, 0x9ca90069); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x704, &mut x705, 0x0, x703, x700); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x701, x698); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x708, &mut x709, x707, x699, x696); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x697, x694); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x695, x692); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x693, x690); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x691, x688); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x689, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x687, x684); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x685, x682); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x683, x680); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x726, &mut x727, x725, x681, x678); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x728, &mut x729, x727, x679, x676); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x730, &mut x731, x729, x677, x674); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x732, &mut x733, x731, x675, x672); + let x734: u32 = ((x733 as u32) + x673); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x735, &mut x736, 0x0, x636, x702); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x737, &mut x738, x736, x638, x704); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x739, &mut x740, x738, x640, x706); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x741, &mut x742, x740, x642, x708); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x743, &mut x744, x742, x644, x710); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x745, &mut x746, x744, x646, x712); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x747, &mut x748, x746, x648, x714); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x749, &mut x750, x748, x650, x716); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x751, &mut x752, x750, x652, x718); + let mut x753: u32 = 0; + let mut x754: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x753, &mut x754, x752, x654, x720); + let mut x755: u32 = 0; + let mut x756: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x755, &mut x756, x754, x656, x722); + let mut x757: u32 = 0; + let mut x758: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x757, &mut x758, x756, x658, x724); + let mut x759: u32 = 0; + let mut x760: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x759, &mut x760, x758, x660, x726); + let mut x761: u32 = 0; + let mut x762: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x761, &mut x762, x760, x662, x728); + let mut x763: u32 = 0; + let mut x764: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x763, &mut x764, x762, x664, x730); + let mut x765: u32 = 0; + let mut x766: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x765, &mut x766, x764, x666, x732); + let mut x767: u32 = 0; + let mut x768: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x767, &mut x768, x766, x668, x734); + let x769: u32 = ((x768 as u32) + (x669 as u32)); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x770, &mut x771, x4, (arg1[15])); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x772, &mut x773, x4, (arg1[14])); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x774, &mut x775, x4, (arg1[13])); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x776, &mut x777, x4, (arg1[12])); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x778, &mut x779, x4, (arg1[11])); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x780, &mut x781, x4, (arg1[10])); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x782, &mut x783, x4, (arg1[9])); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x784, &mut x785, x4, (arg1[8])); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x786, &mut x787, x4, (arg1[7])); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x788, &mut x789, x4, (arg1[6])); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x790, &mut x791, x4, (arg1[5])); + let mut x792: u32 = 0; + let mut x793: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x792, &mut x793, x4, (arg1[4])); + let mut x794: u32 = 0; + let mut x795: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x794, &mut x795, x4, (arg1[3])); + let mut x796: u32 = 0; + let mut x797: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x796, &mut x797, x4, (arg1[2])); + let mut x798: u32 = 0; + let mut x799: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x798, &mut x799, x4, (arg1[1])); + let mut x800: u32 = 0; + let mut x801: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x800, &mut x801, x4, (arg1[0])); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x802, &mut x803, 0x0, x801, x798); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x804, &mut x805, x803, x799, x796); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x806, &mut x807, x805, x797, x794); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x808, &mut x809, x807, x795, x792); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x810, &mut x811, x809, x793, x790); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x812, &mut x813, x811, x791, x788); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x814, &mut x815, x813, x789, x786); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x816, &mut x817, x815, x787, x784); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x818, &mut x819, x817, x785, x782); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x820, &mut x821, x819, x783, x780); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x822, &mut x823, x821, x781, x778); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x824, &mut x825, x823, x779, x776); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x826, &mut x827, x825, x777, x774); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x828, &mut x829, x827, x775, x772); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x830, &mut x831, x829, x773, x770); + let x832: u32 = ((x831 as u32) + x771); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x833, &mut x834, 0x0, x737, x800); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x835, &mut x836, x834, x739, x802); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x837, &mut x838, x836, x741, x804); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x839, &mut x840, x838, x743, x806); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x841, &mut x842, x840, x745, x808); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x843, &mut x844, x842, x747, x810); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x845, &mut x846, x844, x749, x812); + let mut x847: u32 = 0; + let mut x848: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x847, &mut x848, x846, x751, x814); + let mut x849: u32 = 0; + let mut x850: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x849, &mut x850, x848, x753, x816); + let mut x851: u32 = 0; + let mut x852: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x851, &mut x852, x850, x755, x818); + let mut x853: u32 = 0; + let mut x854: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x853, &mut x854, x852, x757, x820); + let mut x855: u32 = 0; + let mut x856: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x855, &mut x856, x854, x759, x822); + let mut x857: u32 = 0; + let mut x858: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x857, &mut x858, x856, x761, x824); + let mut x859: u32 = 0; + let mut x860: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x859, &mut x860, x858, x763, x826); + let mut x861: u32 = 0; + let mut x862: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x861, &mut x862, x860, x765, x828); + let mut x863: u32 = 0; + let mut x864: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x863, &mut x864, x862, x767, x830); + let mut x865: u32 = 0; + let mut x866: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x865, &mut x866, x864, x769, x832); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x867, &mut x868, x833, 0xf1b7027); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x869, &mut x870, x867, 0xaadd9db8); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x871, &mut x872, x867, 0xdbe9c48b); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x873, &mut x874, x867, 0x3fd4e6ae); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x875, &mut x876, x867, 0x33c9fc07); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x877, &mut x878, x867, 0xcb308db3); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x879, &mut x880, x867, 0xb3c9d20e); + let mut x881: u32 = 0; + let mut x882: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x881, &mut x882, x867, 0xd6639cca); + let mut x883: u32 = 0; + let mut x884: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x883, &mut x884, x867, 0x70330870); + let mut x885: u32 = 0; + let mut x886: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x885, &mut x886, x867, 0x553e5c41); + let mut x887: u32 = 0; + let mut x888: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x887, &mut x888, x867, 0x4ca92619); + let mut x889: u32 = 0; + let mut x890: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x889, &mut x890, x867, 0x41866119); + let mut x891: u32 = 0; + let mut x892: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x891, &mut x892, x867, 0x7fac1047); + let mut x893: u32 = 0; + let mut x894: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x893, &mut x894, x867, 0x1db1d381); + let mut x895: u32 = 0; + let mut x896: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x895, &mut x896, x867, 0x85ddadd); + let mut x897: u32 = 0; + let mut x898: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x897, &mut x898, x867, 0xb5879682); + let mut x899: u32 = 0; + let mut x900: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x899, &mut x900, x867, 0x9ca90069); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x901, &mut x902, 0x0, x900, x897); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x903, &mut x904, x902, x898, x895); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x905, &mut x906, x904, x896, x893); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x907, &mut x908, x906, x894, x891); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x909, &mut x910, x908, x892, x889); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x911, &mut x912, x910, x890, x887); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x913, &mut x914, x912, x888, x885); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x915, &mut x916, x914, x886, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x917, &mut x918, x916, x884, x881); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x919, &mut x920, x918, x882, x879); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x921, &mut x922, x920, x880, x877); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x923, &mut x924, x922, x878, x875); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x925, &mut x926, x924, x876, x873); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x927, &mut x928, x926, x874, x871); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x929, &mut x930, x928, x872, x869); + let x931: u32 = ((x930 as u32) + x870); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x932, &mut x933, 0x0, x833, x899); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x934, &mut x935, x933, x835, x901); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x936, &mut x937, x935, x837, x903); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x938, &mut x939, x937, x839, x905); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x940, &mut x941, x939, x841, x907); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x942, &mut x943, x941, x843, x909); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x944, &mut x945, x943, x845, x911); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x946, &mut x947, x945, x847, x913); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x948, &mut x949, x947, x849, x915); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x950, &mut x951, x949, x851, x917); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x952, &mut x953, x951, x853, x919); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x954, &mut x955, x953, x855, x921); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x956, &mut x957, x955, x857, x923); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x958, &mut x959, x957, x859, x925); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x960, &mut x961, x959, x861, x927); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x962, &mut x963, x961, x863, x929); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x964, &mut x965, x963, x865, x931); + let x966: u32 = ((x965 as u32) + (x866 as u32)); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x967, &mut x968, x5, (arg1[15])); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x969, &mut x970, x5, (arg1[14])); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x971, &mut x972, x5, (arg1[13])); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x973, &mut x974, x5, (arg1[12])); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x975, &mut x976, x5, (arg1[11])); + let mut x977: u32 = 0; + let mut x978: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x977, &mut x978, x5, (arg1[10])); + let mut x979: u32 = 0; + let mut x980: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x979, &mut x980, x5, (arg1[9])); + let mut x981: u32 = 0; + let mut x982: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x981, &mut x982, x5, (arg1[8])); + let mut x983: u32 = 0; + let mut x984: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x983, &mut x984, x5, (arg1[7])); + let mut x985: u32 = 0; + let mut x986: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x985, &mut x986, x5, (arg1[6])); + let mut x987: u32 = 0; + let mut x988: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x987, &mut x988, x5, (arg1[5])); + let mut x989: u32 = 0; + let mut x990: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x989, &mut x990, x5, (arg1[4])); + let mut x991: u32 = 0; + let mut x992: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x991, &mut x992, x5, (arg1[3])); + let mut x993: u32 = 0; + let mut x994: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x993, &mut x994, x5, (arg1[2])); + let mut x995: u32 = 0; + let mut x996: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x995, &mut x996, x5, (arg1[1])); + let mut x997: u32 = 0; + let mut x998: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x997, &mut x998, x5, (arg1[0])); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x999, &mut x1000, 0x0, x998, x995); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1001, &mut x1002, x1000, x996, x993); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1003, &mut x1004, x1002, x994, x991); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1005, &mut x1006, x1004, x992, x989); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1007, &mut x1008, x1006, x990, x987); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1009, &mut x1010, x1008, x988, x985); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1011, &mut x1012, x1010, x986, x983); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1013, &mut x1014, x1012, x984, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1015, &mut x1016, x1014, x982, x979); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1017, &mut x1018, x1016, x980, x977); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1019, &mut x1020, x1018, x978, x975); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1021, &mut x1022, x1020, x976, x973); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1023, &mut x1024, x1022, x974, x971); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1025, &mut x1026, x1024, x972, x969); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1027, &mut x1028, x1026, x970, x967); + let x1029: u32 = ((x1028 as u32) + x968); + let mut x1030: u32 = 0; + let mut x1031: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1030, &mut x1031, 0x0, x934, x997); + let mut x1032: u32 = 0; + let mut x1033: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1032, &mut x1033, x1031, x936, x999); + let mut x1034: u32 = 0; + let mut x1035: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1034, &mut x1035, x1033, x938, x1001); + let mut x1036: u32 = 0; + let mut x1037: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1036, &mut x1037, x1035, x940, x1003); + let mut x1038: u32 = 0; + let mut x1039: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1038, &mut x1039, x1037, x942, x1005); + let mut x1040: u32 = 0; + let mut x1041: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1040, &mut x1041, x1039, x944, x1007); + let mut x1042: u32 = 0; + let mut x1043: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1042, &mut x1043, x1041, x946, x1009); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1044, &mut x1045, x1043, x948, x1011); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1046, &mut x1047, x1045, x950, x1013); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1048, &mut x1049, x1047, x952, x1015); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1050, &mut x1051, x1049, x954, x1017); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1052, &mut x1053, x1051, x956, x1019); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1054, &mut x1055, x1053, x958, x1021); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1056, &mut x1057, x1055, x960, x1023); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1058, &mut x1059, x1057, x962, x1025); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1060, &mut x1061, x1059, x964, x1027); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1062, &mut x1063, x1061, x966, x1029); + let mut x1064: u32 = 0; + let mut x1065: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1064, &mut x1065, x1030, 0xf1b7027); + let mut x1066: u32 = 0; + let mut x1067: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1066, &mut x1067, x1064, 0xaadd9db8); + let mut x1068: u32 = 0; + let mut x1069: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1068, &mut x1069, x1064, 0xdbe9c48b); + let mut x1070: u32 = 0; + let mut x1071: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1070, &mut x1071, x1064, 0x3fd4e6ae); + let mut x1072: u32 = 0; + let mut x1073: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1072, &mut x1073, x1064, 0x33c9fc07); + let mut x1074: u32 = 0; + let mut x1075: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1074, &mut x1075, x1064, 0xcb308db3); + let mut x1076: u32 = 0; + let mut x1077: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1076, &mut x1077, x1064, 0xb3c9d20e); + let mut x1078: u32 = 0; + let mut x1079: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1078, &mut x1079, x1064, 0xd6639cca); + let mut x1080: u32 = 0; + let mut x1081: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1080, &mut x1081, x1064, 0x70330870); + let mut x1082: u32 = 0; + let mut x1083: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1082, &mut x1083, x1064, 0x553e5c41); + let mut x1084: u32 = 0; + let mut x1085: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1084, &mut x1085, x1064, 0x4ca92619); + let mut x1086: u32 = 0; + let mut x1087: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1086, &mut x1087, x1064, 0x41866119); + let mut x1088: u32 = 0; + let mut x1089: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1088, &mut x1089, x1064, 0x7fac1047); + let mut x1090: u32 = 0; + let mut x1091: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1090, &mut x1091, x1064, 0x1db1d381); + let mut x1092: u32 = 0; + let mut x1093: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1092, &mut x1093, x1064, 0x85ddadd); + let mut x1094: u32 = 0; + let mut x1095: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1094, &mut x1095, x1064, 0xb5879682); + let mut x1096: u32 = 0; + let mut x1097: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1096, &mut x1097, x1064, 0x9ca90069); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1098, &mut x1099, 0x0, x1097, x1094); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1095, x1092); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1093, x1090); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1104, &mut x1105, x1103, x1091, x1088); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1106, &mut x1107, x1105, x1089, x1086); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1087, x1084); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1085, x1082); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1083, x1080); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1081, x1078); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1079, x1076); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1077, x1074); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1075, x1072); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1073, x1070); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1071, x1068); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1069, x1066); + let x1128: u32 = ((x1127 as u32) + x1067); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1129, &mut x1130, 0x0, x1030, x1096); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1032, x1098); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1034, x1100); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1135, &mut x1136, x1134, x1036, x1102); + let mut x1137: u32 = 0; + let mut x1138: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1137, &mut x1138, x1136, x1038, x1104); + let mut x1139: u32 = 0; + let mut x1140: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1139, &mut x1140, x1138, x1040, x1106); + let mut x1141: u32 = 0; + let mut x1142: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1141, &mut x1142, x1140, x1042, x1108); + let mut x1143: u32 = 0; + let mut x1144: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1143, &mut x1144, x1142, x1044, x1110); + let mut x1145: u32 = 0; + let mut x1146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1145, &mut x1146, x1144, x1046, x1112); + let mut x1147: u32 = 0; + let mut x1148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1147, &mut x1148, x1146, x1048, x1114); + let mut x1149: u32 = 0; + let mut x1150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1149, &mut x1150, x1148, x1050, x1116); + let mut x1151: u32 = 0; + let mut x1152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1151, &mut x1152, x1150, x1052, x1118); + let mut x1153: u32 = 0; + let mut x1154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1153, &mut x1154, x1152, x1054, x1120); + let mut x1155: u32 = 0; + let mut x1156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1155, &mut x1156, x1154, x1056, x1122); + let mut x1157: u32 = 0; + let mut x1158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1157, &mut x1158, x1156, x1058, x1124); + let mut x1159: u32 = 0; + let mut x1160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1159, &mut x1160, x1158, x1060, x1126); + let mut x1161: u32 = 0; + let mut x1162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1161, &mut x1162, x1160, x1062, x1128); + let x1163: u32 = ((x1162 as u32) + (x1063 as u32)); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1164, &mut x1165, x6, (arg1[15])); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1166, &mut x1167, x6, (arg1[14])); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1168, &mut x1169, x6, (arg1[13])); + let mut x1170: u32 = 0; + let mut x1171: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1170, &mut x1171, x6, (arg1[12])); + let mut x1172: u32 = 0; + let mut x1173: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1172, &mut x1173, x6, (arg1[11])); + let mut x1174: u32 = 0; + let mut x1175: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1174, &mut x1175, x6, (arg1[10])); + let mut x1176: u32 = 0; + let mut x1177: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1176, &mut x1177, x6, (arg1[9])); + let mut x1178: u32 = 0; + let mut x1179: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1178, &mut x1179, x6, (arg1[8])); + let mut x1180: u32 = 0; + let mut x1181: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1180, &mut x1181, x6, (arg1[7])); + let mut x1182: u32 = 0; + let mut x1183: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1182, &mut x1183, x6, (arg1[6])); + let mut x1184: u32 = 0; + let mut x1185: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1184, &mut x1185, x6, (arg1[5])); + let mut x1186: u32 = 0; + let mut x1187: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1186, &mut x1187, x6, (arg1[4])); + let mut x1188: u32 = 0; + let mut x1189: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1188, &mut x1189, x6, (arg1[3])); + let mut x1190: u32 = 0; + let mut x1191: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1190, &mut x1191, x6, (arg1[2])); + let mut x1192: u32 = 0; + let mut x1193: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1192, &mut x1193, x6, (arg1[1])); + let mut x1194: u32 = 0; + let mut x1195: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1194, &mut x1195, x6, (arg1[0])); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1196, &mut x1197, 0x0, x1195, x1192); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1193, x1190); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1200, &mut x1201, x1199, x1191, x1188); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1189, x1186); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1187, x1184); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1185, x1182); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1183, x1180); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1181, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1179, x1176); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1177, x1174); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1175, x1172); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1173, x1170); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1171, x1168); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1169, x1166); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1167, x1164); + let x1226: u32 = ((x1225 as u32) + x1165); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1227, &mut x1228, 0x0, x1131, x1194); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1133, x1196); + let mut x1231: u32 = 0; + let mut x1232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1231, &mut x1232, x1230, x1135, x1198); + let mut x1233: u32 = 0; + let mut x1234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1233, &mut x1234, x1232, x1137, x1200); + let mut x1235: u32 = 0; + let mut x1236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1235, &mut x1236, x1234, x1139, x1202); + let mut x1237: u32 = 0; + let mut x1238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1237, &mut x1238, x1236, x1141, x1204); + let mut x1239: u32 = 0; + let mut x1240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1239, &mut x1240, x1238, x1143, x1206); + let mut x1241: u32 = 0; + let mut x1242: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1241, &mut x1242, x1240, x1145, x1208); + let mut x1243: u32 = 0; + let mut x1244: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1243, &mut x1244, x1242, x1147, x1210); + let mut x1245: u32 = 0; + let mut x1246: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1245, &mut x1246, x1244, x1149, x1212); + let mut x1247: u32 = 0; + let mut x1248: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1247, &mut x1248, x1246, x1151, x1214); + let mut x1249: u32 = 0; + let mut x1250: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1249, &mut x1250, x1248, x1153, x1216); + let mut x1251: u32 = 0; + let mut x1252: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1251, &mut x1252, x1250, x1155, x1218); + let mut x1253: u32 = 0; + let mut x1254: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1253, &mut x1254, x1252, x1157, x1220); + let mut x1255: u32 = 0; + let mut x1256: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1255, &mut x1256, x1254, x1159, x1222); + let mut x1257: u32 = 0; + let mut x1258: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1257, &mut x1258, x1256, x1161, x1224); + let mut x1259: u32 = 0; + let mut x1260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1259, &mut x1260, x1258, x1163, x1226); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1261, &mut x1262, x1227, 0xf1b7027); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1263, &mut x1264, x1261, 0xaadd9db8); + let mut x1265: u32 = 0; + let mut x1266: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1265, &mut x1266, x1261, 0xdbe9c48b); + let mut x1267: u32 = 0; + let mut x1268: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1267, &mut x1268, x1261, 0x3fd4e6ae); + let mut x1269: u32 = 0; + let mut x1270: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1269, &mut x1270, x1261, 0x33c9fc07); + let mut x1271: u32 = 0; + let mut x1272: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1271, &mut x1272, x1261, 0xcb308db3); + let mut x1273: u32 = 0; + let mut x1274: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1273, &mut x1274, x1261, 0xb3c9d20e); + let mut x1275: u32 = 0; + let mut x1276: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1275, &mut x1276, x1261, 0xd6639cca); + let mut x1277: u32 = 0; + let mut x1278: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1277, &mut x1278, x1261, 0x70330870); + let mut x1279: u32 = 0; + let mut x1280: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1279, &mut x1280, x1261, 0x553e5c41); + let mut x1281: u32 = 0; + let mut x1282: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1281, &mut x1282, x1261, 0x4ca92619); + let mut x1283: u32 = 0; + let mut x1284: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1283, &mut x1284, x1261, 0x41866119); + let mut x1285: u32 = 0; + let mut x1286: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1285, &mut x1286, x1261, 0x7fac1047); + let mut x1287: u32 = 0; + let mut x1288: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1287, &mut x1288, x1261, 0x1db1d381); + let mut x1289: u32 = 0; + let mut x1290: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1289, &mut x1290, x1261, 0x85ddadd); + let mut x1291: u32 = 0; + let mut x1292: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1291, &mut x1292, x1261, 0xb5879682); + let mut x1293: u32 = 0; + let mut x1294: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1293, &mut x1294, x1261, 0x9ca90069); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1294, x1291); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1292, x1289); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1290, x1287); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1288, x1285); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1286, x1283); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1284, x1281); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1282, x1279); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1280, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1278, x1275); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1276, x1273); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1274, x1271); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1272, x1269); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1270, x1267); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1268, x1265); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1266, x1263); + let x1325: u32 = ((x1324 as u32) + x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1227, x1293); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1229, x1295); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1231, x1297); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1233, x1299); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1235, x1301); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1237, x1303); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1239, x1305); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1241, x1307); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1243, x1309); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1245, x1311); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1247, x1313); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1249, x1315); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1251, x1317); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1253, x1319); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1255, x1321); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1356, &mut x1357, x1355, x1257, x1323); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1358, &mut x1359, x1357, x1259, x1325); + let x1360: u32 = ((x1359 as u32) + (x1260 as u32)); + let mut x1361: u32 = 0; + let mut x1362: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1361, &mut x1362, x7, (arg1[15])); + let mut x1363: u32 = 0; + let mut x1364: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1363, &mut x1364, x7, (arg1[14])); + let mut x1365: u32 = 0; + let mut x1366: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1365, &mut x1366, x7, (arg1[13])); + let mut x1367: u32 = 0; + let mut x1368: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1367, &mut x1368, x7, (arg1[12])); + let mut x1369: u32 = 0; + let mut x1370: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1369, &mut x1370, x7, (arg1[11])); + let mut x1371: u32 = 0; + let mut x1372: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1371, &mut x1372, x7, (arg1[10])); + let mut x1373: u32 = 0; + let mut x1374: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1373, &mut x1374, x7, (arg1[9])); + let mut x1375: u32 = 0; + let mut x1376: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1375, &mut x1376, x7, (arg1[8])); + let mut x1377: u32 = 0; + let mut x1378: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1377, &mut x1378, x7, (arg1[7])); + let mut x1379: u32 = 0; + let mut x1380: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1379, &mut x1380, x7, (arg1[6])); + let mut x1381: u32 = 0; + let mut x1382: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1381, &mut x1382, x7, (arg1[5])); + let mut x1383: u32 = 0; + let mut x1384: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1383, &mut x1384, x7, (arg1[4])); + let mut x1385: u32 = 0; + let mut x1386: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1385, &mut x1386, x7, (arg1[3])); + let mut x1387: u32 = 0; + let mut x1388: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1387, &mut x1388, x7, (arg1[2])); + let mut x1389: u32 = 0; + let mut x1390: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1389, &mut x1390, x7, (arg1[1])); + let mut x1391: u32 = 0; + let mut x1392: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1391, &mut x1392, x7, (arg1[0])); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1393, &mut x1394, 0x0, x1392, x1389); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1390, x1387); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1388, x1385); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1386, x1383); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1384, x1381); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1382, x1379); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1380, x1377); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1378, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1376, x1373); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1374, x1371); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1372, x1369); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1370, x1367); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1368, x1365); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1366, x1363); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1364, x1361); + let x1423: u32 = ((x1422 as u32) + x1362); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1424, &mut x1425, 0x0, x1328, x1391); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1330, x1393); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1332, x1395); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1334, x1397); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1336, x1399); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1338, x1401); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1340, x1403); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1342, x1405); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1344, x1407); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1346, x1409); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1348, x1411); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1350, x1413); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1352, x1415); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1354, x1417); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1452, &mut x1453, x1451, x1356, x1419); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1358, x1421); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1360, x1423); + let mut x1458: u32 = 0; + let mut x1459: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1458, &mut x1459, x1424, 0xf1b7027); + let mut x1460: u32 = 0; + let mut x1461: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1460, &mut x1461, x1458, 0xaadd9db8); + let mut x1462: u32 = 0; + let mut x1463: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1462, &mut x1463, x1458, 0xdbe9c48b); + let mut x1464: u32 = 0; + let mut x1465: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1464, &mut x1465, x1458, 0x3fd4e6ae); + let mut x1466: u32 = 0; + let mut x1467: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1466, &mut x1467, x1458, 0x33c9fc07); + let mut x1468: u32 = 0; + let mut x1469: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1468, &mut x1469, x1458, 0xcb308db3); + let mut x1470: u32 = 0; + let mut x1471: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1470, &mut x1471, x1458, 0xb3c9d20e); + let mut x1472: u32 = 0; + let mut x1473: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1472, &mut x1473, x1458, 0xd6639cca); + let mut x1474: u32 = 0; + let mut x1475: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1474, &mut x1475, x1458, 0x70330870); + let mut x1476: u32 = 0; + let mut x1477: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1476, &mut x1477, x1458, 0x553e5c41); + let mut x1478: u32 = 0; + let mut x1479: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1478, &mut x1479, x1458, 0x4ca92619); + let mut x1480: u32 = 0; + let mut x1481: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1480, &mut x1481, x1458, 0x41866119); + let mut x1482: u32 = 0; + let mut x1483: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1482, &mut x1483, x1458, 0x7fac1047); + let mut x1484: u32 = 0; + let mut x1485: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1484, &mut x1485, x1458, 0x1db1d381); + let mut x1486: u32 = 0; + let mut x1487: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1486, &mut x1487, x1458, 0x85ddadd); + let mut x1488: u32 = 0; + let mut x1489: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1488, &mut x1489, x1458, 0xb5879682); + let mut x1490: u32 = 0; + let mut x1491: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1490, &mut x1491, x1458, 0x9ca90069); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1492, &mut x1493, 0x0, x1491, x1488); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1489, x1486); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1487, x1484); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1485, x1482); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1483, x1480); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1481, x1478); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1479, x1476); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1477, x1474); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1475, x1472); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1473, x1470); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1471, x1468); + let mut x1514: u32 = 0; + let mut x1515: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1514, &mut x1515, x1513, x1469, x1466); + let mut x1516: u32 = 0; + let mut x1517: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1516, &mut x1517, x1515, x1467, x1464); + let mut x1518: u32 = 0; + let mut x1519: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1518, &mut x1519, x1517, x1465, x1462); + let mut x1520: u32 = 0; + let mut x1521: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1520, &mut x1521, x1519, x1463, x1460); + let x1522: u32 = ((x1521 as u32) + x1461); + let mut x1523: u32 = 0; + let mut x1524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1523, &mut x1524, 0x0, x1424, x1490); + let mut x1525: u32 = 0; + let mut x1526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1525, &mut x1526, x1524, x1426, x1492); + let mut x1527: u32 = 0; + let mut x1528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1527, &mut x1528, x1526, x1428, x1494); + let mut x1529: u32 = 0; + let mut x1530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1529, &mut x1530, x1528, x1430, x1496); + let mut x1531: u32 = 0; + let mut x1532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1531, &mut x1532, x1530, x1432, x1498); + let mut x1533: u32 = 0; + let mut x1534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1533, &mut x1534, x1532, x1434, x1500); + let mut x1535: u32 = 0; + let mut x1536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1535, &mut x1536, x1534, x1436, x1502); + let mut x1537: u32 = 0; + let mut x1538: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1537, &mut x1538, x1536, x1438, x1504); + let mut x1539: u32 = 0; + let mut x1540: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1539, &mut x1540, x1538, x1440, x1506); + let mut x1541: u32 = 0; + let mut x1542: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1541, &mut x1542, x1540, x1442, x1508); + let mut x1543: u32 = 0; + let mut x1544: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1543, &mut x1544, x1542, x1444, x1510); + let mut x1545: u32 = 0; + let mut x1546: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1545, &mut x1546, x1544, x1446, x1512); + let mut x1547: u32 = 0; + let mut x1548: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1547, &mut x1548, x1546, x1448, x1514); + let mut x1549: u32 = 0; + let mut x1550: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1549, &mut x1550, x1548, x1450, x1516); + let mut x1551: u32 = 0; + let mut x1552: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1551, &mut x1552, x1550, x1452, x1518); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1553, &mut x1554, x1552, x1454, x1520); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1456, x1522); + let x1557: u32 = ((x1556 as u32) + (x1457 as u32)); + let mut x1558: u32 = 0; + let mut x1559: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1558, &mut x1559, x8, (arg1[15])); + let mut x1560: u32 = 0; + let mut x1561: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1560, &mut x1561, x8, (arg1[14])); + let mut x1562: u32 = 0; + let mut x1563: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1562, &mut x1563, x8, (arg1[13])); + let mut x1564: u32 = 0; + let mut x1565: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1564, &mut x1565, x8, (arg1[12])); + let mut x1566: u32 = 0; + let mut x1567: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1566, &mut x1567, x8, (arg1[11])); + let mut x1568: u32 = 0; + let mut x1569: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1568, &mut x1569, x8, (arg1[10])); + let mut x1570: u32 = 0; + let mut x1571: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1570, &mut x1571, x8, (arg1[9])); + let mut x1572: u32 = 0; + let mut x1573: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1572, &mut x1573, x8, (arg1[8])); + let mut x1574: u32 = 0; + let mut x1575: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1574, &mut x1575, x8, (arg1[7])); + let mut x1576: u32 = 0; + let mut x1577: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1576, &mut x1577, x8, (arg1[6])); + let mut x1578: u32 = 0; + let mut x1579: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1578, &mut x1579, x8, (arg1[5])); + let mut x1580: u32 = 0; + let mut x1581: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1580, &mut x1581, x8, (arg1[4])); + let mut x1582: u32 = 0; + let mut x1583: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1582, &mut x1583, x8, (arg1[3])); + let mut x1584: u32 = 0; + let mut x1585: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1584, &mut x1585, x8, (arg1[2])); + let mut x1586: u32 = 0; + let mut x1587: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1586, &mut x1587, x8, (arg1[1])); + let mut x1588: u32 = 0; + let mut x1589: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1588, &mut x1589, x8, (arg1[0])); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1590, &mut x1591, 0x0, x1589, x1586); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1587, x1584); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1585, x1582); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1583, x1580); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1581, x1578); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1579, x1576); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1577, x1574); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1575, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1573, x1570); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1608, &mut x1609, x1607, x1571, x1568); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1610, &mut x1611, x1609, x1569, x1566); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1567, x1564); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1565, x1562); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1563, x1560); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1561, x1558); + let x1620: u32 = ((x1619 as u32) + x1559); + let mut x1621: u32 = 0; + let mut x1622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1621, &mut x1622, 0x0, x1525, x1588); + let mut x1623: u32 = 0; + let mut x1624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1623, &mut x1624, x1622, x1527, x1590); + let mut x1625: u32 = 0; + let mut x1626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1625, &mut x1626, x1624, x1529, x1592); + let mut x1627: u32 = 0; + let mut x1628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1627, &mut x1628, x1626, x1531, x1594); + let mut x1629: u32 = 0; + let mut x1630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1629, &mut x1630, x1628, x1533, x1596); + let mut x1631: u32 = 0; + let mut x1632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1631, &mut x1632, x1630, x1535, x1598); + let mut x1633: u32 = 0; + let mut x1634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1633, &mut x1634, x1632, x1537, x1600); + let mut x1635: u32 = 0; + let mut x1636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1635, &mut x1636, x1634, x1539, x1602); + let mut x1637: u32 = 0; + let mut x1638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1637, &mut x1638, x1636, x1541, x1604); + let mut x1639: u32 = 0; + let mut x1640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1639, &mut x1640, x1638, x1543, x1606); + let mut x1641: u32 = 0; + let mut x1642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1641, &mut x1642, x1640, x1545, x1608); + let mut x1643: u32 = 0; + let mut x1644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1643, &mut x1644, x1642, x1547, x1610); + let mut x1645: u32 = 0; + let mut x1646: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1645, &mut x1646, x1644, x1549, x1612); + let mut x1647: u32 = 0; + let mut x1648: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1647, &mut x1648, x1646, x1551, x1614); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1649, &mut x1650, x1648, x1553, x1616); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1555, x1618); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1557, x1620); + let mut x1655: u32 = 0; + let mut x1656: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1655, &mut x1656, x1621, 0xf1b7027); + let mut x1657: u32 = 0; + let mut x1658: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1657, &mut x1658, x1655, 0xaadd9db8); + let mut x1659: u32 = 0; + let mut x1660: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1659, &mut x1660, x1655, 0xdbe9c48b); + let mut x1661: u32 = 0; + let mut x1662: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1661, &mut x1662, x1655, 0x3fd4e6ae); + let mut x1663: u32 = 0; + let mut x1664: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1663, &mut x1664, x1655, 0x33c9fc07); + let mut x1665: u32 = 0; + let mut x1666: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1665, &mut x1666, x1655, 0xcb308db3); + let mut x1667: u32 = 0; + let mut x1668: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1667, &mut x1668, x1655, 0xb3c9d20e); + let mut x1669: u32 = 0; + let mut x1670: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1669, &mut x1670, x1655, 0xd6639cca); + let mut x1671: u32 = 0; + let mut x1672: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1671, &mut x1672, x1655, 0x70330870); + let mut x1673: u32 = 0; + let mut x1674: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1673, &mut x1674, x1655, 0x553e5c41); + let mut x1675: u32 = 0; + let mut x1676: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1675, &mut x1676, x1655, 0x4ca92619); + let mut x1677: u32 = 0; + let mut x1678: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1677, &mut x1678, x1655, 0x41866119); + let mut x1679: u32 = 0; + let mut x1680: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1679, &mut x1680, x1655, 0x7fac1047); + let mut x1681: u32 = 0; + let mut x1682: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1681, &mut x1682, x1655, 0x1db1d381); + let mut x1683: u32 = 0; + let mut x1684: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1683, &mut x1684, x1655, 0x85ddadd); + let mut x1685: u32 = 0; + let mut x1686: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1685, &mut x1686, x1655, 0xb5879682); + let mut x1687: u32 = 0; + let mut x1688: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1687, &mut x1688, x1655, 0x9ca90069); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1689, &mut x1690, 0x0, x1688, x1685); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1686, x1683); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1684, x1681); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1682, x1679); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1680, x1677); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1678, x1675); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1676, x1673); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1674, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1672, x1669); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1670, x1667); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1668, x1665); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1711, &mut x1712, x1710, x1666, x1663); + let mut x1713: u32 = 0; + let mut x1714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1713, &mut x1714, x1712, x1664, x1661); + let mut x1715: u32 = 0; + let mut x1716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1715, &mut x1716, x1714, x1662, x1659); + let mut x1717: u32 = 0; + let mut x1718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1717, &mut x1718, x1716, x1660, x1657); + let x1719: u32 = ((x1718 as u32) + x1658); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1720, &mut x1721, 0x0, x1621, x1687); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1623, x1689); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1625, x1691); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1627, x1693); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1629, x1695); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1631, x1697); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1633, x1699); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1734, &mut x1735, x1733, x1635, x1701); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1736, &mut x1737, x1735, x1637, x1703); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1639, x1705); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1641, x1707); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1643, x1709); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1645, x1711); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1647, x1713); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1649, x1715); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1651, x1717); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1653, x1719); + let x1754: u32 = ((x1753 as u32) + (x1654 as u32)); + let mut x1755: u32 = 0; + let mut x1756: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1755, &mut x1756, x9, (arg1[15])); + let mut x1757: u32 = 0; + let mut x1758: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1757, &mut x1758, x9, (arg1[14])); + let mut x1759: u32 = 0; + let mut x1760: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1759, &mut x1760, x9, (arg1[13])); + let mut x1761: u32 = 0; + let mut x1762: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1761, &mut x1762, x9, (arg1[12])); + let mut x1763: u32 = 0; + let mut x1764: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1763, &mut x1764, x9, (arg1[11])); + let mut x1765: u32 = 0; + let mut x1766: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1765, &mut x1766, x9, (arg1[10])); + let mut x1767: u32 = 0; + let mut x1768: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1767, &mut x1768, x9, (arg1[9])); + let mut x1769: u32 = 0; + let mut x1770: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1769, &mut x1770, x9, (arg1[8])); + let mut x1771: u32 = 0; + let mut x1772: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1771, &mut x1772, x9, (arg1[7])); + let mut x1773: u32 = 0; + let mut x1774: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1773, &mut x1774, x9, (arg1[6])); + let mut x1775: u32 = 0; + let mut x1776: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1775, &mut x1776, x9, (arg1[5])); + let mut x1777: u32 = 0; + let mut x1778: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1777, &mut x1778, x9, (arg1[4])); + let mut x1779: u32 = 0; + let mut x1780: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1779, &mut x1780, x9, (arg1[3])); + let mut x1781: u32 = 0; + let mut x1782: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1781, &mut x1782, x9, (arg1[2])); + let mut x1783: u32 = 0; + let mut x1784: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1783, &mut x1784, x9, (arg1[1])); + let mut x1785: u32 = 0; + let mut x1786: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1785, &mut x1786, x9, (arg1[0])); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1787, &mut x1788, 0x0, x1786, x1783); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1784, x1781); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1782, x1779); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1780, x1777); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1778, x1775); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1776, x1773); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1774, x1771); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1772, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1770, x1767); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1768, x1765); + let mut x1807: u32 = 0; + let mut x1808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1807, &mut x1808, x1806, x1766, x1763); + let mut x1809: u32 = 0; + let mut x1810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1809, &mut x1810, x1808, x1764, x1761); + let mut x1811: u32 = 0; + let mut x1812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1811, &mut x1812, x1810, x1762, x1759); + let mut x1813: u32 = 0; + let mut x1814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1813, &mut x1814, x1812, x1760, x1757); + let mut x1815: u32 = 0; + let mut x1816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1815, &mut x1816, x1814, x1758, x1755); + let x1817: u32 = ((x1816 as u32) + x1756); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1818, &mut x1819, 0x0, x1722, x1785); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1724, x1787); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1726, x1789); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1728, x1791); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1730, x1793); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1732, x1795); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1830, &mut x1831, x1829, x1734, x1797); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1736, x1799); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1738, x1801); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1740, x1803); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1742, x1805); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1744, x1807); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1746, x1809); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1748, x1811); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1750, x1813); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1752, x1815); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1754, x1817); + let mut x1852: u32 = 0; + let mut x1853: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1852, &mut x1853, x1818, 0xf1b7027); + let mut x1854: u32 = 0; + let mut x1855: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1854, &mut x1855, x1852, 0xaadd9db8); + let mut x1856: u32 = 0; + let mut x1857: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1856, &mut x1857, x1852, 0xdbe9c48b); + let mut x1858: u32 = 0; + let mut x1859: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1858, &mut x1859, x1852, 0x3fd4e6ae); + let mut x1860: u32 = 0; + let mut x1861: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1860, &mut x1861, x1852, 0x33c9fc07); + let mut x1862: u32 = 0; + let mut x1863: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1862, &mut x1863, x1852, 0xcb308db3); + let mut x1864: u32 = 0; + let mut x1865: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1864, &mut x1865, x1852, 0xb3c9d20e); + let mut x1866: u32 = 0; + let mut x1867: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1866, &mut x1867, x1852, 0xd6639cca); + let mut x1868: u32 = 0; + let mut x1869: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1868, &mut x1869, x1852, 0x70330870); + let mut x1870: u32 = 0; + let mut x1871: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1870, &mut x1871, x1852, 0x553e5c41); + let mut x1872: u32 = 0; + let mut x1873: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1872, &mut x1873, x1852, 0x4ca92619); + let mut x1874: u32 = 0; + let mut x1875: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1874, &mut x1875, x1852, 0x41866119); + let mut x1876: u32 = 0; + let mut x1877: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1876, &mut x1877, x1852, 0x7fac1047); + let mut x1878: u32 = 0; + let mut x1879: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1878, &mut x1879, x1852, 0x1db1d381); + let mut x1880: u32 = 0; + let mut x1881: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1880, &mut x1881, x1852, 0x85ddadd); + let mut x1882: u32 = 0; + let mut x1883: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1882, &mut x1883, x1852, 0xb5879682); + let mut x1884: u32 = 0; + let mut x1885: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1884, &mut x1885, x1852, 0x9ca90069); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1886, &mut x1887, 0x0, x1885, x1882); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1883, x1880); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1881, x1878); + let mut x1892: u32 = 0; + let mut x1893: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1892, &mut x1893, x1891, x1879, x1876); + let mut x1894: u32 = 0; + let mut x1895: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1894, &mut x1895, x1893, x1877, x1874); + let mut x1896: u32 = 0; + let mut x1897: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1896, &mut x1897, x1895, x1875, x1872); + let mut x1898: u32 = 0; + let mut x1899: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1898, &mut x1899, x1897, x1873, x1870); + let mut x1900: u32 = 0; + let mut x1901: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1900, &mut x1901, x1899, x1871, x1868); + let mut x1902: u32 = 0; + let mut x1903: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1902, &mut x1903, x1901, x1869, x1866); + let mut x1904: u32 = 0; + let mut x1905: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1904, &mut x1905, x1903, x1867, x1864); + let mut x1906: u32 = 0; + let mut x1907: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1906, &mut x1907, x1905, x1865, x1862); + let mut x1908: u32 = 0; + let mut x1909: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1908, &mut x1909, x1907, x1863, x1860); + let mut x1910: u32 = 0; + let mut x1911: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1910, &mut x1911, x1909, x1861, x1858); + let mut x1912: u32 = 0; + let mut x1913: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1912, &mut x1913, x1911, x1859, x1856); + let mut x1914: u32 = 0; + let mut x1915: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1914, &mut x1915, x1913, x1857, x1854); + let x1916: u32 = ((x1915 as u32) + x1855); + let mut x1917: u32 = 0; + let mut x1918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1917, &mut x1918, 0x0, x1818, x1884); + let mut x1919: u32 = 0; + let mut x1920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1919, &mut x1920, x1918, x1820, x1886); + let mut x1921: u32 = 0; + let mut x1922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1921, &mut x1922, x1920, x1822, x1888); + let mut x1923: u32 = 0; + let mut x1924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1923, &mut x1924, x1922, x1824, x1890); + let mut x1925: u32 = 0; + let mut x1926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1925, &mut x1926, x1924, x1826, x1892); + let mut x1927: u32 = 0; + let mut x1928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1927, &mut x1928, x1926, x1828, x1894); + let mut x1929: u32 = 0; + let mut x1930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1929, &mut x1930, x1928, x1830, x1896); + let mut x1931: u32 = 0; + let mut x1932: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1931, &mut x1932, x1930, x1832, x1898); + let mut x1933: u32 = 0; + let mut x1934: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1933, &mut x1934, x1932, x1834, x1900); + let mut x1935: u32 = 0; + let mut x1936: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1935, &mut x1936, x1934, x1836, x1902); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1937, &mut x1938, x1936, x1838, x1904); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1840, x1906); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1842, x1908); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1844, x1910); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1846, x1912); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1848, x1914); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1850, x1916); + let x1951: u32 = ((x1950 as u32) + (x1851 as u32)); + let mut x1952: u32 = 0; + let mut x1953: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1952, &mut x1953, x10, (arg1[15])); + let mut x1954: u32 = 0; + let mut x1955: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1954, &mut x1955, x10, (arg1[14])); + let mut x1956: u32 = 0; + let mut x1957: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1956, &mut x1957, x10, (arg1[13])); + let mut x1958: u32 = 0; + let mut x1959: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1958, &mut x1959, x10, (arg1[12])); + let mut x1960: u32 = 0; + let mut x1961: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1960, &mut x1961, x10, (arg1[11])); + let mut x1962: u32 = 0; + let mut x1963: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1962, &mut x1963, x10, (arg1[10])); + let mut x1964: u32 = 0; + let mut x1965: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1964, &mut x1965, x10, (arg1[9])); + let mut x1966: u32 = 0; + let mut x1967: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1966, &mut x1967, x10, (arg1[8])); + let mut x1968: u32 = 0; + let mut x1969: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1968, &mut x1969, x10, (arg1[7])); + let mut x1970: u32 = 0; + let mut x1971: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1970, &mut x1971, x10, (arg1[6])); + let mut x1972: u32 = 0; + let mut x1973: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1972, &mut x1973, x10, (arg1[5])); + let mut x1974: u32 = 0; + let mut x1975: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1974, &mut x1975, x10, (arg1[4])); + let mut x1976: u32 = 0; + let mut x1977: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1976, &mut x1977, x10, (arg1[3])); + let mut x1978: u32 = 0; + let mut x1979: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1978, &mut x1979, x10, (arg1[2])); + let mut x1980: u32 = 0; + let mut x1981: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1980, &mut x1981, x10, (arg1[1])); + let mut x1982: u32 = 0; + let mut x1983: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1982, &mut x1983, x10, (arg1[0])); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1984, &mut x1985, 0x0, x1983, x1980); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1986, &mut x1987, x1985, x1981, x1978); + let mut x1988: u32 = 0; + let mut x1989: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1988, &mut x1989, x1987, x1979, x1976); + let mut x1990: u32 = 0; + let mut x1991: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1990, &mut x1991, x1989, x1977, x1974); + let mut x1992: u32 = 0; + let mut x1993: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1992, &mut x1993, x1991, x1975, x1972); + let mut x1994: u32 = 0; + let mut x1995: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1994, &mut x1995, x1993, x1973, x1970); + let mut x1996: u32 = 0; + let mut x1997: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1996, &mut x1997, x1995, x1971, x1968); + let mut x1998: u32 = 0; + let mut x1999: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1998, &mut x1999, x1997, x1969, x1966); + let mut x2000: u32 = 0; + let mut x2001: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2000, &mut x2001, x1999, x1967, x1964); + let mut x2002: u32 = 0; + let mut x2003: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2002, &mut x2003, x2001, x1965, x1962); + let mut x2004: u32 = 0; + let mut x2005: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2004, &mut x2005, x2003, x1963, x1960); + let mut x2006: u32 = 0; + let mut x2007: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2006, &mut x2007, x2005, x1961, x1958); + let mut x2008: u32 = 0; + let mut x2009: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2008, &mut x2009, x2007, x1959, x1956); + let mut x2010: u32 = 0; + let mut x2011: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2010, &mut x2011, x2009, x1957, x1954); + let mut x2012: u32 = 0; + let mut x2013: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2012, &mut x2013, x2011, x1955, x1952); + let x2014: u32 = ((x2013 as u32) + x1953); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2015, &mut x2016, 0x0, x1919, x1982); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2017, &mut x2018, x2016, x1921, x1984); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2019, &mut x2020, x2018, x1923, x1986); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2021, &mut x2022, x2020, x1925, x1988); + let mut x2023: u32 = 0; + let mut x2024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2023, &mut x2024, x2022, x1927, x1990); + let mut x2025: u32 = 0; + let mut x2026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2025, &mut x2026, x2024, x1929, x1992); + let mut x2027: u32 = 0; + let mut x2028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2027, &mut x2028, x2026, x1931, x1994); + let mut x2029: u32 = 0; + let mut x2030: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2029, &mut x2030, x2028, x1933, x1996); + let mut x2031: u32 = 0; + let mut x2032: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2031, &mut x2032, x2030, x1935, x1998); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2033, &mut x2034, x2032, x1937, x2000); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2035, &mut x2036, x2034, x1939, x2002); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2037, &mut x2038, x2036, x1941, x2004); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2039, &mut x2040, x2038, x1943, x2006); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2041, &mut x2042, x2040, x1945, x2008); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2043, &mut x2044, x2042, x1947, x2010); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2045, &mut x2046, x2044, x1949, x2012); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2047, &mut x2048, x2046, x1951, x2014); + let mut x2049: u32 = 0; + let mut x2050: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2049, &mut x2050, x2015, 0xf1b7027); + let mut x2051: u32 = 0; + let mut x2052: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2051, &mut x2052, x2049, 0xaadd9db8); + let mut x2053: u32 = 0; + let mut x2054: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2053, &mut x2054, x2049, 0xdbe9c48b); + let mut x2055: u32 = 0; + let mut x2056: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2055, &mut x2056, x2049, 0x3fd4e6ae); + let mut x2057: u32 = 0; + let mut x2058: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2057, &mut x2058, x2049, 0x33c9fc07); + let mut x2059: u32 = 0; + let mut x2060: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2059, &mut x2060, x2049, 0xcb308db3); + let mut x2061: u32 = 0; + let mut x2062: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2061, &mut x2062, x2049, 0xb3c9d20e); + let mut x2063: u32 = 0; + let mut x2064: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2063, &mut x2064, x2049, 0xd6639cca); + let mut x2065: u32 = 0; + let mut x2066: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2065, &mut x2066, x2049, 0x70330870); + let mut x2067: u32 = 0; + let mut x2068: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2067, &mut x2068, x2049, 0x553e5c41); + let mut x2069: u32 = 0; + let mut x2070: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2069, &mut x2070, x2049, 0x4ca92619); + let mut x2071: u32 = 0; + let mut x2072: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2071, &mut x2072, x2049, 0x41866119); + let mut x2073: u32 = 0; + let mut x2074: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2073, &mut x2074, x2049, 0x7fac1047); + let mut x2075: u32 = 0; + let mut x2076: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2075, &mut x2076, x2049, 0x1db1d381); + let mut x2077: u32 = 0; + let mut x2078: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2077, &mut x2078, x2049, 0x85ddadd); + let mut x2079: u32 = 0; + let mut x2080: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2079, &mut x2080, x2049, 0xb5879682); + let mut x2081: u32 = 0; + let mut x2082: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2081, &mut x2082, x2049, 0x9ca90069); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2083, &mut x2084, 0x0, x2082, x2079); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2085, &mut x2086, x2084, x2080, x2077); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2087, &mut x2088, x2086, x2078, x2075); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2089, &mut x2090, x2088, x2076, x2073); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2091, &mut x2092, x2090, x2074, x2071); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2093, &mut x2094, x2092, x2072, x2069); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2095, &mut x2096, x2094, x2070, x2067); + let mut x2097: u32 = 0; + let mut x2098: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2097, &mut x2098, x2096, x2068, x2065); + let mut x2099: u32 = 0; + let mut x2100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2099, &mut x2100, x2098, x2066, x2063); + let mut x2101: u32 = 0; + let mut x2102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2101, &mut x2102, x2100, x2064, x2061); + let mut x2103: u32 = 0; + let mut x2104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2103, &mut x2104, x2102, x2062, x2059); + let mut x2105: u32 = 0; + let mut x2106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2105, &mut x2106, x2104, x2060, x2057); + let mut x2107: u32 = 0; + let mut x2108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2107, &mut x2108, x2106, x2058, x2055); + let mut x2109: u32 = 0; + let mut x2110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2109, &mut x2110, x2108, x2056, x2053); + let mut x2111: u32 = 0; + let mut x2112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2111, &mut x2112, x2110, x2054, x2051); + let x2113: u32 = ((x2112 as u32) + x2052); + let mut x2114: u32 = 0; + let mut x2115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2114, &mut x2115, 0x0, x2015, x2081); + let mut x2116: u32 = 0; + let mut x2117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2116, &mut x2117, x2115, x2017, x2083); + let mut x2118: u32 = 0; + let mut x2119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2118, &mut x2119, x2117, x2019, x2085); + let mut x2120: u32 = 0; + let mut x2121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2120, &mut x2121, x2119, x2021, x2087); + let mut x2122: u32 = 0; + let mut x2123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2122, &mut x2123, x2121, x2023, x2089); + let mut x2124: u32 = 0; + let mut x2125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2124, &mut x2125, x2123, x2025, x2091); + let mut x2126: u32 = 0; + let mut x2127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2126, &mut x2127, x2125, x2027, x2093); + let mut x2128: u32 = 0; + let mut x2129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2128, &mut x2129, x2127, x2029, x2095); + let mut x2130: u32 = 0; + let mut x2131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2130, &mut x2131, x2129, x2031, x2097); + let mut x2132: u32 = 0; + let mut x2133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2132, &mut x2133, x2131, x2033, x2099); + let mut x2134: u32 = 0; + let mut x2135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2134, &mut x2135, x2133, x2035, x2101); + let mut x2136: u32 = 0; + let mut x2137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2136, &mut x2137, x2135, x2037, x2103); + let mut x2138: u32 = 0; + let mut x2139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2138, &mut x2139, x2137, x2039, x2105); + let mut x2140: u32 = 0; + let mut x2141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2140, &mut x2141, x2139, x2041, x2107); + let mut x2142: u32 = 0; + let mut x2143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2142, &mut x2143, x2141, x2043, x2109); + let mut x2144: u32 = 0; + let mut x2145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2144, &mut x2145, x2143, x2045, x2111); + let mut x2146: u32 = 0; + let mut x2147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2146, &mut x2147, x2145, x2047, x2113); + let x2148: u32 = ((x2147 as u32) + (x2048 as u32)); + let mut x2149: u32 = 0; + let mut x2150: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2149, &mut x2150, x11, (arg1[15])); + let mut x2151: u32 = 0; + let mut x2152: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2151, &mut x2152, x11, (arg1[14])); + let mut x2153: u32 = 0; + let mut x2154: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2153, &mut x2154, x11, (arg1[13])); + let mut x2155: u32 = 0; + let mut x2156: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2155, &mut x2156, x11, (arg1[12])); + let mut x2157: u32 = 0; + let mut x2158: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2157, &mut x2158, x11, (arg1[11])); + let mut x2159: u32 = 0; + let mut x2160: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2159, &mut x2160, x11, (arg1[10])); + let mut x2161: u32 = 0; + let mut x2162: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2161, &mut x2162, x11, (arg1[9])); + let mut x2163: u32 = 0; + let mut x2164: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2163, &mut x2164, x11, (arg1[8])); + let mut x2165: u32 = 0; + let mut x2166: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2165, &mut x2166, x11, (arg1[7])); + let mut x2167: u32 = 0; + let mut x2168: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2167, &mut x2168, x11, (arg1[6])); + let mut x2169: u32 = 0; + let mut x2170: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2169, &mut x2170, x11, (arg1[5])); + let mut x2171: u32 = 0; + let mut x2172: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2171, &mut x2172, x11, (arg1[4])); + let mut x2173: u32 = 0; + let mut x2174: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2173, &mut x2174, x11, (arg1[3])); + let mut x2175: u32 = 0; + let mut x2176: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2175, &mut x2176, x11, (arg1[2])); + let mut x2177: u32 = 0; + let mut x2178: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2177, &mut x2178, x11, (arg1[1])); + let mut x2179: u32 = 0; + let mut x2180: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2179, &mut x2180, x11, (arg1[0])); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2181, &mut x2182, 0x0, x2180, x2177); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2178, x2175); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2176, x2173); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2174, x2171); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2172, x2169); + let mut x2191: u32 = 0; + let mut x2192: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2191, &mut x2192, x2190, x2170, x2167); + let mut x2193: u32 = 0; + let mut x2194: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2193, &mut x2194, x2192, x2168, x2165); + let mut x2195: u32 = 0; + let mut x2196: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2195, &mut x2196, x2194, x2166, x2163); + let mut x2197: u32 = 0; + let mut x2198: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2197, &mut x2198, x2196, x2164, x2161); + let mut x2199: u32 = 0; + let mut x2200: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2199, &mut x2200, x2198, x2162, x2159); + let mut x2201: u32 = 0; + let mut x2202: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2201, &mut x2202, x2200, x2160, x2157); + let mut x2203: u32 = 0; + let mut x2204: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2203, &mut x2204, x2202, x2158, x2155); + let mut x2205: u32 = 0; + let mut x2206: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2205, &mut x2206, x2204, x2156, x2153); + let mut x2207: u32 = 0; + let mut x2208: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2207, &mut x2208, x2206, x2154, x2151); + let mut x2209: u32 = 0; + let mut x2210: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2209, &mut x2210, x2208, x2152, x2149); + let x2211: u32 = ((x2210 as u32) + x2150); + let mut x2212: u32 = 0; + let mut x2213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2212, &mut x2213, 0x0, x2116, x2179); + let mut x2214: u32 = 0; + let mut x2215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2214, &mut x2215, x2213, x2118, x2181); + let mut x2216: u32 = 0; + let mut x2217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2216, &mut x2217, x2215, x2120, x2183); + let mut x2218: u32 = 0; + let mut x2219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2218, &mut x2219, x2217, x2122, x2185); + let mut x2220: u32 = 0; + let mut x2221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2220, &mut x2221, x2219, x2124, x2187); + let mut x2222: u32 = 0; + let mut x2223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2222, &mut x2223, x2221, x2126, x2189); + let mut x2224: u32 = 0; + let mut x2225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2224, &mut x2225, x2223, x2128, x2191); + let mut x2226: u32 = 0; + let mut x2227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2226, &mut x2227, x2225, x2130, x2193); + let mut x2228: u32 = 0; + let mut x2229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2228, &mut x2229, x2227, x2132, x2195); + let mut x2230: u32 = 0; + let mut x2231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2230, &mut x2231, x2229, x2134, x2197); + let mut x2232: u32 = 0; + let mut x2233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2232, &mut x2233, x2231, x2136, x2199); + let mut x2234: u32 = 0; + let mut x2235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2234, &mut x2235, x2233, x2138, x2201); + let mut x2236: u32 = 0; + let mut x2237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2236, &mut x2237, x2235, x2140, x2203); + let mut x2238: u32 = 0; + let mut x2239: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2238, &mut x2239, x2237, x2142, x2205); + let mut x2240: u32 = 0; + let mut x2241: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2240, &mut x2241, x2239, x2144, x2207); + let mut x2242: u32 = 0; + let mut x2243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2242, &mut x2243, x2241, x2146, x2209); + let mut x2244: u32 = 0; + let mut x2245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2244, &mut x2245, x2243, x2148, x2211); + let mut x2246: u32 = 0; + let mut x2247: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2246, &mut x2247, x2212, 0xf1b7027); + let mut x2248: u32 = 0; + let mut x2249: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2248, &mut x2249, x2246, 0xaadd9db8); + let mut x2250: u32 = 0; + let mut x2251: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2250, &mut x2251, x2246, 0xdbe9c48b); + let mut x2252: u32 = 0; + let mut x2253: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2252, &mut x2253, x2246, 0x3fd4e6ae); + let mut x2254: u32 = 0; + let mut x2255: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2254, &mut x2255, x2246, 0x33c9fc07); + let mut x2256: u32 = 0; + let mut x2257: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2256, &mut x2257, x2246, 0xcb308db3); + let mut x2258: u32 = 0; + let mut x2259: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2258, &mut x2259, x2246, 0xb3c9d20e); + let mut x2260: u32 = 0; + let mut x2261: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2260, &mut x2261, x2246, 0xd6639cca); + let mut x2262: u32 = 0; + let mut x2263: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2262, &mut x2263, x2246, 0x70330870); + let mut x2264: u32 = 0; + let mut x2265: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2264, &mut x2265, x2246, 0x553e5c41); + let mut x2266: u32 = 0; + let mut x2267: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2266, &mut x2267, x2246, 0x4ca92619); + let mut x2268: u32 = 0; + let mut x2269: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2268, &mut x2269, x2246, 0x41866119); + let mut x2270: u32 = 0; + let mut x2271: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2270, &mut x2271, x2246, 0x7fac1047); + let mut x2272: u32 = 0; + let mut x2273: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2272, &mut x2273, x2246, 0x1db1d381); + let mut x2274: u32 = 0; + let mut x2275: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2274, &mut x2275, x2246, 0x85ddadd); + let mut x2276: u32 = 0; + let mut x2277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2276, &mut x2277, x2246, 0xb5879682); + let mut x2278: u32 = 0; + let mut x2279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2278, &mut x2279, x2246, 0x9ca90069); + let mut x2280: u32 = 0; + let mut x2281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2280, &mut x2281, 0x0, x2279, x2276); + let mut x2282: u32 = 0; + let mut x2283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2282, &mut x2283, x2281, x2277, x2274); + let mut x2284: u32 = 0; + let mut x2285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2284, &mut x2285, x2283, x2275, x2272); + let mut x2286: u32 = 0; + let mut x2287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2286, &mut x2287, x2285, x2273, x2270); + let mut x2288: u32 = 0; + let mut x2289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2288, &mut x2289, x2287, x2271, x2268); + let mut x2290: u32 = 0; + let mut x2291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2290, &mut x2291, x2289, x2269, x2266); + let mut x2292: u32 = 0; + let mut x2293: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2292, &mut x2293, x2291, x2267, x2264); + let mut x2294: u32 = 0; + let mut x2295: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2294, &mut x2295, x2293, x2265, x2262); + let mut x2296: u32 = 0; + let mut x2297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2296, &mut x2297, x2295, x2263, x2260); + let mut x2298: u32 = 0; + let mut x2299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2298, &mut x2299, x2297, x2261, x2258); + let mut x2300: u32 = 0; + let mut x2301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2300, &mut x2301, x2299, x2259, x2256); + let mut x2302: u32 = 0; + let mut x2303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2302, &mut x2303, x2301, x2257, x2254); + let mut x2304: u32 = 0; + let mut x2305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2304, &mut x2305, x2303, x2255, x2252); + let mut x2306: u32 = 0; + let mut x2307: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2306, &mut x2307, x2305, x2253, x2250); + let mut x2308: u32 = 0; + let mut x2309: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2308, &mut x2309, x2307, x2251, x2248); + let x2310: u32 = ((x2309 as u32) + x2249); + let mut x2311: u32 = 0; + let mut x2312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2311, &mut x2312, 0x0, x2212, x2278); + let mut x2313: u32 = 0; + let mut x2314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2313, &mut x2314, x2312, x2214, x2280); + let mut x2315: u32 = 0; + let mut x2316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2315, &mut x2316, x2314, x2216, x2282); + let mut x2317: u32 = 0; + let mut x2318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2317, &mut x2318, x2316, x2218, x2284); + let mut x2319: u32 = 0; + let mut x2320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2319, &mut x2320, x2318, x2220, x2286); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2321, &mut x2322, x2320, x2222, x2288); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2224, x2290); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2226, x2292); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2228, x2294); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2230, x2296); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2232, x2298); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2234, x2300); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2236, x2302); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2238, x2304); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2240, x2306); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2242, x2308); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2244, x2310); + let x2345: u32 = ((x2344 as u32) + (x2245 as u32)); + let mut x2346: u32 = 0; + let mut x2347: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2346, &mut x2347, x12, (arg1[15])); + let mut x2348: u32 = 0; + let mut x2349: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2348, &mut x2349, x12, (arg1[14])); + let mut x2350: u32 = 0; + let mut x2351: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2350, &mut x2351, x12, (arg1[13])); + let mut x2352: u32 = 0; + let mut x2353: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2352, &mut x2353, x12, (arg1[12])); + let mut x2354: u32 = 0; + let mut x2355: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2354, &mut x2355, x12, (arg1[11])); + let mut x2356: u32 = 0; + let mut x2357: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2356, &mut x2357, x12, (arg1[10])); + let mut x2358: u32 = 0; + let mut x2359: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2358, &mut x2359, x12, (arg1[9])); + let mut x2360: u32 = 0; + let mut x2361: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2360, &mut x2361, x12, (arg1[8])); + let mut x2362: u32 = 0; + let mut x2363: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2362, &mut x2363, x12, (arg1[7])); + let mut x2364: u32 = 0; + let mut x2365: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2364, &mut x2365, x12, (arg1[6])); + let mut x2366: u32 = 0; + let mut x2367: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2366, &mut x2367, x12, (arg1[5])); + let mut x2368: u32 = 0; + let mut x2369: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2368, &mut x2369, x12, (arg1[4])); + let mut x2370: u32 = 0; + let mut x2371: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2370, &mut x2371, x12, (arg1[3])); + let mut x2372: u32 = 0; + let mut x2373: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2372, &mut x2373, x12, (arg1[2])); + let mut x2374: u32 = 0; + let mut x2375: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2374, &mut x2375, x12, (arg1[1])); + let mut x2376: u32 = 0; + let mut x2377: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2376, &mut x2377, x12, (arg1[0])); + let mut x2378: u32 = 0; + let mut x2379: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2378, &mut x2379, 0x0, x2377, x2374); + let mut x2380: u32 = 0; + let mut x2381: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2380, &mut x2381, x2379, x2375, x2372); + let mut x2382: u32 = 0; + let mut x2383: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2382, &mut x2383, x2381, x2373, x2370); + let mut x2384: u32 = 0; + let mut x2385: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2384, &mut x2385, x2383, x2371, x2368); + let mut x2386: u32 = 0; + let mut x2387: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2386, &mut x2387, x2385, x2369, x2366); + let mut x2388: u32 = 0; + let mut x2389: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2388, &mut x2389, x2387, x2367, x2364); + let mut x2390: u32 = 0; + let mut x2391: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2390, &mut x2391, x2389, x2365, x2362); + let mut x2392: u32 = 0; + let mut x2393: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2392, &mut x2393, x2391, x2363, x2360); + let mut x2394: u32 = 0; + let mut x2395: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2394, &mut x2395, x2393, x2361, x2358); + let mut x2396: u32 = 0; + let mut x2397: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2396, &mut x2397, x2395, x2359, x2356); + let mut x2398: u32 = 0; + let mut x2399: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2398, &mut x2399, x2397, x2357, x2354); + let mut x2400: u32 = 0; + let mut x2401: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2400, &mut x2401, x2399, x2355, x2352); + let mut x2402: u32 = 0; + let mut x2403: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2402, &mut x2403, x2401, x2353, x2350); + let mut x2404: u32 = 0; + let mut x2405: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2404, &mut x2405, x2403, x2351, x2348); + let mut x2406: u32 = 0; + let mut x2407: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2406, &mut x2407, x2405, x2349, x2346); + let x2408: u32 = ((x2407 as u32) + x2347); + let mut x2409: u32 = 0; + let mut x2410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2409, &mut x2410, 0x0, x2313, x2376); + let mut x2411: u32 = 0; + let mut x2412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2411, &mut x2412, x2410, x2315, x2378); + let mut x2413: u32 = 0; + let mut x2414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2413, &mut x2414, x2412, x2317, x2380); + let mut x2415: u32 = 0; + let mut x2416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2415, &mut x2416, x2414, x2319, x2382); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2417, &mut x2418, x2416, x2321, x2384); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2323, x2386); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2325, x2388); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2327, x2390); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2329, x2392); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2331, x2394); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2333, x2396); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2335, x2398); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2337, x2400); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2339, x2402); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2341, x2404); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2343, x2406); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2345, x2408); + let mut x2443: u32 = 0; + let mut x2444: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2443, &mut x2444, x2409, 0xf1b7027); + let mut x2445: u32 = 0; + let mut x2446: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2445, &mut x2446, x2443, 0xaadd9db8); + let mut x2447: u32 = 0; + let mut x2448: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2447, &mut x2448, x2443, 0xdbe9c48b); + let mut x2449: u32 = 0; + let mut x2450: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2449, &mut x2450, x2443, 0x3fd4e6ae); + let mut x2451: u32 = 0; + let mut x2452: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2451, &mut x2452, x2443, 0x33c9fc07); + let mut x2453: u32 = 0; + let mut x2454: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2453, &mut x2454, x2443, 0xcb308db3); + let mut x2455: u32 = 0; + let mut x2456: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2455, &mut x2456, x2443, 0xb3c9d20e); + let mut x2457: u32 = 0; + let mut x2458: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2457, &mut x2458, x2443, 0xd6639cca); + let mut x2459: u32 = 0; + let mut x2460: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2459, &mut x2460, x2443, 0x70330870); + let mut x2461: u32 = 0; + let mut x2462: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2461, &mut x2462, x2443, 0x553e5c41); + let mut x2463: u32 = 0; + let mut x2464: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2463, &mut x2464, x2443, 0x4ca92619); + let mut x2465: u32 = 0; + let mut x2466: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2465, &mut x2466, x2443, 0x41866119); + let mut x2467: u32 = 0; + let mut x2468: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2467, &mut x2468, x2443, 0x7fac1047); + let mut x2469: u32 = 0; + let mut x2470: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2469, &mut x2470, x2443, 0x1db1d381); + let mut x2471: u32 = 0; + let mut x2472: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2471, &mut x2472, x2443, 0x85ddadd); + let mut x2473: u32 = 0; + let mut x2474: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2473, &mut x2474, x2443, 0xb5879682); + let mut x2475: u32 = 0; + let mut x2476: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2475, &mut x2476, x2443, 0x9ca90069); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2477, &mut x2478, 0x0, x2476, x2473); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2479, &mut x2480, x2478, x2474, x2471); + let mut x2481: u32 = 0; + let mut x2482: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2481, &mut x2482, x2480, x2472, x2469); + let mut x2483: u32 = 0; + let mut x2484: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2483, &mut x2484, x2482, x2470, x2467); + let mut x2485: u32 = 0; + let mut x2486: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2485, &mut x2486, x2484, x2468, x2465); + let mut x2487: u32 = 0; + let mut x2488: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2487, &mut x2488, x2486, x2466, x2463); + let mut x2489: u32 = 0; + let mut x2490: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2489, &mut x2490, x2488, x2464, x2461); + let mut x2491: u32 = 0; + let mut x2492: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2491, &mut x2492, x2490, x2462, x2459); + let mut x2493: u32 = 0; + let mut x2494: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2493, &mut x2494, x2492, x2460, x2457); + let mut x2495: u32 = 0; + let mut x2496: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2495, &mut x2496, x2494, x2458, x2455); + let mut x2497: u32 = 0; + let mut x2498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2497, &mut x2498, x2496, x2456, x2453); + let mut x2499: u32 = 0; + let mut x2500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2499, &mut x2500, x2498, x2454, x2451); + let mut x2501: u32 = 0; + let mut x2502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2501, &mut x2502, x2500, x2452, x2449); + let mut x2503: u32 = 0; + let mut x2504: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2503, &mut x2504, x2502, x2450, x2447); + let mut x2505: u32 = 0; + let mut x2506: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2505, &mut x2506, x2504, x2448, x2445); + let x2507: u32 = ((x2506 as u32) + x2446); + let mut x2508: u32 = 0; + let mut x2509: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2508, &mut x2509, 0x0, x2409, x2475); + let mut x2510: u32 = 0; + let mut x2511: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2510, &mut x2511, x2509, x2411, x2477); + let mut x2512: u32 = 0; + let mut x2513: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2512, &mut x2513, x2511, x2413, x2479); + let mut x2514: u32 = 0; + let mut x2515: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2514, &mut x2515, x2513, x2415, x2481); + let mut x2516: u32 = 0; + let mut x2517: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2516, &mut x2517, x2515, x2417, x2483); + let mut x2518: u32 = 0; + let mut x2519: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2518, &mut x2519, x2517, x2419, x2485); + let mut x2520: u32 = 0; + let mut x2521: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2520, &mut x2521, x2519, x2421, x2487); + let mut x2522: u32 = 0; + let mut x2523: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2522, &mut x2523, x2521, x2423, x2489); + let mut x2524: u32 = 0; + let mut x2525: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2524, &mut x2525, x2523, x2425, x2491); + let mut x2526: u32 = 0; + let mut x2527: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2526, &mut x2527, x2525, x2427, x2493); + let mut x2528: u32 = 0; + let mut x2529: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2528, &mut x2529, x2527, x2429, x2495); + let mut x2530: u32 = 0; + let mut x2531: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2530, &mut x2531, x2529, x2431, x2497); + let mut x2532: u32 = 0; + let mut x2533: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2532, &mut x2533, x2531, x2433, x2499); + let mut x2534: u32 = 0; + let mut x2535: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2534, &mut x2535, x2533, x2435, x2501); + let mut x2536: u32 = 0; + let mut x2537: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2536, &mut x2537, x2535, x2437, x2503); + let mut x2538: u32 = 0; + let mut x2539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2538, &mut x2539, x2537, x2439, x2505); + let mut x2540: u32 = 0; + let mut x2541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2540, &mut x2541, x2539, x2441, x2507); + let x2542: u32 = ((x2541 as u32) + (x2442 as u32)); + let mut x2543: u32 = 0; + let mut x2544: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2543, &mut x2544, x13, (arg1[15])); + let mut x2545: u32 = 0; + let mut x2546: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2545, &mut x2546, x13, (arg1[14])); + let mut x2547: u32 = 0; + let mut x2548: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2547, &mut x2548, x13, (arg1[13])); + let mut x2549: u32 = 0; + let mut x2550: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2549, &mut x2550, x13, (arg1[12])); + let mut x2551: u32 = 0; + let mut x2552: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2551, &mut x2552, x13, (arg1[11])); + let mut x2553: u32 = 0; + let mut x2554: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2553, &mut x2554, x13, (arg1[10])); + let mut x2555: u32 = 0; + let mut x2556: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2555, &mut x2556, x13, (arg1[9])); + let mut x2557: u32 = 0; + let mut x2558: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2557, &mut x2558, x13, (arg1[8])); + let mut x2559: u32 = 0; + let mut x2560: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2559, &mut x2560, x13, (arg1[7])); + let mut x2561: u32 = 0; + let mut x2562: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2561, &mut x2562, x13, (arg1[6])); + let mut x2563: u32 = 0; + let mut x2564: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2563, &mut x2564, x13, (arg1[5])); + let mut x2565: u32 = 0; + let mut x2566: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2565, &mut x2566, x13, (arg1[4])); + let mut x2567: u32 = 0; + let mut x2568: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2567, &mut x2568, x13, (arg1[3])); + let mut x2569: u32 = 0; + let mut x2570: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2569, &mut x2570, x13, (arg1[2])); + let mut x2571: u32 = 0; + let mut x2572: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2571, &mut x2572, x13, (arg1[1])); + let mut x2573: u32 = 0; + let mut x2574: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2573, &mut x2574, x13, (arg1[0])); + let mut x2575: u32 = 0; + let mut x2576: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2575, &mut x2576, 0x0, x2574, x2571); + let mut x2577: u32 = 0; + let mut x2578: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2577, &mut x2578, x2576, x2572, x2569); + let mut x2579: u32 = 0; + let mut x2580: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2579, &mut x2580, x2578, x2570, x2567); + let mut x2581: u32 = 0; + let mut x2582: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2581, &mut x2582, x2580, x2568, x2565); + let mut x2583: u32 = 0; + let mut x2584: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2583, &mut x2584, x2582, x2566, x2563); + let mut x2585: u32 = 0; + let mut x2586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2585, &mut x2586, x2584, x2564, x2561); + let mut x2587: u32 = 0; + let mut x2588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2587, &mut x2588, x2586, x2562, x2559); + let mut x2589: u32 = 0; + let mut x2590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2589, &mut x2590, x2588, x2560, x2557); + let mut x2591: u32 = 0; + let mut x2592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2591, &mut x2592, x2590, x2558, x2555); + let mut x2593: u32 = 0; + let mut x2594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2593, &mut x2594, x2592, x2556, x2553); + let mut x2595: u32 = 0; + let mut x2596: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2595, &mut x2596, x2594, x2554, x2551); + let mut x2597: u32 = 0; + let mut x2598: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2597, &mut x2598, x2596, x2552, x2549); + let mut x2599: u32 = 0; + let mut x2600: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2599, &mut x2600, x2598, x2550, x2547); + let mut x2601: u32 = 0; + let mut x2602: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2601, &mut x2602, x2600, x2548, x2545); + let mut x2603: u32 = 0; + let mut x2604: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2603, &mut x2604, x2602, x2546, x2543); + let x2605: u32 = ((x2604 as u32) + x2544); + let mut x2606: u32 = 0; + let mut x2607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2606, &mut x2607, 0x0, x2510, x2573); + let mut x2608: u32 = 0; + let mut x2609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2608, &mut x2609, x2607, x2512, x2575); + let mut x2610: u32 = 0; + let mut x2611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2610, &mut x2611, x2609, x2514, x2577); + let mut x2612: u32 = 0; + let mut x2613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2612, &mut x2613, x2611, x2516, x2579); + let mut x2614: u32 = 0; + let mut x2615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2614, &mut x2615, x2613, x2518, x2581); + let mut x2616: u32 = 0; + let mut x2617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2616, &mut x2617, x2615, x2520, x2583); + let mut x2618: u32 = 0; + let mut x2619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2618, &mut x2619, x2617, x2522, x2585); + let mut x2620: u32 = 0; + let mut x2621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2620, &mut x2621, x2619, x2524, x2587); + let mut x2622: u32 = 0; + let mut x2623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2622, &mut x2623, x2621, x2526, x2589); + let mut x2624: u32 = 0; + let mut x2625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2624, &mut x2625, x2623, x2528, x2591); + let mut x2626: u32 = 0; + let mut x2627: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2626, &mut x2627, x2625, x2530, x2593); + let mut x2628: u32 = 0; + let mut x2629: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2628, &mut x2629, x2627, x2532, x2595); + let mut x2630: u32 = 0; + let mut x2631: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2630, &mut x2631, x2629, x2534, x2597); + let mut x2632: u32 = 0; + let mut x2633: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2632, &mut x2633, x2631, x2536, x2599); + let mut x2634: u32 = 0; + let mut x2635: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2634, &mut x2635, x2633, x2538, x2601); + let mut x2636: u32 = 0; + let mut x2637: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2636, &mut x2637, x2635, x2540, x2603); + let mut x2638: u32 = 0; + let mut x2639: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2638, &mut x2639, x2637, x2542, x2605); + let mut x2640: u32 = 0; + let mut x2641: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2640, &mut x2641, x2606, 0xf1b7027); + let mut x2642: u32 = 0; + let mut x2643: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2642, &mut x2643, x2640, 0xaadd9db8); + let mut x2644: u32 = 0; + let mut x2645: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2644, &mut x2645, x2640, 0xdbe9c48b); + let mut x2646: u32 = 0; + let mut x2647: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2646, &mut x2647, x2640, 0x3fd4e6ae); + let mut x2648: u32 = 0; + let mut x2649: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2648, &mut x2649, x2640, 0x33c9fc07); + let mut x2650: u32 = 0; + let mut x2651: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2650, &mut x2651, x2640, 0xcb308db3); + let mut x2652: u32 = 0; + let mut x2653: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2652, &mut x2653, x2640, 0xb3c9d20e); + let mut x2654: u32 = 0; + let mut x2655: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2654, &mut x2655, x2640, 0xd6639cca); + let mut x2656: u32 = 0; + let mut x2657: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2656, &mut x2657, x2640, 0x70330870); + let mut x2658: u32 = 0; + let mut x2659: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2658, &mut x2659, x2640, 0x553e5c41); + let mut x2660: u32 = 0; + let mut x2661: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2660, &mut x2661, x2640, 0x4ca92619); + let mut x2662: u32 = 0; + let mut x2663: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2662, &mut x2663, x2640, 0x41866119); + let mut x2664: u32 = 0; + let mut x2665: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2664, &mut x2665, x2640, 0x7fac1047); + let mut x2666: u32 = 0; + let mut x2667: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2666, &mut x2667, x2640, 0x1db1d381); + let mut x2668: u32 = 0; + let mut x2669: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2668, &mut x2669, x2640, 0x85ddadd); + let mut x2670: u32 = 0; + let mut x2671: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2670, &mut x2671, x2640, 0xb5879682); + let mut x2672: u32 = 0; + let mut x2673: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2672, &mut x2673, x2640, 0x9ca90069); + let mut x2674: u32 = 0; + let mut x2675: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2674, &mut x2675, 0x0, x2673, x2670); + let mut x2676: u32 = 0; + let mut x2677: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2676, &mut x2677, x2675, x2671, x2668); + let mut x2678: u32 = 0; + let mut x2679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2678, &mut x2679, x2677, x2669, x2666); + let mut x2680: u32 = 0; + let mut x2681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2680, &mut x2681, x2679, x2667, x2664); + let mut x2682: u32 = 0; + let mut x2683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2682, &mut x2683, x2681, x2665, x2662); + let mut x2684: u32 = 0; + let mut x2685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2684, &mut x2685, x2683, x2663, x2660); + let mut x2686: u32 = 0; + let mut x2687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2686, &mut x2687, x2685, x2661, x2658); + let mut x2688: u32 = 0; + let mut x2689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2688, &mut x2689, x2687, x2659, x2656); + let mut x2690: u32 = 0; + let mut x2691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2690, &mut x2691, x2689, x2657, x2654); + let mut x2692: u32 = 0; + let mut x2693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2692, &mut x2693, x2691, x2655, x2652); + let mut x2694: u32 = 0; + let mut x2695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2694, &mut x2695, x2693, x2653, x2650); + let mut x2696: u32 = 0; + let mut x2697: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2696, &mut x2697, x2695, x2651, x2648); + let mut x2698: u32 = 0; + let mut x2699: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2698, &mut x2699, x2697, x2649, x2646); + let mut x2700: u32 = 0; + let mut x2701: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2700, &mut x2701, x2699, x2647, x2644); + let mut x2702: u32 = 0; + let mut x2703: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2702, &mut x2703, x2701, x2645, x2642); + let x2704: u32 = ((x2703 as u32) + x2643); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2606, x2672); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2608, x2674); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2610, x2676); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2612, x2678); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2614, x2680); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2616, x2682); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2618, x2684); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2620, x2686); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2622, x2688); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2624, x2690); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2626, x2692); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2628, x2694); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2630, x2696); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2632, x2698); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2634, x2700); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2735, &mut x2736, x2734, x2636, x2702); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2638, x2704); + let x2739: u32 = ((x2738 as u32) + (x2639 as u32)); + let mut x2740: u32 = 0; + let mut x2741: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2740, &mut x2741, x14, (arg1[15])); + let mut x2742: u32 = 0; + let mut x2743: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2742, &mut x2743, x14, (arg1[14])); + let mut x2744: u32 = 0; + let mut x2745: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2744, &mut x2745, x14, (arg1[13])); + let mut x2746: u32 = 0; + let mut x2747: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2746, &mut x2747, x14, (arg1[12])); + let mut x2748: u32 = 0; + let mut x2749: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2748, &mut x2749, x14, (arg1[11])); + let mut x2750: u32 = 0; + let mut x2751: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2750, &mut x2751, x14, (arg1[10])); + let mut x2752: u32 = 0; + let mut x2753: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2752, &mut x2753, x14, (arg1[9])); + let mut x2754: u32 = 0; + let mut x2755: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2754, &mut x2755, x14, (arg1[8])); + let mut x2756: u32 = 0; + let mut x2757: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2756, &mut x2757, x14, (arg1[7])); + let mut x2758: u32 = 0; + let mut x2759: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2758, &mut x2759, x14, (arg1[6])); + let mut x2760: u32 = 0; + let mut x2761: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2760, &mut x2761, x14, (arg1[5])); + let mut x2762: u32 = 0; + let mut x2763: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2762, &mut x2763, x14, (arg1[4])); + let mut x2764: u32 = 0; + let mut x2765: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2764, &mut x2765, x14, (arg1[3])); + let mut x2766: u32 = 0; + let mut x2767: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2766, &mut x2767, x14, (arg1[2])); + let mut x2768: u32 = 0; + let mut x2769: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2768, &mut x2769, x14, (arg1[1])); + let mut x2770: u32 = 0; + let mut x2771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2770, &mut x2771, x14, (arg1[0])); + let mut x2772: u32 = 0; + let mut x2773: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2772, &mut x2773, 0x0, x2771, x2768); + let mut x2774: u32 = 0; + let mut x2775: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2774, &mut x2775, x2773, x2769, x2766); + let mut x2776: u32 = 0; + let mut x2777: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2776, &mut x2777, x2775, x2767, x2764); + let mut x2778: u32 = 0; + let mut x2779: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2778, &mut x2779, x2777, x2765, x2762); + let mut x2780: u32 = 0; + let mut x2781: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2780, &mut x2781, x2779, x2763, x2760); + let mut x2782: u32 = 0; + let mut x2783: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2782, &mut x2783, x2781, x2761, x2758); + let mut x2784: u32 = 0; + let mut x2785: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2784, &mut x2785, x2783, x2759, x2756); + let mut x2786: u32 = 0; + let mut x2787: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2786, &mut x2787, x2785, x2757, x2754); + let mut x2788: u32 = 0; + let mut x2789: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2788, &mut x2789, x2787, x2755, x2752); + let mut x2790: u32 = 0; + let mut x2791: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2790, &mut x2791, x2789, x2753, x2750); + let mut x2792: u32 = 0; + let mut x2793: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2792, &mut x2793, x2791, x2751, x2748); + let mut x2794: u32 = 0; + let mut x2795: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2794, &mut x2795, x2793, x2749, x2746); + let mut x2796: u32 = 0; + let mut x2797: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2796, &mut x2797, x2795, x2747, x2744); + let mut x2798: u32 = 0; + let mut x2799: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2798, &mut x2799, x2797, x2745, x2742); + let mut x2800: u32 = 0; + let mut x2801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2800, &mut x2801, x2799, x2743, x2740); + let x2802: u32 = ((x2801 as u32) + x2741); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2803, &mut x2804, 0x0, x2707, x2770); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2709, x2772); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2711, x2774); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2713, x2776); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2715, x2778); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2717, x2780); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2719, x2782); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2721, x2784); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2723, x2786); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2725, x2788); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2727, x2790); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2729, x2792); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2731, x2794); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2733, x2796); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2831, &mut x2832, x2830, x2735, x2798); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2800); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2802); + let mut x2837: u32 = 0; + let mut x2838: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2837, &mut x2838, x2803, 0xf1b7027); + let mut x2839: u32 = 0; + let mut x2840: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2839, &mut x2840, x2837, 0xaadd9db8); + let mut x2841: u32 = 0; + let mut x2842: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2841, &mut x2842, x2837, 0xdbe9c48b); + let mut x2843: u32 = 0; + let mut x2844: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2843, &mut x2844, x2837, 0x3fd4e6ae); + let mut x2845: u32 = 0; + let mut x2846: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2845, &mut x2846, x2837, 0x33c9fc07); + let mut x2847: u32 = 0; + let mut x2848: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2847, &mut x2848, x2837, 0xcb308db3); + let mut x2849: u32 = 0; + let mut x2850: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2849, &mut x2850, x2837, 0xb3c9d20e); + let mut x2851: u32 = 0; + let mut x2852: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2851, &mut x2852, x2837, 0xd6639cca); + let mut x2853: u32 = 0; + let mut x2854: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2853, &mut x2854, x2837, 0x70330870); + let mut x2855: u32 = 0; + let mut x2856: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2855, &mut x2856, x2837, 0x553e5c41); + let mut x2857: u32 = 0; + let mut x2858: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2857, &mut x2858, x2837, 0x4ca92619); + let mut x2859: u32 = 0; + let mut x2860: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2859, &mut x2860, x2837, 0x41866119); + let mut x2861: u32 = 0; + let mut x2862: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2861, &mut x2862, x2837, 0x7fac1047); + let mut x2863: u32 = 0; + let mut x2864: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2863, &mut x2864, x2837, 0x1db1d381); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2865, &mut x2866, x2837, 0x85ddadd); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2867, &mut x2868, x2837, 0xb5879682); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2869, &mut x2870, x2837, 0x9ca90069); + let mut x2871: u32 = 0; + let mut x2872: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2871, &mut x2872, 0x0, x2870, x2867); + let mut x2873: u32 = 0; + let mut x2874: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2873, &mut x2874, x2872, x2868, x2865); + let mut x2875: u32 = 0; + let mut x2876: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2875, &mut x2876, x2874, x2866, x2863); + let mut x2877: u32 = 0; + let mut x2878: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2877, &mut x2878, x2876, x2864, x2861); + let mut x2879: u32 = 0; + let mut x2880: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2879, &mut x2880, x2878, x2862, x2859); + let mut x2881: u32 = 0; + let mut x2882: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2881, &mut x2882, x2880, x2860, x2857); + let mut x2883: u32 = 0; + let mut x2884: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2883, &mut x2884, x2882, x2858, x2855); + let mut x2885: u32 = 0; + let mut x2886: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2885, &mut x2886, x2884, x2856, x2853); + let mut x2887: u32 = 0; + let mut x2888: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2887, &mut x2888, x2886, x2854, x2851); + let mut x2889: u32 = 0; + let mut x2890: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2889, &mut x2890, x2888, x2852, x2849); + let mut x2891: u32 = 0; + let mut x2892: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2891, &mut x2892, x2890, x2850, x2847); + let mut x2893: u32 = 0; + let mut x2894: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2893, &mut x2894, x2892, x2848, x2845); + let mut x2895: u32 = 0; + let mut x2896: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2895, &mut x2896, x2894, x2846, x2843); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2897, &mut x2898, x2896, x2844, x2841); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2842, x2839); + let x2901: u32 = ((x2900 as u32) + x2840); + let mut x2902: u32 = 0; + let mut x2903: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2902, &mut x2903, 0x0, x2803, x2869); + let mut x2904: u32 = 0; + let mut x2905: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2904, &mut x2905, x2903, x2805, x2871); + let mut x2906: u32 = 0; + let mut x2907: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2906, &mut x2907, x2905, x2807, x2873); + let mut x2908: u32 = 0; + let mut x2909: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2908, &mut x2909, x2907, x2809, x2875); + let mut x2910: u32 = 0; + let mut x2911: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2910, &mut x2911, x2909, x2811, x2877); + let mut x2912: u32 = 0; + let mut x2913: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2912, &mut x2913, x2911, x2813, x2879); + let mut x2914: u32 = 0; + let mut x2915: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2914, &mut x2915, x2913, x2815, x2881); + let mut x2916: u32 = 0; + let mut x2917: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2916, &mut x2917, x2915, x2817, x2883); + let mut x2918: u32 = 0; + let mut x2919: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2918, &mut x2919, x2917, x2819, x2885); + let mut x2920: u32 = 0; + let mut x2921: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2920, &mut x2921, x2919, x2821, x2887); + let mut x2922: u32 = 0; + let mut x2923: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2922, &mut x2923, x2921, x2823, x2889); + let mut x2924: u32 = 0; + let mut x2925: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2924, &mut x2925, x2923, x2825, x2891); + let mut x2926: u32 = 0; + let mut x2927: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2926, &mut x2927, x2925, x2827, x2893); + let mut x2928: u32 = 0; + let mut x2929: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2928, &mut x2929, x2927, x2829, x2895); + let mut x2930: u32 = 0; + let mut x2931: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2930, &mut x2931, x2929, x2831, x2897); + let mut x2932: u32 = 0; + let mut x2933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2932, &mut x2933, x2931, x2833, x2899); + let mut x2934: u32 = 0; + let mut x2935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2934, &mut x2935, x2933, x2835, x2901); + let x2936: u32 = ((x2935 as u32) + (x2836 as u32)); + let mut x2937: u32 = 0; + let mut x2938: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2937, &mut x2938, x15, (arg1[15])); + let mut x2939: u32 = 0; + let mut x2940: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2939, &mut x2940, x15, (arg1[14])); + let mut x2941: u32 = 0; + let mut x2942: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2941, &mut x2942, x15, (arg1[13])); + let mut x2943: u32 = 0; + let mut x2944: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2943, &mut x2944, x15, (arg1[12])); + let mut x2945: u32 = 0; + let mut x2946: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2945, &mut x2946, x15, (arg1[11])); + let mut x2947: u32 = 0; + let mut x2948: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2947, &mut x2948, x15, (arg1[10])); + let mut x2949: u32 = 0; + let mut x2950: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2949, &mut x2950, x15, (arg1[9])); + let mut x2951: u32 = 0; + let mut x2952: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2951, &mut x2952, x15, (arg1[8])); + let mut x2953: u32 = 0; + let mut x2954: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2953, &mut x2954, x15, (arg1[7])); + let mut x2955: u32 = 0; + let mut x2956: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2955, &mut x2956, x15, (arg1[6])); + let mut x2957: u32 = 0; + let mut x2958: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2957, &mut x2958, x15, (arg1[5])); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2959, &mut x2960, x15, (arg1[4])); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2961, &mut x2962, x15, (arg1[3])); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2963, &mut x2964, x15, (arg1[2])); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2965, &mut x2966, x15, (arg1[1])); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2967, &mut x2968, x15, (arg1[0])); + let mut x2969: u32 = 0; + let mut x2970: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2969, &mut x2970, 0x0, x2968, x2965); + let mut x2971: u32 = 0; + let mut x2972: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2971, &mut x2972, x2970, x2966, x2963); + let mut x2973: u32 = 0; + let mut x2974: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2973, &mut x2974, x2972, x2964, x2961); + let mut x2975: u32 = 0; + let mut x2976: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2975, &mut x2976, x2974, x2962, x2959); + let mut x2977: u32 = 0; + let mut x2978: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2977, &mut x2978, x2976, x2960, x2957); + let mut x2979: u32 = 0; + let mut x2980: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2979, &mut x2980, x2978, x2958, x2955); + let mut x2981: u32 = 0; + let mut x2982: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2981, &mut x2982, x2980, x2956, x2953); + let mut x2983: u32 = 0; + let mut x2984: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2983, &mut x2984, x2982, x2954, x2951); + let mut x2985: u32 = 0; + let mut x2986: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2985, &mut x2986, x2984, x2952, x2949); + let mut x2987: u32 = 0; + let mut x2988: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2987, &mut x2988, x2986, x2950, x2947); + let mut x2989: u32 = 0; + let mut x2990: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2989, &mut x2990, x2988, x2948, x2945); + let mut x2991: u32 = 0; + let mut x2992: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2991, &mut x2992, x2990, x2946, x2943); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2993, &mut x2994, x2992, x2944, x2941); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2942, x2939); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2940, x2937); + let x2999: u32 = ((x2998 as u32) + x2938); + let mut x3000: u32 = 0; + let mut x3001: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3000, &mut x3001, 0x0, x2904, x2967); + let mut x3002: u32 = 0; + let mut x3003: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3002, &mut x3003, x3001, x2906, x2969); + let mut x3004: u32 = 0; + let mut x3005: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3004, &mut x3005, x3003, x2908, x2971); + let mut x3006: u32 = 0; + let mut x3007: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3006, &mut x3007, x3005, x2910, x2973); + let mut x3008: u32 = 0; + let mut x3009: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3008, &mut x3009, x3007, x2912, x2975); + let mut x3010: u32 = 0; + let mut x3011: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3010, &mut x3011, x3009, x2914, x2977); + let mut x3012: u32 = 0; + let mut x3013: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3012, &mut x3013, x3011, x2916, x2979); + let mut x3014: u32 = 0; + let mut x3015: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3014, &mut x3015, x3013, x2918, x2981); + let mut x3016: u32 = 0; + let mut x3017: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3016, &mut x3017, x3015, x2920, x2983); + let mut x3018: u32 = 0; + let mut x3019: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3018, &mut x3019, x3017, x2922, x2985); + let mut x3020: u32 = 0; + let mut x3021: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3020, &mut x3021, x3019, x2924, x2987); + let mut x3022: u32 = 0; + let mut x3023: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3022, &mut x3023, x3021, x2926, x2989); + let mut x3024: u32 = 0; + let mut x3025: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3024, &mut x3025, x3023, x2928, x2991); + let mut x3026: u32 = 0; + let mut x3027: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3026, &mut x3027, x3025, x2930, x2993); + let mut x3028: u32 = 0; + let mut x3029: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3028, &mut x3029, x3027, x2932, x2995); + let mut x3030: u32 = 0; + let mut x3031: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3030, &mut x3031, x3029, x2934, x2997); + let mut x3032: u32 = 0; + let mut x3033: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3032, &mut x3033, x3031, x2936, x2999); + let mut x3034: u32 = 0; + let mut x3035: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3034, &mut x3035, x3000, 0xf1b7027); + let mut x3036: u32 = 0; + let mut x3037: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3036, &mut x3037, x3034, 0xaadd9db8); + let mut x3038: u32 = 0; + let mut x3039: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3038, &mut x3039, x3034, 0xdbe9c48b); + let mut x3040: u32 = 0; + let mut x3041: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3040, &mut x3041, x3034, 0x3fd4e6ae); + let mut x3042: u32 = 0; + let mut x3043: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3042, &mut x3043, x3034, 0x33c9fc07); + let mut x3044: u32 = 0; + let mut x3045: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3044, &mut x3045, x3034, 0xcb308db3); + let mut x3046: u32 = 0; + let mut x3047: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3046, &mut x3047, x3034, 0xb3c9d20e); + let mut x3048: u32 = 0; + let mut x3049: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3048, &mut x3049, x3034, 0xd6639cca); + let mut x3050: u32 = 0; + let mut x3051: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3050, &mut x3051, x3034, 0x70330870); + let mut x3052: u32 = 0; + let mut x3053: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3052, &mut x3053, x3034, 0x553e5c41); + let mut x3054: u32 = 0; + let mut x3055: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3054, &mut x3055, x3034, 0x4ca92619); + let mut x3056: u32 = 0; + let mut x3057: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3056, &mut x3057, x3034, 0x41866119); + let mut x3058: u32 = 0; + let mut x3059: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3058, &mut x3059, x3034, 0x7fac1047); + let mut x3060: u32 = 0; + let mut x3061: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3060, &mut x3061, x3034, 0x1db1d381); + let mut x3062: u32 = 0; + let mut x3063: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3062, &mut x3063, x3034, 0x85ddadd); + let mut x3064: u32 = 0; + let mut x3065: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3064, &mut x3065, x3034, 0xb5879682); + let mut x3066: u32 = 0; + let mut x3067: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x3066, &mut x3067, x3034, 0x9ca90069); + let mut x3068: u32 = 0; + let mut x3069: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3068, &mut x3069, 0x0, x3067, x3064); + let mut x3070: u32 = 0; + let mut x3071: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3070, &mut x3071, x3069, x3065, x3062); + let mut x3072: u32 = 0; + let mut x3073: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3072, &mut x3073, x3071, x3063, x3060); + let mut x3074: u32 = 0; + let mut x3075: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3074, &mut x3075, x3073, x3061, x3058); + let mut x3076: u32 = 0; + let mut x3077: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3076, &mut x3077, x3075, x3059, x3056); + let mut x3078: u32 = 0; + let mut x3079: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3078, &mut x3079, x3077, x3057, x3054); + let mut x3080: u32 = 0; + let mut x3081: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3080, &mut x3081, x3079, x3055, x3052); + let mut x3082: u32 = 0; + let mut x3083: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3082, &mut x3083, x3081, x3053, x3050); + let mut x3084: u32 = 0; + let mut x3085: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3084, &mut x3085, x3083, x3051, x3048); + let mut x3086: u32 = 0; + let mut x3087: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3086, &mut x3087, x3085, x3049, x3046); + let mut x3088: u32 = 0; + let mut x3089: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3088, &mut x3089, x3087, x3047, x3044); + let mut x3090: u32 = 0; + let mut x3091: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3090, &mut x3091, x3089, x3045, x3042); + let mut x3092: u32 = 0; + let mut x3093: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3092, &mut x3093, x3091, x3043, x3040); + let mut x3094: u32 = 0; + let mut x3095: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3094, &mut x3095, x3093, x3041, x3038); + let mut x3096: u32 = 0; + let mut x3097: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3096, &mut x3097, x3095, x3039, x3036); + let x3098: u32 = ((x3097 as u32) + x3037); + let mut x3099: u32 = 0; + let mut x3100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3099, &mut x3100, 0x0, x3000, x3066); + let mut x3101: u32 = 0; + let mut x3102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3101, &mut x3102, x3100, x3002, x3068); + let mut x3103: u32 = 0; + let mut x3104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3103, &mut x3104, x3102, x3004, x3070); + let mut x3105: u32 = 0; + let mut x3106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3105, &mut x3106, x3104, x3006, x3072); + let mut x3107: u32 = 0; + let mut x3108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3107, &mut x3108, x3106, x3008, x3074); + let mut x3109: u32 = 0; + let mut x3110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3109, &mut x3110, x3108, x3010, x3076); + let mut x3111: u32 = 0; + let mut x3112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3111, &mut x3112, x3110, x3012, x3078); + let mut x3113: u32 = 0; + let mut x3114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3113, &mut x3114, x3112, x3014, x3080); + let mut x3115: u32 = 0; + let mut x3116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3115, &mut x3116, x3114, x3016, x3082); + let mut x3117: u32 = 0; + let mut x3118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3117, &mut x3118, x3116, x3018, x3084); + let mut x3119: u32 = 0; + let mut x3120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3119, &mut x3120, x3118, x3020, x3086); + let mut x3121: u32 = 0; + let mut x3122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3121, &mut x3122, x3120, x3022, x3088); + let mut x3123: u32 = 0; + let mut x3124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3123, &mut x3124, x3122, x3024, x3090); + let mut x3125: u32 = 0; + let mut x3126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3125, &mut x3126, x3124, x3026, x3092); + let mut x3127: u32 = 0; + let mut x3128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3127, &mut x3128, x3126, x3028, x3094); + let mut x3129: u32 = 0; + let mut x3130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3129, &mut x3130, x3128, x3030, x3096); + let mut x3131: u32 = 0; + let mut x3132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3131, &mut x3132, x3130, x3032, x3098); + let x3133: u32 = ((x3132 as u32) + (x3033 as u32)); + let mut x3134: u32 = 0; + let mut x3135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3134, &mut x3135, 0x0, x3101, 0x9ca90069); + let mut x3136: u32 = 0; + let mut x3137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3136, &mut x3137, x3135, x3103, 0xb5879682); + let mut x3138: u32 = 0; + let mut x3139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3138, &mut x3139, x3137, x3105, 0x85ddadd); + let mut x3140: u32 = 0; + let mut x3141: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3140, &mut x3141, x3139, x3107, 0x1db1d381); + let mut x3142: u32 = 0; + let mut x3143: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3142, &mut x3143, x3141, x3109, 0x7fac1047); + let mut x3144: u32 = 0; + let mut x3145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3144, &mut x3145, x3143, x3111, 0x41866119); + let mut x3146: u32 = 0; + let mut x3147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3146, &mut x3147, x3145, x3113, 0x4ca92619); + let mut x3148: u32 = 0; + let mut x3149: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3148, &mut x3149, x3147, x3115, 0x553e5c41); + let mut x3150: u32 = 0; + let mut x3151: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3150, &mut x3151, x3149, x3117, 0x70330870); + let mut x3152: u32 = 0; + let mut x3153: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3152, &mut x3153, x3151, x3119, 0xd6639cca); + let mut x3154: u32 = 0; + let mut x3155: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3154, &mut x3155, x3153, x3121, 0xb3c9d20e); + let mut x3156: u32 = 0; + let mut x3157: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3156, &mut x3157, x3155, x3123, 0xcb308db3); + let mut x3158: u32 = 0; + let mut x3159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3158, &mut x3159, x3157, x3125, 0x33c9fc07); + let mut x3160: u32 = 0; + let mut x3161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3160, &mut x3161, x3159, x3127, 0x3fd4e6ae); + let mut x3162: u32 = 0; + let mut x3163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3162, &mut x3163, x3161, x3129, 0xdbe9c48b); + let mut x3164: u32 = 0; + let mut x3165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3164, &mut x3165, x3163, x3131, 0xaadd9db8); + let mut x3166: u32 = 0; + let mut x3167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3166, &mut x3167, x3165, x3133, (0x0 as u32)); + let mut x3168: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3168, x3167, x3134, x3101); + let mut x3169: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3169, x3167, x3136, x3103); + let mut x3170: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3170, x3167, x3138, x3105); + let mut x3171: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3171, x3167, x3140, x3107); + let mut x3172: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3172, x3167, x3142, x3109); + let mut x3173: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3173, x3167, x3144, x3111); + let mut x3174: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3174, x3167, x3146, x3113); + let mut x3175: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3175, x3167, x3148, x3115); + let mut x3176: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3176, x3167, x3150, x3117); + let mut x3177: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3177, x3167, x3152, x3119); + let mut x3178: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3178, x3167, x3154, x3121); + let mut x3179: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3179, x3167, x3156, x3123); + let mut x3180: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3180, x3167, x3158, x3125); + let mut x3181: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3181, x3167, x3160, x3127); + let mut x3182: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3182, x3167, x3162, x3129); + let mut x3183: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3183, x3167, x3164, x3131); + out1[0] = x3168; + out1[1] = x3169; + out1[2] = x3170; + out1[3] = x3171; + out1[4] = x3172; + out1[5] = x3173; + out1[6] = x3174; + out1[7] = x3175; + out1[8] = x3176; + out1[9] = x3177; + out1[10] = x3178; + out1[11] = x3179; + out1[12] = x3180; + out1[13] = x3181; + out1[14] = x3182; + out1[15] = x3183; +} + +/// The function fiat_bp512_scalar_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_add( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + let mut x34: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x33, &mut x34, 0x0, x1, 0x9ca90069); + let mut x35: u32 = 0; + let mut x36: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x35, &mut x36, x34, x3, 0xb5879682); + let mut x37: u32 = 0; + let mut x38: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x37, &mut x38, x36, x5, 0x85ddadd); + let mut x39: u32 = 0; + let mut x40: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x39, &mut x40, x38, x7, 0x1db1d381); + let mut x41: u32 = 0; + let mut x42: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x41, &mut x42, x40, x9, 0x7fac1047); + let mut x43: u32 = 0; + let mut x44: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x43, &mut x44, x42, x11, 0x41866119); + let mut x45: u32 = 0; + let mut x46: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x45, &mut x46, x44, x13, 0x4ca92619); + let mut x47: u32 = 0; + let mut x48: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x47, &mut x48, x46, x15, 0x553e5c41); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x49, &mut x50, x48, x17, 0x70330870); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x51, &mut x52, x50, x19, 0xd6639cca); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x53, &mut x54, x52, x21, 0xb3c9d20e); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x55, &mut x56, x54, x23, 0xcb308db3); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x57, &mut x58, x56, x25, 0x33c9fc07); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x59, &mut x60, x58, x27, 0x3fd4e6ae); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x61, &mut x62, x60, x29, 0xdbe9c48b); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x63, &mut x64, x62, x31, 0xaadd9db8); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x65, &mut x66, x64, (x32 as u32), (0x0 as u32)); + let mut x67: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x67, x66, x33, x1); + let mut x68: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x68, x66, x35, x3); + let mut x69: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x69, x66, x37, x5); + let mut x70: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x70, x66, x39, x7); + let mut x71: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x71, x66, x41, x9); + let mut x72: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x72, x66, x43, x11); + let mut x73: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x73, x66, x45, x13); + let mut x74: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x74, x66, x47, x15); + let mut x75: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x75, x66, x49, x17); + let mut x76: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x76, x66, x51, x19); + let mut x77: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x77, x66, x53, x21); + let mut x78: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x78, x66, x55, x23); + let mut x79: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x79, x66, x57, x25); + let mut x80: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x80, x66, x59, x27); + let mut x81: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x81, x66, x61, x29); + let mut x82: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x82, x66, x63, x31); + out1[0] = x67; + out1[1] = x68; + out1[2] = x69; + out1[3] = x70; + out1[4] = x71; + out1[5] = x72; + out1[6] = x73; + out1[7] = x74; + out1[8] = x75; + out1[9] = x76; + out1[10] = x77; + out1[11] = x78; + out1[12] = x79; + out1[13] = x80; + out1[14] = x81; + out1[15] = x82; +} + +/// The function fiat_bp512_scalar_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_sub( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x17, &mut x18, x16, (arg1[8]), (arg2[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x19, &mut x20, x18, (arg1[9]), (arg2[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x21, &mut x22, x20, (arg1[10]), (arg2[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x23, &mut x24, x22, (arg1[11]), (arg2[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x25, &mut x26, x24, (arg1[12]), (arg2[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x27, &mut x28, x26, (arg1[13]), (arg2[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x29, &mut x30, x28, (arg1[14]), (arg2[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x31, &mut x32, x30, (arg1[15]), (arg2[15])); + let mut x33: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x9ca90069)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0xb5879682)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x85ddadd)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x1db1d381)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0x7fac1047)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0x41866119)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x4ca92619)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x553e5c41)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330870)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; +} + +/// The function fiat_bp512_scalar_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_opp( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); + let mut x3: u32 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3, &mut x4, x2, (0x0 as u32), (arg1[1])); + let mut x5: u32 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x5, &mut x6, x4, (0x0 as u32), (arg1[2])); + let mut x7: u32 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x7, &mut x8, x6, (0x0 as u32), (arg1[3])); + let mut x9: u32 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x9, &mut x10, x8, (0x0 as u32), (arg1[4])); + let mut x11: u32 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x11, &mut x12, x10, (0x0 as u32), (arg1[5])); + let mut x13: u32 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x13, &mut x14, x12, (0x0 as u32), (arg1[6])); + let mut x15: u32 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x15, &mut x16, x14, (0x0 as u32), (arg1[7])); + let mut x17: u32 = 0; + let mut x18: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x17, &mut x18, x16, (0x0 as u32), (arg1[8])); + let mut x19: u32 = 0; + let mut x20: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x19, &mut x20, x18, (0x0 as u32), (arg1[9])); + let mut x21: u32 = 0; + let mut x22: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x21, &mut x22, x20, (0x0 as u32), (arg1[10])); + let mut x23: u32 = 0; + let mut x24: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x23, &mut x24, x22, (0x0 as u32), (arg1[11])); + let mut x25: u32 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x25, &mut x26, x24, (0x0 as u32), (arg1[12])); + let mut x27: u32 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x27, &mut x28, x26, (0x0 as u32), (arg1[13])); + let mut x29: u32 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x29, &mut x30, x28, (0x0 as u32), (arg1[14])); + let mut x31: u32 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x31, &mut x32, x30, (0x0 as u32), (arg1[15])); + let mut x33: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x33, x32, (0x0 as u32), 0xffffffff); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x34, &mut x35, 0x0, x1, (x33 & 0x9ca90069)); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x36, &mut x37, x35, x3, (x33 & 0xb5879682)); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x5, (x33 & 0x85ddadd)); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x7, (x33 & 0x1db1d381)); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x9, (x33 & 0x7fac1047)); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x11, (x33 & 0x41866119)); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x13, (x33 & 0x4ca92619)); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x15, (x33 & 0x553e5c41)); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x50, &mut x51, x49, x17, (x33 & 0x70330870)); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x52, &mut x53, x51, x19, (x33 & 0xd6639cca)); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x54, &mut x55, x53, x21, (x33 & 0xb3c9d20e)); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x56, &mut x57, x55, x23, (x33 & 0xcb308db3)); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x58, &mut x59, x57, x25, (x33 & 0x33c9fc07)); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x60, &mut x61, x59, x27, (x33 & 0x3fd4e6ae)); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x62, &mut x63, x61, x29, (x33 & 0xdbe9c48b)); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x64, &mut x65, x63, x31, (x33 & 0xaadd9db8)); + out1[0] = x34; + out1[1] = x36; + out1[2] = x38; + out1[3] = x40; + out1[4] = x42; + out1[5] = x44; + out1[6] = x46; + out1[7] = x48; + out1[8] = x50; + out1[9] = x52; + out1[10] = x54; + out1[11] = x56; + out1[12] = x58; + out1[13] = x60; + out1[14] = x62; + out1[15] = x64; +} + +/// The function fiat_bp512_scalar_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^32)⁻¹ mod m)^16) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_from_montgomery( + out1: &mut fiat_bp512_scalar_non_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[0]); + let mut x2: u32 = 0; + let mut x3: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2, &mut x3, x1, 0xf1b7027); + let mut x4: u32 = 0; + let mut x5: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x4, &mut x5, x2, 0xaadd9db8); + let mut x6: u32 = 0; + let mut x7: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x6, &mut x7, x2, 0xdbe9c48b); + let mut x8: u32 = 0; + let mut x9: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x8, &mut x9, x2, 0x3fd4e6ae); + let mut x10: u32 = 0; + let mut x11: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x10, &mut x11, x2, 0x33c9fc07); + let mut x12: u32 = 0; + let mut x13: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x12, &mut x13, x2, 0xcb308db3); + let mut x14: u32 = 0; + let mut x15: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x14, &mut x15, x2, 0xb3c9d20e); + let mut x16: u32 = 0; + let mut x17: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x16, &mut x17, x2, 0xd6639cca); + let mut x18: u32 = 0; + let mut x19: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x18, &mut x19, x2, 0x70330870); + let mut x20: u32 = 0; + let mut x21: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x20, &mut x21, x2, 0x553e5c41); + let mut x22: u32 = 0; + let mut x23: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x22, &mut x23, x2, 0x4ca92619); + let mut x24: u32 = 0; + let mut x25: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x24, &mut x25, x2, 0x41866119); + let mut x26: u32 = 0; + let mut x27: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x26, &mut x27, x2, 0x7fac1047); + let mut x28: u32 = 0; + let mut x29: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x28, &mut x29, x2, 0x1db1d381); + let mut x30: u32 = 0; + let mut x31: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x30, &mut x31, x2, 0x85ddadd); + let mut x32: u32 = 0; + let mut x33: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x32, &mut x33, x2, 0xb5879682); + let mut x34: u32 = 0; + let mut x35: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x34, &mut x35, x2, 0x9ca90069); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x36, &mut x37, 0x0, x35, x32); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x38, &mut x39, x37, x33, x30); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x40, &mut x41, x39, x31, x28); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x42, &mut x43, x41, x29, x26); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x44, &mut x45, x43, x27, x24); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x46, &mut x47, x45, x25, x22); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x48, &mut x49, x47, x23, x20); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x50, &mut x51, x49, x21, x18); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x52, &mut x53, x51, x19, x16); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x54, &mut x55, x53, x17, x14); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x56, &mut x57, x55, x15, x12); + let mut x58: u32 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x58, &mut x59, x57, x13, x10); + let mut x60: u32 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x60, &mut x61, x59, x11, x8); + let mut x62: u32 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x62, &mut x63, x61, x9, x6); + let mut x64: u32 = 0; + let mut x65: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x64, &mut x65, x63, x7, x4); + let mut x66: u32 = 0; + let mut x67: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x66, &mut x67, 0x0, x1, x34); + let mut x68: u32 = 0; + let mut x69: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x68, &mut x69, x67, (0x0 as u32), x36); + let mut x70: u32 = 0; + let mut x71: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x70, &mut x71, x69, (0x0 as u32), x38); + let mut x72: u32 = 0; + let mut x73: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x72, &mut x73, x71, (0x0 as u32), x40); + let mut x74: u32 = 0; + let mut x75: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x74, &mut x75, x73, (0x0 as u32), x42); + let mut x76: u32 = 0; + let mut x77: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x76, &mut x77, x75, (0x0 as u32), x44); + let mut x78: u32 = 0; + let mut x79: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x78, &mut x79, x77, (0x0 as u32), x46); + let mut x80: u32 = 0; + let mut x81: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x80, &mut x81, x79, (0x0 as u32), x48); + let mut x82: u32 = 0; + let mut x83: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x82, &mut x83, x81, (0x0 as u32), x50); + let mut x84: u32 = 0; + let mut x85: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x84, &mut x85, x83, (0x0 as u32), x52); + let mut x86: u32 = 0; + let mut x87: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x86, &mut x87, x85, (0x0 as u32), x54); + let mut x88: u32 = 0; + let mut x89: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x88, &mut x89, x87, (0x0 as u32), x56); + let mut x90: u32 = 0; + let mut x91: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x90, &mut x91, x89, (0x0 as u32), x58); + let mut x92: u32 = 0; + let mut x93: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x92, &mut x93, x91, (0x0 as u32), x60); + let mut x94: u32 = 0; + let mut x95: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x94, &mut x95, x93, (0x0 as u32), x62); + let mut x96: u32 = 0; + let mut x97: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x96, &mut x97, x95, (0x0 as u32), x64); + let mut x98: u32 = 0; + let mut x99: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x98, &mut x99, 0x0, x68, (arg1[1])); + let mut x100: u32 = 0; + let mut x101: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x100, &mut x101, x99, x70, (0x0 as u32)); + let mut x102: u32 = 0; + let mut x103: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x102, &mut x103, x101, x72, (0x0 as u32)); + let mut x104: u32 = 0; + let mut x105: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x104, &mut x105, x103, x74, (0x0 as u32)); + let mut x106: u32 = 0; + let mut x107: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x106, &mut x107, x105, x76, (0x0 as u32)); + let mut x108: u32 = 0; + let mut x109: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x108, &mut x109, x107, x78, (0x0 as u32)); + let mut x110: u32 = 0; + let mut x111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x110, &mut x111, x109, x80, (0x0 as u32)); + let mut x112: u32 = 0; + let mut x113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x112, &mut x113, x111, x82, (0x0 as u32)); + let mut x114: u32 = 0; + let mut x115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x114, &mut x115, x113, x84, (0x0 as u32)); + let mut x116: u32 = 0; + let mut x117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x116, &mut x117, x115, x86, (0x0 as u32)); + let mut x118: u32 = 0; + let mut x119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x118, &mut x119, x117, x88, (0x0 as u32)); + let mut x120: u32 = 0; + let mut x121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x120, &mut x121, x119, x90, (0x0 as u32)); + let mut x122: u32 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x122, &mut x123, x121, x92, (0x0 as u32)); + let mut x124: u32 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x124, &mut x125, x123, x94, (0x0 as u32)); + let mut x126: u32 = 0; + let mut x127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x126, &mut x127, x125, x96, (0x0 as u32)); + let mut x128: u32 = 0; + let mut x129: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x128, &mut x129, x98, 0xf1b7027); + let mut x130: u32 = 0; + let mut x131: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x130, &mut x131, x128, 0xaadd9db8); + let mut x132: u32 = 0; + let mut x133: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x132, &mut x133, x128, 0xdbe9c48b); + let mut x134: u32 = 0; + let mut x135: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x134, &mut x135, x128, 0x3fd4e6ae); + let mut x136: u32 = 0; + let mut x137: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x136, &mut x137, x128, 0x33c9fc07); + let mut x138: u32 = 0; + let mut x139: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x138, &mut x139, x128, 0xcb308db3); + let mut x140: u32 = 0; + let mut x141: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x140, &mut x141, x128, 0xb3c9d20e); + let mut x142: u32 = 0; + let mut x143: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x142, &mut x143, x128, 0xd6639cca); + let mut x144: u32 = 0; + let mut x145: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x144, &mut x145, x128, 0x70330870); + let mut x146: u32 = 0; + let mut x147: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x146, &mut x147, x128, 0x553e5c41); + let mut x148: u32 = 0; + let mut x149: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x148, &mut x149, x128, 0x4ca92619); + let mut x150: u32 = 0; + let mut x151: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x150, &mut x151, x128, 0x41866119); + let mut x152: u32 = 0; + let mut x153: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x152, &mut x153, x128, 0x7fac1047); + let mut x154: u32 = 0; + let mut x155: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x154, &mut x155, x128, 0x1db1d381); + let mut x156: u32 = 0; + let mut x157: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x156, &mut x157, x128, 0x85ddadd); + let mut x158: u32 = 0; + let mut x159: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x158, &mut x159, x128, 0xb5879682); + let mut x160: u32 = 0; + let mut x161: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x160, &mut x161, x128, 0x9ca90069); + let mut x162: u32 = 0; + let mut x163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x162, &mut x163, 0x0, x161, x158); + let mut x164: u32 = 0; + let mut x165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x164, &mut x165, x163, x159, x156); + let mut x166: u32 = 0; + let mut x167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x166, &mut x167, x165, x157, x154); + let mut x168: u32 = 0; + let mut x169: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x168, &mut x169, x167, x155, x152); + let mut x170: u32 = 0; + let mut x171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x170, &mut x171, x169, x153, x150); + let mut x172: u32 = 0; + let mut x173: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x172, &mut x173, x171, x151, x148); + let mut x174: u32 = 0; + let mut x175: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x174, &mut x175, x173, x149, x146); + let mut x176: u32 = 0; + let mut x177: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x176, &mut x177, x175, x147, x144); + let mut x178: u32 = 0; + let mut x179: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x178, &mut x179, x177, x145, x142); + let mut x180: u32 = 0; + let mut x181: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x180, &mut x181, x179, x143, x140); + let mut x182: u32 = 0; + let mut x183: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x182, &mut x183, x181, x141, x138); + let mut x184: u32 = 0; + let mut x185: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x184, &mut x185, x183, x139, x136); + let mut x186: u32 = 0; + let mut x187: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x186, &mut x187, x185, x137, x134); + let mut x188: u32 = 0; + let mut x189: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x188, &mut x189, x187, x135, x132); + let mut x190: u32 = 0; + let mut x191: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x190, &mut x191, x189, x133, x130); + let mut x192: u32 = 0; + let mut x193: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x192, &mut x193, 0x0, x98, x160); + let mut x194: u32 = 0; + let mut x195: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x194, &mut x195, x193, x100, x162); + let mut x196: u32 = 0; + let mut x197: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x196, &mut x197, x195, x102, x164); + let mut x198: u32 = 0; + let mut x199: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x198, &mut x199, x197, x104, x166); + let mut x200: u32 = 0; + let mut x201: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x200, &mut x201, x199, x106, x168); + let mut x202: u32 = 0; + let mut x203: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x202, &mut x203, x201, x108, x170); + let mut x204: u32 = 0; + let mut x205: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x204, &mut x205, x203, x110, x172); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x206, &mut x207, x205, x112, x174); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x208, &mut x209, x207, x114, x176); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x210, &mut x211, x209, x116, x178); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x212, &mut x213, x211, x118, x180); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x214, &mut x215, x213, x120, x182); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x216, &mut x217, x215, x122, x184); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x218, &mut x219, x217, x124, x186); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x220, &mut x221, x219, x126, x188); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x222, + &mut x223, + x221, + ((x127 as u32) + ((x97 as u32) + ((x65 as u32) + x5))), + x190, + ); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x224, &mut x225, 0x0, x194, (arg1[2])); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x226, &mut x227, x225, x196, (0x0 as u32)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x228, &mut x229, x227, x198, (0x0 as u32)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x230, &mut x231, x229, x200, (0x0 as u32)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x232, &mut x233, x231, x202, (0x0 as u32)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x234, &mut x235, x233, x204, (0x0 as u32)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x236, &mut x237, x235, x206, (0x0 as u32)); + let mut x238: u32 = 0; + let mut x239: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x238, &mut x239, x237, x208, (0x0 as u32)); + let mut x240: u32 = 0; + let mut x241: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x240, &mut x241, x239, x210, (0x0 as u32)); + let mut x242: u32 = 0; + let mut x243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x242, &mut x243, x241, x212, (0x0 as u32)); + let mut x244: u32 = 0; + let mut x245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x244, &mut x245, x243, x214, (0x0 as u32)); + let mut x246: u32 = 0; + let mut x247: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x246, &mut x247, x245, x216, (0x0 as u32)); + let mut x248: u32 = 0; + let mut x249: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x248, &mut x249, x247, x218, (0x0 as u32)); + let mut x250: u32 = 0; + let mut x251: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x250, &mut x251, x249, x220, (0x0 as u32)); + let mut x252: u32 = 0; + let mut x253: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x252, &mut x253, x251, x222, (0x0 as u32)); + let mut x254: u32 = 0; + let mut x255: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x254, &mut x255, x224, 0xf1b7027); + let mut x256: u32 = 0; + let mut x257: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x256, &mut x257, x254, 0xaadd9db8); + let mut x258: u32 = 0; + let mut x259: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x258, &mut x259, x254, 0xdbe9c48b); + let mut x260: u32 = 0; + let mut x261: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x260, &mut x261, x254, 0x3fd4e6ae); + let mut x262: u32 = 0; + let mut x263: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x262, &mut x263, x254, 0x33c9fc07); + let mut x264: u32 = 0; + let mut x265: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x264, &mut x265, x254, 0xcb308db3); + let mut x266: u32 = 0; + let mut x267: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x266, &mut x267, x254, 0xb3c9d20e); + let mut x268: u32 = 0; + let mut x269: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x268, &mut x269, x254, 0xd6639cca); + let mut x270: u32 = 0; + let mut x271: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x270, &mut x271, x254, 0x70330870); + let mut x272: u32 = 0; + let mut x273: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x272, &mut x273, x254, 0x553e5c41); + let mut x274: u32 = 0; + let mut x275: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x274, &mut x275, x254, 0x4ca92619); + let mut x276: u32 = 0; + let mut x277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x276, &mut x277, x254, 0x41866119); + let mut x278: u32 = 0; + let mut x279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x278, &mut x279, x254, 0x7fac1047); + let mut x280: u32 = 0; + let mut x281: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x280, &mut x281, x254, 0x1db1d381); + let mut x282: u32 = 0; + let mut x283: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x282, &mut x283, x254, 0x85ddadd); + let mut x284: u32 = 0; + let mut x285: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x284, &mut x285, x254, 0xb5879682); + let mut x286: u32 = 0; + let mut x287: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x286, &mut x287, x254, 0x9ca90069); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x288, &mut x289, 0x0, x287, x284); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x290, &mut x291, x289, x285, x282); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x292, &mut x293, x291, x283, x280); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x294, &mut x295, x293, x281, x278); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x296, &mut x297, x295, x279, x276); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x298, &mut x299, x297, x277, x274); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x300, &mut x301, x299, x275, x272); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x302, &mut x303, x301, x273, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x304, &mut x305, x303, x271, x268); + let mut x306: u32 = 0; + let mut x307: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x306, &mut x307, x305, x269, x266); + let mut x308: u32 = 0; + let mut x309: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x308, &mut x309, x307, x267, x264); + let mut x310: u32 = 0; + let mut x311: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x310, &mut x311, x309, x265, x262); + let mut x312: u32 = 0; + let mut x313: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x312, &mut x313, x311, x263, x260); + let mut x314: u32 = 0; + let mut x315: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x314, &mut x315, x313, x261, x258); + let mut x316: u32 = 0; + let mut x317: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x316, &mut x317, x315, x259, x256); + let mut x318: u32 = 0; + let mut x319: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x318, &mut x319, 0x0, x224, x286); + let mut x320: u32 = 0; + let mut x321: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x320, &mut x321, x319, x226, x288); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x322, &mut x323, x321, x228, x290); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x230, x292); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x232, x294); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x234, x296); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x330, &mut x331, x329, x236, x298); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x332, &mut x333, x331, x238, x300); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x334, &mut x335, x333, x240, x302); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x336, &mut x337, x335, x242, x304); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x338, &mut x339, x337, x244, x306); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x340, &mut x341, x339, x246, x308); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x342, &mut x343, x341, x248, x310); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x344, &mut x345, x343, x250, x312); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x346, &mut x347, x345, x252, x314); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x348, + &mut x349, + x347, + ((x253 as u32) + ((x223 as u32) + ((x191 as u32) + x131))), + x316, + ); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x350, &mut x351, 0x0, x320, (arg1[3])); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x352, &mut x353, x351, x322, (0x0 as u32)); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x354, &mut x355, x353, x324, (0x0 as u32)); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x356, &mut x357, x355, x326, (0x0 as u32)); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x358, &mut x359, x357, x328, (0x0 as u32)); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x360, &mut x361, x359, x330, (0x0 as u32)); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x362, &mut x363, x361, x332, (0x0 as u32)); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x364, &mut x365, x363, x334, (0x0 as u32)); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x366, &mut x367, x365, x336, (0x0 as u32)); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x368, &mut x369, x367, x338, (0x0 as u32)); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x370, &mut x371, x369, x340, (0x0 as u32)); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x372, &mut x373, x371, x342, (0x0 as u32)); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x374, &mut x375, x373, x344, (0x0 as u32)); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x376, &mut x377, x375, x346, (0x0 as u32)); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x378, &mut x379, x377, x348, (0x0 as u32)); + let mut x380: u32 = 0; + let mut x381: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x380, &mut x381, x350, 0xf1b7027); + let mut x382: u32 = 0; + let mut x383: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x382, &mut x383, x380, 0xaadd9db8); + let mut x384: u32 = 0; + let mut x385: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x384, &mut x385, x380, 0xdbe9c48b); + let mut x386: u32 = 0; + let mut x387: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x386, &mut x387, x380, 0x3fd4e6ae); + let mut x388: u32 = 0; + let mut x389: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x388, &mut x389, x380, 0x33c9fc07); + let mut x390: u32 = 0; + let mut x391: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x390, &mut x391, x380, 0xcb308db3); + let mut x392: u32 = 0; + let mut x393: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x392, &mut x393, x380, 0xb3c9d20e); + let mut x394: u32 = 0; + let mut x395: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x394, &mut x395, x380, 0xd6639cca); + let mut x396: u32 = 0; + let mut x397: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x396, &mut x397, x380, 0x70330870); + let mut x398: u32 = 0; + let mut x399: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x398, &mut x399, x380, 0x553e5c41); + let mut x400: u32 = 0; + let mut x401: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x400, &mut x401, x380, 0x4ca92619); + let mut x402: u32 = 0; + let mut x403: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x402, &mut x403, x380, 0x41866119); + let mut x404: u32 = 0; + let mut x405: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x404, &mut x405, x380, 0x7fac1047); + let mut x406: u32 = 0; + let mut x407: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x406, &mut x407, x380, 0x1db1d381); + let mut x408: u32 = 0; + let mut x409: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x408, &mut x409, x380, 0x85ddadd); + let mut x410: u32 = 0; + let mut x411: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x410, &mut x411, x380, 0xb5879682); + let mut x412: u32 = 0; + let mut x413: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x412, &mut x413, x380, 0x9ca90069); + let mut x414: u32 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x414, &mut x415, 0x0, x413, x410); + let mut x416: u32 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x416, &mut x417, x415, x411, x408); + let mut x418: u32 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x418, &mut x419, x417, x409, x406); + let mut x420: u32 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x420, &mut x421, x419, x407, x404); + let mut x422: u32 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x422, &mut x423, x421, x405, x402); + let mut x424: u32 = 0; + let mut x425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x424, &mut x425, x423, x403, x400); + let mut x426: u32 = 0; + let mut x427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x426, &mut x427, x425, x401, x398); + let mut x428: u32 = 0; + let mut x429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x428, &mut x429, x427, x399, x396); + let mut x430: u32 = 0; + let mut x431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x430, &mut x431, x429, x397, x394); + let mut x432: u32 = 0; + let mut x433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x432, &mut x433, x431, x395, x392); + let mut x434: u32 = 0; + let mut x435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x434, &mut x435, x433, x393, x390); + let mut x436: u32 = 0; + let mut x437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x436, &mut x437, x435, x391, x388); + let mut x438: u32 = 0; + let mut x439: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x438, &mut x439, x437, x389, x386); + let mut x440: u32 = 0; + let mut x441: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x440, &mut x441, x439, x387, x384); + let mut x442: u32 = 0; + let mut x443: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x442, &mut x443, x441, x385, x382); + let mut x444: u32 = 0; + let mut x445: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x444, &mut x445, 0x0, x350, x412); + let mut x446: u32 = 0; + let mut x447: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x446, &mut x447, x445, x352, x414); + let mut x448: u32 = 0; + let mut x449: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x448, &mut x449, x447, x354, x416); + let mut x450: u32 = 0; + let mut x451: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x450, &mut x451, x449, x356, x418); + let mut x452: u32 = 0; + let mut x453: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x452, &mut x453, x451, x358, x420); + let mut x454: u32 = 0; + let mut x455: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x454, &mut x455, x453, x360, x422); + let mut x456: u32 = 0; + let mut x457: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x456, &mut x457, x455, x362, x424); + let mut x458: u32 = 0; + let mut x459: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x458, &mut x459, x457, x364, x426); + let mut x460: u32 = 0; + let mut x461: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x460, &mut x461, x459, x366, x428); + let mut x462: u32 = 0; + let mut x463: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x462, &mut x463, x461, x368, x430); + let mut x464: u32 = 0; + let mut x465: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x464, &mut x465, x463, x370, x432); + let mut x466: u32 = 0; + let mut x467: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x466, &mut x467, x465, x372, x434); + let mut x468: u32 = 0; + let mut x469: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x468, &mut x469, x467, x374, x436); + let mut x470: u32 = 0; + let mut x471: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x470, &mut x471, x469, x376, x438); + let mut x472: u32 = 0; + let mut x473: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x472, &mut x473, x471, x378, x440); + let mut x474: u32 = 0; + let mut x475: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x474, + &mut x475, + x473, + ((x379 as u32) + ((x349 as u32) + ((x317 as u32) + x257))), + x442, + ); + let mut x476: u32 = 0; + let mut x477: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x476, &mut x477, 0x0, x446, (arg1[4])); + let mut x478: u32 = 0; + let mut x479: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x478, &mut x479, x477, x448, (0x0 as u32)); + let mut x480: u32 = 0; + let mut x481: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x480, &mut x481, x479, x450, (0x0 as u32)); + let mut x482: u32 = 0; + let mut x483: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x482, &mut x483, x481, x452, (0x0 as u32)); + let mut x484: u32 = 0; + let mut x485: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x484, &mut x485, x483, x454, (0x0 as u32)); + let mut x486: u32 = 0; + let mut x487: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x486, &mut x487, x485, x456, (0x0 as u32)); + let mut x488: u32 = 0; + let mut x489: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x488, &mut x489, x487, x458, (0x0 as u32)); + let mut x490: u32 = 0; + let mut x491: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x490, &mut x491, x489, x460, (0x0 as u32)); + let mut x492: u32 = 0; + let mut x493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x492, &mut x493, x491, x462, (0x0 as u32)); + let mut x494: u32 = 0; + let mut x495: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x494, &mut x495, x493, x464, (0x0 as u32)); + let mut x496: u32 = 0; + let mut x497: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x496, &mut x497, x495, x466, (0x0 as u32)); + let mut x498: u32 = 0; + let mut x499: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x498, &mut x499, x497, x468, (0x0 as u32)); + let mut x500: u32 = 0; + let mut x501: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x500, &mut x501, x499, x470, (0x0 as u32)); + let mut x502: u32 = 0; + let mut x503: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x502, &mut x503, x501, x472, (0x0 as u32)); + let mut x504: u32 = 0; + let mut x505: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x504, &mut x505, x503, x474, (0x0 as u32)); + let mut x506: u32 = 0; + let mut x507: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x506, &mut x507, x476, 0xf1b7027); + let mut x508: u32 = 0; + let mut x509: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x508, &mut x509, x506, 0xaadd9db8); + let mut x510: u32 = 0; + let mut x511: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x510, &mut x511, x506, 0xdbe9c48b); + let mut x512: u32 = 0; + let mut x513: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x512, &mut x513, x506, 0x3fd4e6ae); + let mut x514: u32 = 0; + let mut x515: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x514, &mut x515, x506, 0x33c9fc07); + let mut x516: u32 = 0; + let mut x517: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x516, &mut x517, x506, 0xcb308db3); + let mut x518: u32 = 0; + let mut x519: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x518, &mut x519, x506, 0xb3c9d20e); + let mut x520: u32 = 0; + let mut x521: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x520, &mut x521, x506, 0xd6639cca); + let mut x522: u32 = 0; + let mut x523: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x522, &mut x523, x506, 0x70330870); + let mut x524: u32 = 0; + let mut x525: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x524, &mut x525, x506, 0x553e5c41); + let mut x526: u32 = 0; + let mut x527: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x526, &mut x527, x506, 0x4ca92619); + let mut x528: u32 = 0; + let mut x529: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x528, &mut x529, x506, 0x41866119); + let mut x530: u32 = 0; + let mut x531: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x530, &mut x531, x506, 0x7fac1047); + let mut x532: u32 = 0; + let mut x533: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x532, &mut x533, x506, 0x1db1d381); + let mut x534: u32 = 0; + let mut x535: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x534, &mut x535, x506, 0x85ddadd); + let mut x536: u32 = 0; + let mut x537: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x536, &mut x537, x506, 0xb5879682); + let mut x538: u32 = 0; + let mut x539: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x538, &mut x539, x506, 0x9ca90069); + let mut x540: u32 = 0; + let mut x541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x540, &mut x541, 0x0, x539, x536); + let mut x542: u32 = 0; + let mut x543: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x542, &mut x543, x541, x537, x534); + let mut x544: u32 = 0; + let mut x545: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x544, &mut x545, x543, x535, x532); + let mut x546: u32 = 0; + let mut x547: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x546, &mut x547, x545, x533, x530); + let mut x548: u32 = 0; + let mut x549: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x548, &mut x549, x547, x531, x528); + let mut x550: u32 = 0; + let mut x551: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x550, &mut x551, x549, x529, x526); + let mut x552: u32 = 0; + let mut x553: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x552, &mut x553, x551, x527, x524); + let mut x554: u32 = 0; + let mut x555: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x554, &mut x555, x553, x525, x522); + let mut x556: u32 = 0; + let mut x557: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x556, &mut x557, x555, x523, x520); + let mut x558: u32 = 0; + let mut x559: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x558, &mut x559, x557, x521, x518); + let mut x560: u32 = 0; + let mut x561: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x560, &mut x561, x559, x519, x516); + let mut x562: u32 = 0; + let mut x563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x562, &mut x563, x561, x517, x514); + let mut x564: u32 = 0; + let mut x565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x564, &mut x565, x563, x515, x512); + let mut x566: u32 = 0; + let mut x567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x566, &mut x567, x565, x513, x510); + let mut x568: u32 = 0; + let mut x569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x568, &mut x569, x567, x511, x508); + let mut x570: u32 = 0; + let mut x571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x570, &mut x571, 0x0, x476, x538); + let mut x572: u32 = 0; + let mut x573: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x572, &mut x573, x571, x478, x540); + let mut x574: u32 = 0; + let mut x575: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x574, &mut x575, x573, x480, x542); + let mut x576: u32 = 0; + let mut x577: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x576, &mut x577, x575, x482, x544); + let mut x578: u32 = 0; + let mut x579: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x578, &mut x579, x577, x484, x546); + let mut x580: u32 = 0; + let mut x581: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x580, &mut x581, x579, x486, x548); + let mut x582: u32 = 0; + let mut x583: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x582, &mut x583, x581, x488, x550); + let mut x584: u32 = 0; + let mut x585: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x584, &mut x585, x583, x490, x552); + let mut x586: u32 = 0; + let mut x587: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x586, &mut x587, x585, x492, x554); + let mut x588: u32 = 0; + let mut x589: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x588, &mut x589, x587, x494, x556); + let mut x590: u32 = 0; + let mut x591: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x590, &mut x591, x589, x496, x558); + let mut x592: u32 = 0; + let mut x593: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x592, &mut x593, x591, x498, x560); + let mut x594: u32 = 0; + let mut x595: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x594, &mut x595, x593, x500, x562); + let mut x596: u32 = 0; + let mut x597: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x596, &mut x597, x595, x502, x564); + let mut x598: u32 = 0; + let mut x599: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x598, &mut x599, x597, x504, x566); + let mut x600: u32 = 0; + let mut x601: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x600, + &mut x601, + x599, + ((x505 as u32) + ((x475 as u32) + ((x443 as u32) + x383))), + x568, + ); + let mut x602: u32 = 0; + let mut x603: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x602, &mut x603, 0x0, x572, (arg1[5])); + let mut x604: u32 = 0; + let mut x605: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x604, &mut x605, x603, x574, (0x0 as u32)); + let mut x606: u32 = 0; + let mut x607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x606, &mut x607, x605, x576, (0x0 as u32)); + let mut x608: u32 = 0; + let mut x609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x608, &mut x609, x607, x578, (0x0 as u32)); + let mut x610: u32 = 0; + let mut x611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x610, &mut x611, x609, x580, (0x0 as u32)); + let mut x612: u32 = 0; + let mut x613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x612, &mut x613, x611, x582, (0x0 as u32)); + let mut x614: u32 = 0; + let mut x615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x614, &mut x615, x613, x584, (0x0 as u32)); + let mut x616: u32 = 0; + let mut x617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x616, &mut x617, x615, x586, (0x0 as u32)); + let mut x618: u32 = 0; + let mut x619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x618, &mut x619, x617, x588, (0x0 as u32)); + let mut x620: u32 = 0; + let mut x621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x620, &mut x621, x619, x590, (0x0 as u32)); + let mut x622: u32 = 0; + let mut x623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x622, &mut x623, x621, x592, (0x0 as u32)); + let mut x624: u32 = 0; + let mut x625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x624, &mut x625, x623, x594, (0x0 as u32)); + let mut x626: u32 = 0; + let mut x627: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x626, &mut x627, x625, x596, (0x0 as u32)); + let mut x628: u32 = 0; + let mut x629: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x628, &mut x629, x627, x598, (0x0 as u32)); + let mut x630: u32 = 0; + let mut x631: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x630, &mut x631, x629, x600, (0x0 as u32)); + let mut x632: u32 = 0; + let mut x633: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x632, &mut x633, x602, 0xf1b7027); + let mut x634: u32 = 0; + let mut x635: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x634, &mut x635, x632, 0xaadd9db8); + let mut x636: u32 = 0; + let mut x637: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x636, &mut x637, x632, 0xdbe9c48b); + let mut x638: u32 = 0; + let mut x639: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x638, &mut x639, x632, 0x3fd4e6ae); + let mut x640: u32 = 0; + let mut x641: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x640, &mut x641, x632, 0x33c9fc07); + let mut x642: u32 = 0; + let mut x643: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x642, &mut x643, x632, 0xcb308db3); + let mut x644: u32 = 0; + let mut x645: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x644, &mut x645, x632, 0xb3c9d20e); + let mut x646: u32 = 0; + let mut x647: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x646, &mut x647, x632, 0xd6639cca); + let mut x648: u32 = 0; + let mut x649: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x648, &mut x649, x632, 0x70330870); + let mut x650: u32 = 0; + let mut x651: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x650, &mut x651, x632, 0x553e5c41); + let mut x652: u32 = 0; + let mut x653: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x652, &mut x653, x632, 0x4ca92619); + let mut x654: u32 = 0; + let mut x655: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x654, &mut x655, x632, 0x41866119); + let mut x656: u32 = 0; + let mut x657: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x656, &mut x657, x632, 0x7fac1047); + let mut x658: u32 = 0; + let mut x659: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x658, &mut x659, x632, 0x1db1d381); + let mut x660: u32 = 0; + let mut x661: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x660, &mut x661, x632, 0x85ddadd); + let mut x662: u32 = 0; + let mut x663: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x662, &mut x663, x632, 0xb5879682); + let mut x664: u32 = 0; + let mut x665: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x664, &mut x665, x632, 0x9ca90069); + let mut x666: u32 = 0; + let mut x667: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x666, &mut x667, 0x0, x665, x662); + let mut x668: u32 = 0; + let mut x669: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x668, &mut x669, x667, x663, x660); + let mut x670: u32 = 0; + let mut x671: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x670, &mut x671, x669, x661, x658); + let mut x672: u32 = 0; + let mut x673: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x672, &mut x673, x671, x659, x656); + let mut x674: u32 = 0; + let mut x675: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x674, &mut x675, x673, x657, x654); + let mut x676: u32 = 0; + let mut x677: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x676, &mut x677, x675, x655, x652); + let mut x678: u32 = 0; + let mut x679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x678, &mut x679, x677, x653, x650); + let mut x680: u32 = 0; + let mut x681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x680, &mut x681, x679, x651, x648); + let mut x682: u32 = 0; + let mut x683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x682, &mut x683, x681, x649, x646); + let mut x684: u32 = 0; + let mut x685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x684, &mut x685, x683, x647, x644); + let mut x686: u32 = 0; + let mut x687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x686, &mut x687, x685, x645, x642); + let mut x688: u32 = 0; + let mut x689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x688, &mut x689, x687, x643, x640); + let mut x690: u32 = 0; + let mut x691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x690, &mut x691, x689, x641, x638); + let mut x692: u32 = 0; + let mut x693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x692, &mut x693, x691, x639, x636); + let mut x694: u32 = 0; + let mut x695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x694, &mut x695, x693, x637, x634); + let mut x696: u32 = 0; + let mut x697: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x696, &mut x697, 0x0, x602, x664); + let mut x698: u32 = 0; + let mut x699: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x698, &mut x699, x697, x604, x666); + let mut x700: u32 = 0; + let mut x701: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x700, &mut x701, x699, x606, x668); + let mut x702: u32 = 0; + let mut x703: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x702, &mut x703, x701, x608, x670); + let mut x704: u32 = 0; + let mut x705: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x704, &mut x705, x703, x610, x672); + let mut x706: u32 = 0; + let mut x707: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x706, &mut x707, x705, x612, x674); + let mut x708: u32 = 0; + let mut x709: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x708, &mut x709, x707, x614, x676); + let mut x710: u32 = 0; + let mut x711: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x710, &mut x711, x709, x616, x678); + let mut x712: u32 = 0; + let mut x713: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x712, &mut x713, x711, x618, x680); + let mut x714: u32 = 0; + let mut x715: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x714, &mut x715, x713, x620, x682); + let mut x716: u32 = 0; + let mut x717: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x716, &mut x717, x715, x622, x684); + let mut x718: u32 = 0; + let mut x719: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x718, &mut x719, x717, x624, x686); + let mut x720: u32 = 0; + let mut x721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x720, &mut x721, x719, x626, x688); + let mut x722: u32 = 0; + let mut x723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x722, &mut x723, x721, x628, x690); + let mut x724: u32 = 0; + let mut x725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x724, &mut x725, x723, x630, x692); + let mut x726: u32 = 0; + let mut x727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x726, + &mut x727, + x725, + ((x631 as u32) + ((x601 as u32) + ((x569 as u32) + x509))), + x694, + ); + let mut x728: u32 = 0; + let mut x729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x728, &mut x729, 0x0, x698, (arg1[6])); + let mut x730: u32 = 0; + let mut x731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x730, &mut x731, x729, x700, (0x0 as u32)); + let mut x732: u32 = 0; + let mut x733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x732, &mut x733, x731, x702, (0x0 as u32)); + let mut x734: u32 = 0; + let mut x735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x734, &mut x735, x733, x704, (0x0 as u32)); + let mut x736: u32 = 0; + let mut x737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x736, &mut x737, x735, x706, (0x0 as u32)); + let mut x738: u32 = 0; + let mut x739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x738, &mut x739, x737, x708, (0x0 as u32)); + let mut x740: u32 = 0; + let mut x741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x740, &mut x741, x739, x710, (0x0 as u32)); + let mut x742: u32 = 0; + let mut x743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x742, &mut x743, x741, x712, (0x0 as u32)); + let mut x744: u32 = 0; + let mut x745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x744, &mut x745, x743, x714, (0x0 as u32)); + let mut x746: u32 = 0; + let mut x747: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x746, &mut x747, x745, x716, (0x0 as u32)); + let mut x748: u32 = 0; + let mut x749: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x748, &mut x749, x747, x718, (0x0 as u32)); + let mut x750: u32 = 0; + let mut x751: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x750, &mut x751, x749, x720, (0x0 as u32)); + let mut x752: u32 = 0; + let mut x753: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x752, &mut x753, x751, x722, (0x0 as u32)); + let mut x754: u32 = 0; + let mut x755: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x754, &mut x755, x753, x724, (0x0 as u32)); + let mut x756: u32 = 0; + let mut x757: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x756, &mut x757, x755, x726, (0x0 as u32)); + let mut x758: u32 = 0; + let mut x759: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x758, &mut x759, x728, 0xf1b7027); + let mut x760: u32 = 0; + let mut x761: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x760, &mut x761, x758, 0xaadd9db8); + let mut x762: u32 = 0; + let mut x763: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x762, &mut x763, x758, 0xdbe9c48b); + let mut x764: u32 = 0; + let mut x765: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x764, &mut x765, x758, 0x3fd4e6ae); + let mut x766: u32 = 0; + let mut x767: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x766, &mut x767, x758, 0x33c9fc07); + let mut x768: u32 = 0; + let mut x769: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x768, &mut x769, x758, 0xcb308db3); + let mut x770: u32 = 0; + let mut x771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x770, &mut x771, x758, 0xb3c9d20e); + let mut x772: u32 = 0; + let mut x773: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x772, &mut x773, x758, 0xd6639cca); + let mut x774: u32 = 0; + let mut x775: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x774, &mut x775, x758, 0x70330870); + let mut x776: u32 = 0; + let mut x777: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x776, &mut x777, x758, 0x553e5c41); + let mut x778: u32 = 0; + let mut x779: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x778, &mut x779, x758, 0x4ca92619); + let mut x780: u32 = 0; + let mut x781: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x780, &mut x781, x758, 0x41866119); + let mut x782: u32 = 0; + let mut x783: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x782, &mut x783, x758, 0x7fac1047); + let mut x784: u32 = 0; + let mut x785: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x784, &mut x785, x758, 0x1db1d381); + let mut x786: u32 = 0; + let mut x787: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x786, &mut x787, x758, 0x85ddadd); + let mut x788: u32 = 0; + let mut x789: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x788, &mut x789, x758, 0xb5879682); + let mut x790: u32 = 0; + let mut x791: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x790, &mut x791, x758, 0x9ca90069); + let mut x792: u32 = 0; + let mut x793: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x792, &mut x793, 0x0, x791, x788); + let mut x794: u32 = 0; + let mut x795: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x794, &mut x795, x793, x789, x786); + let mut x796: u32 = 0; + let mut x797: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x796, &mut x797, x795, x787, x784); + let mut x798: u32 = 0; + let mut x799: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x798, &mut x799, x797, x785, x782); + let mut x800: u32 = 0; + let mut x801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x800, &mut x801, x799, x783, x780); + let mut x802: u32 = 0; + let mut x803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x802, &mut x803, x801, x781, x778); + let mut x804: u32 = 0; + let mut x805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x804, &mut x805, x803, x779, x776); + let mut x806: u32 = 0; + let mut x807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x806, &mut x807, x805, x777, x774); + let mut x808: u32 = 0; + let mut x809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x808, &mut x809, x807, x775, x772); + let mut x810: u32 = 0; + let mut x811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x810, &mut x811, x809, x773, x770); + let mut x812: u32 = 0; + let mut x813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x812, &mut x813, x811, x771, x768); + let mut x814: u32 = 0; + let mut x815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x814, &mut x815, x813, x769, x766); + let mut x816: u32 = 0; + let mut x817: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x816, &mut x817, x815, x767, x764); + let mut x818: u32 = 0; + let mut x819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x818, &mut x819, x817, x765, x762); + let mut x820: u32 = 0; + let mut x821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x820, &mut x821, x819, x763, x760); + let mut x822: u32 = 0; + let mut x823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x822, &mut x823, 0x0, x728, x790); + let mut x824: u32 = 0; + let mut x825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x824, &mut x825, x823, x730, x792); + let mut x826: u32 = 0; + let mut x827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x826, &mut x827, x825, x732, x794); + let mut x828: u32 = 0; + let mut x829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x828, &mut x829, x827, x734, x796); + let mut x830: u32 = 0; + let mut x831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x830, &mut x831, x829, x736, x798); + let mut x832: u32 = 0; + let mut x833: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x832, &mut x833, x831, x738, x800); + let mut x834: u32 = 0; + let mut x835: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x834, &mut x835, x833, x740, x802); + let mut x836: u32 = 0; + let mut x837: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x836, &mut x837, x835, x742, x804); + let mut x838: u32 = 0; + let mut x839: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x838, &mut x839, x837, x744, x806); + let mut x840: u32 = 0; + let mut x841: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x840, &mut x841, x839, x746, x808); + let mut x842: u32 = 0; + let mut x843: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x842, &mut x843, x841, x748, x810); + let mut x844: u32 = 0; + let mut x845: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x844, &mut x845, x843, x750, x812); + let mut x846: u32 = 0; + let mut x847: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x846, &mut x847, x845, x752, x814); + let mut x848: u32 = 0; + let mut x849: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x848, &mut x849, x847, x754, x816); + let mut x850: u32 = 0; + let mut x851: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x850, &mut x851, x849, x756, x818); + let mut x852: u32 = 0; + let mut x853: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x852, + &mut x853, + x851, + ((x757 as u32) + ((x727 as u32) + ((x695 as u32) + x635))), + x820, + ); + let mut x854: u32 = 0; + let mut x855: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x854, &mut x855, 0x0, x824, (arg1[7])); + let mut x856: u32 = 0; + let mut x857: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x856, &mut x857, x855, x826, (0x0 as u32)); + let mut x858: u32 = 0; + let mut x859: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x858, &mut x859, x857, x828, (0x0 as u32)); + let mut x860: u32 = 0; + let mut x861: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x860, &mut x861, x859, x830, (0x0 as u32)); + let mut x862: u32 = 0; + let mut x863: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x862, &mut x863, x861, x832, (0x0 as u32)); + let mut x864: u32 = 0; + let mut x865: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x864, &mut x865, x863, x834, (0x0 as u32)); + let mut x866: u32 = 0; + let mut x867: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x866, &mut x867, x865, x836, (0x0 as u32)); + let mut x868: u32 = 0; + let mut x869: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x868, &mut x869, x867, x838, (0x0 as u32)); + let mut x870: u32 = 0; + let mut x871: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x870, &mut x871, x869, x840, (0x0 as u32)); + let mut x872: u32 = 0; + let mut x873: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x872, &mut x873, x871, x842, (0x0 as u32)); + let mut x874: u32 = 0; + let mut x875: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x874, &mut x875, x873, x844, (0x0 as u32)); + let mut x876: u32 = 0; + let mut x877: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x876, &mut x877, x875, x846, (0x0 as u32)); + let mut x878: u32 = 0; + let mut x879: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x878, &mut x879, x877, x848, (0x0 as u32)); + let mut x880: u32 = 0; + let mut x881: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x880, &mut x881, x879, x850, (0x0 as u32)); + let mut x882: u32 = 0; + let mut x883: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x882, &mut x883, x881, x852, (0x0 as u32)); + let mut x884: u32 = 0; + let mut x885: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x884, &mut x885, x854, 0xf1b7027); + let mut x886: u32 = 0; + let mut x887: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x886, &mut x887, x884, 0xaadd9db8); + let mut x888: u32 = 0; + let mut x889: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x888, &mut x889, x884, 0xdbe9c48b); + let mut x890: u32 = 0; + let mut x891: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x890, &mut x891, x884, 0x3fd4e6ae); + let mut x892: u32 = 0; + let mut x893: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x892, &mut x893, x884, 0x33c9fc07); + let mut x894: u32 = 0; + let mut x895: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x894, &mut x895, x884, 0xcb308db3); + let mut x896: u32 = 0; + let mut x897: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x896, &mut x897, x884, 0xb3c9d20e); + let mut x898: u32 = 0; + let mut x899: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x898, &mut x899, x884, 0xd6639cca); + let mut x900: u32 = 0; + let mut x901: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x900, &mut x901, x884, 0x70330870); + let mut x902: u32 = 0; + let mut x903: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x902, &mut x903, x884, 0x553e5c41); + let mut x904: u32 = 0; + let mut x905: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x904, &mut x905, x884, 0x4ca92619); + let mut x906: u32 = 0; + let mut x907: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x906, &mut x907, x884, 0x41866119); + let mut x908: u32 = 0; + let mut x909: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x908, &mut x909, x884, 0x7fac1047); + let mut x910: u32 = 0; + let mut x911: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x910, &mut x911, x884, 0x1db1d381); + let mut x912: u32 = 0; + let mut x913: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x912, &mut x913, x884, 0x85ddadd); + let mut x914: u32 = 0; + let mut x915: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x914, &mut x915, x884, 0xb5879682); + let mut x916: u32 = 0; + let mut x917: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x916, &mut x917, x884, 0x9ca90069); + let mut x918: u32 = 0; + let mut x919: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x918, &mut x919, 0x0, x917, x914); + let mut x920: u32 = 0; + let mut x921: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x920, &mut x921, x919, x915, x912); + let mut x922: u32 = 0; + let mut x923: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x922, &mut x923, x921, x913, x910); + let mut x924: u32 = 0; + let mut x925: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x924, &mut x925, x923, x911, x908); + let mut x926: u32 = 0; + let mut x927: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x926, &mut x927, x925, x909, x906); + let mut x928: u32 = 0; + let mut x929: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x928, &mut x929, x927, x907, x904); + let mut x930: u32 = 0; + let mut x931: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x930, &mut x931, x929, x905, x902); + let mut x932: u32 = 0; + let mut x933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x932, &mut x933, x931, x903, x900); + let mut x934: u32 = 0; + let mut x935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x934, &mut x935, x933, x901, x898); + let mut x936: u32 = 0; + let mut x937: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x936, &mut x937, x935, x899, x896); + let mut x938: u32 = 0; + let mut x939: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x938, &mut x939, x937, x897, x894); + let mut x940: u32 = 0; + let mut x941: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x940, &mut x941, x939, x895, x892); + let mut x942: u32 = 0; + let mut x943: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x942, &mut x943, x941, x893, x890); + let mut x944: u32 = 0; + let mut x945: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x944, &mut x945, x943, x891, x888); + let mut x946: u32 = 0; + let mut x947: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x946, &mut x947, x945, x889, x886); + let mut x948: u32 = 0; + let mut x949: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x948, &mut x949, 0x0, x854, x916); + let mut x950: u32 = 0; + let mut x951: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x950, &mut x951, x949, x856, x918); + let mut x952: u32 = 0; + let mut x953: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x952, &mut x953, x951, x858, x920); + let mut x954: u32 = 0; + let mut x955: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x954, &mut x955, x953, x860, x922); + let mut x956: u32 = 0; + let mut x957: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x956, &mut x957, x955, x862, x924); + let mut x958: u32 = 0; + let mut x959: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x958, &mut x959, x957, x864, x926); + let mut x960: u32 = 0; + let mut x961: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x960, &mut x961, x959, x866, x928); + let mut x962: u32 = 0; + let mut x963: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x962, &mut x963, x961, x868, x930); + let mut x964: u32 = 0; + let mut x965: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x964, &mut x965, x963, x870, x932); + let mut x966: u32 = 0; + let mut x967: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x966, &mut x967, x965, x872, x934); + let mut x968: u32 = 0; + let mut x969: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x968, &mut x969, x967, x874, x936); + let mut x970: u32 = 0; + let mut x971: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x970, &mut x971, x969, x876, x938); + let mut x972: u32 = 0; + let mut x973: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x972, &mut x973, x971, x878, x940); + let mut x974: u32 = 0; + let mut x975: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x974, &mut x975, x973, x880, x942); + let mut x976: u32 = 0; + let mut x977: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x976, &mut x977, x975, x882, x944); + let mut x978: u32 = 0; + let mut x979: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x978, + &mut x979, + x977, + ((x883 as u32) + ((x853 as u32) + ((x821 as u32) + x761))), + x946, + ); + let mut x980: u32 = 0; + let mut x981: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x980, &mut x981, 0x0, x950, (arg1[8])); + let mut x982: u32 = 0; + let mut x983: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x982, &mut x983, x981, x952, (0x0 as u32)); + let mut x984: u32 = 0; + let mut x985: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x984, &mut x985, x983, x954, (0x0 as u32)); + let mut x986: u32 = 0; + let mut x987: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x986, &mut x987, x985, x956, (0x0 as u32)); + let mut x988: u32 = 0; + let mut x989: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x988, &mut x989, x987, x958, (0x0 as u32)); + let mut x990: u32 = 0; + let mut x991: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x990, &mut x991, x989, x960, (0x0 as u32)); + let mut x992: u32 = 0; + let mut x993: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x992, &mut x993, x991, x962, (0x0 as u32)); + let mut x994: u32 = 0; + let mut x995: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x994, &mut x995, x993, x964, (0x0 as u32)); + let mut x996: u32 = 0; + let mut x997: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x996, &mut x997, x995, x966, (0x0 as u32)); + let mut x998: u32 = 0; + let mut x999: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x998, &mut x999, x997, x968, (0x0 as u32)); + let mut x1000: u32 = 0; + let mut x1001: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1000, &mut x1001, x999, x970, (0x0 as u32)); + let mut x1002: u32 = 0; + let mut x1003: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1002, &mut x1003, x1001, x972, (0x0 as u32)); + let mut x1004: u32 = 0; + let mut x1005: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1004, &mut x1005, x1003, x974, (0x0 as u32)); + let mut x1006: u32 = 0; + let mut x1007: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1006, &mut x1007, x1005, x976, (0x0 as u32)); + let mut x1008: u32 = 0; + let mut x1009: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1008, &mut x1009, x1007, x978, (0x0 as u32)); + let mut x1010: u32 = 0; + let mut x1011: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1010, &mut x1011, x980, 0xf1b7027); + let mut x1012: u32 = 0; + let mut x1013: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1012, &mut x1013, x1010, 0xaadd9db8); + let mut x1014: u32 = 0; + let mut x1015: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1014, &mut x1015, x1010, 0xdbe9c48b); + let mut x1016: u32 = 0; + let mut x1017: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1016, &mut x1017, x1010, 0x3fd4e6ae); + let mut x1018: u32 = 0; + let mut x1019: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1018, &mut x1019, x1010, 0x33c9fc07); + let mut x1020: u32 = 0; + let mut x1021: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1020, &mut x1021, x1010, 0xcb308db3); + let mut x1022: u32 = 0; + let mut x1023: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1022, &mut x1023, x1010, 0xb3c9d20e); + let mut x1024: u32 = 0; + let mut x1025: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1024, &mut x1025, x1010, 0xd6639cca); + let mut x1026: u32 = 0; + let mut x1027: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1026, &mut x1027, x1010, 0x70330870); + let mut x1028: u32 = 0; + let mut x1029: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1028, &mut x1029, x1010, 0x553e5c41); + let mut x1030: u32 = 0; + let mut x1031: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1030, &mut x1031, x1010, 0x4ca92619); + let mut x1032: u32 = 0; + let mut x1033: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1032, &mut x1033, x1010, 0x41866119); + let mut x1034: u32 = 0; + let mut x1035: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1034, &mut x1035, x1010, 0x7fac1047); + let mut x1036: u32 = 0; + let mut x1037: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1036, &mut x1037, x1010, 0x1db1d381); + let mut x1038: u32 = 0; + let mut x1039: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1038, &mut x1039, x1010, 0x85ddadd); + let mut x1040: u32 = 0; + let mut x1041: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1040, &mut x1041, x1010, 0xb5879682); + let mut x1042: u32 = 0; + let mut x1043: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1042, &mut x1043, x1010, 0x9ca90069); + let mut x1044: u32 = 0; + let mut x1045: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1044, &mut x1045, 0x0, x1043, x1040); + let mut x1046: u32 = 0; + let mut x1047: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1046, &mut x1047, x1045, x1041, x1038); + let mut x1048: u32 = 0; + let mut x1049: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1048, &mut x1049, x1047, x1039, x1036); + let mut x1050: u32 = 0; + let mut x1051: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1050, &mut x1051, x1049, x1037, x1034); + let mut x1052: u32 = 0; + let mut x1053: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1052, &mut x1053, x1051, x1035, x1032); + let mut x1054: u32 = 0; + let mut x1055: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1054, &mut x1055, x1053, x1033, x1030); + let mut x1056: u32 = 0; + let mut x1057: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1056, &mut x1057, x1055, x1031, x1028); + let mut x1058: u32 = 0; + let mut x1059: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1058, &mut x1059, x1057, x1029, x1026); + let mut x1060: u32 = 0; + let mut x1061: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1060, &mut x1061, x1059, x1027, x1024); + let mut x1062: u32 = 0; + let mut x1063: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1062, &mut x1063, x1061, x1025, x1022); + let mut x1064: u32 = 0; + let mut x1065: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1064, &mut x1065, x1063, x1023, x1020); + let mut x1066: u32 = 0; + let mut x1067: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1066, &mut x1067, x1065, x1021, x1018); + let mut x1068: u32 = 0; + let mut x1069: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1068, &mut x1069, x1067, x1019, x1016); + let mut x1070: u32 = 0; + let mut x1071: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1070, &mut x1071, x1069, x1017, x1014); + let mut x1072: u32 = 0; + let mut x1073: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1072, &mut x1073, x1071, x1015, x1012); + let mut x1074: u32 = 0; + let mut x1075: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1074, &mut x1075, 0x0, x980, x1042); + let mut x1076: u32 = 0; + let mut x1077: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1076, &mut x1077, x1075, x982, x1044); + let mut x1078: u32 = 0; + let mut x1079: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1078, &mut x1079, x1077, x984, x1046); + let mut x1080: u32 = 0; + let mut x1081: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1080, &mut x1081, x1079, x986, x1048); + let mut x1082: u32 = 0; + let mut x1083: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1082, &mut x1083, x1081, x988, x1050); + let mut x1084: u32 = 0; + let mut x1085: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1084, &mut x1085, x1083, x990, x1052); + let mut x1086: u32 = 0; + let mut x1087: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1086, &mut x1087, x1085, x992, x1054); + let mut x1088: u32 = 0; + let mut x1089: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1088, &mut x1089, x1087, x994, x1056); + let mut x1090: u32 = 0; + let mut x1091: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1090, &mut x1091, x1089, x996, x1058); + let mut x1092: u32 = 0; + let mut x1093: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1092, &mut x1093, x1091, x998, x1060); + let mut x1094: u32 = 0; + let mut x1095: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1094, &mut x1095, x1093, x1000, x1062); + let mut x1096: u32 = 0; + let mut x1097: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1096, &mut x1097, x1095, x1002, x1064); + let mut x1098: u32 = 0; + let mut x1099: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1098, &mut x1099, x1097, x1004, x1066); + let mut x1100: u32 = 0; + let mut x1101: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1100, &mut x1101, x1099, x1006, x1068); + let mut x1102: u32 = 0; + let mut x1103: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1102, &mut x1103, x1101, x1008, x1070); + let mut x1104: u32 = 0; + let mut x1105: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1104, + &mut x1105, + x1103, + ((x1009 as u32) + ((x979 as u32) + ((x947 as u32) + x887))), + x1072, + ); + let mut x1106: u32 = 0; + let mut x1107: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1106, &mut x1107, 0x0, x1076, (arg1[9])); + let mut x1108: u32 = 0; + let mut x1109: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1108, &mut x1109, x1107, x1078, (0x0 as u32)); + let mut x1110: u32 = 0; + let mut x1111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1110, &mut x1111, x1109, x1080, (0x0 as u32)); + let mut x1112: u32 = 0; + let mut x1113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1112, &mut x1113, x1111, x1082, (0x0 as u32)); + let mut x1114: u32 = 0; + let mut x1115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1114, &mut x1115, x1113, x1084, (0x0 as u32)); + let mut x1116: u32 = 0; + let mut x1117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1116, &mut x1117, x1115, x1086, (0x0 as u32)); + let mut x1118: u32 = 0; + let mut x1119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1118, &mut x1119, x1117, x1088, (0x0 as u32)); + let mut x1120: u32 = 0; + let mut x1121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1120, &mut x1121, x1119, x1090, (0x0 as u32)); + let mut x1122: u32 = 0; + let mut x1123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1122, &mut x1123, x1121, x1092, (0x0 as u32)); + let mut x1124: u32 = 0; + let mut x1125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1124, &mut x1125, x1123, x1094, (0x0 as u32)); + let mut x1126: u32 = 0; + let mut x1127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1126, &mut x1127, x1125, x1096, (0x0 as u32)); + let mut x1128: u32 = 0; + let mut x1129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1128, &mut x1129, x1127, x1098, (0x0 as u32)); + let mut x1130: u32 = 0; + let mut x1131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1130, &mut x1131, x1129, x1100, (0x0 as u32)); + let mut x1132: u32 = 0; + let mut x1133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1132, &mut x1133, x1131, x1102, (0x0 as u32)); + let mut x1134: u32 = 0; + let mut x1135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1134, &mut x1135, x1133, x1104, (0x0 as u32)); + let mut x1136: u32 = 0; + let mut x1137: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1136, &mut x1137, x1106, 0xf1b7027); + let mut x1138: u32 = 0; + let mut x1139: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1138, &mut x1139, x1136, 0xaadd9db8); + let mut x1140: u32 = 0; + let mut x1141: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1140, &mut x1141, x1136, 0xdbe9c48b); + let mut x1142: u32 = 0; + let mut x1143: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1142, &mut x1143, x1136, 0x3fd4e6ae); + let mut x1144: u32 = 0; + let mut x1145: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1144, &mut x1145, x1136, 0x33c9fc07); + let mut x1146: u32 = 0; + let mut x1147: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1146, &mut x1147, x1136, 0xcb308db3); + let mut x1148: u32 = 0; + let mut x1149: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1148, &mut x1149, x1136, 0xb3c9d20e); + let mut x1150: u32 = 0; + let mut x1151: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1150, &mut x1151, x1136, 0xd6639cca); + let mut x1152: u32 = 0; + let mut x1153: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1152, &mut x1153, x1136, 0x70330870); + let mut x1154: u32 = 0; + let mut x1155: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1154, &mut x1155, x1136, 0x553e5c41); + let mut x1156: u32 = 0; + let mut x1157: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1156, &mut x1157, x1136, 0x4ca92619); + let mut x1158: u32 = 0; + let mut x1159: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1158, &mut x1159, x1136, 0x41866119); + let mut x1160: u32 = 0; + let mut x1161: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1160, &mut x1161, x1136, 0x7fac1047); + let mut x1162: u32 = 0; + let mut x1163: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1162, &mut x1163, x1136, 0x1db1d381); + let mut x1164: u32 = 0; + let mut x1165: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1164, &mut x1165, x1136, 0x85ddadd); + let mut x1166: u32 = 0; + let mut x1167: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1166, &mut x1167, x1136, 0xb5879682); + let mut x1168: u32 = 0; + let mut x1169: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1168, &mut x1169, x1136, 0x9ca90069); + let mut x1170: u32 = 0; + let mut x1171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1170, &mut x1171, 0x0, x1169, x1166); + let mut x1172: u32 = 0; + let mut x1173: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1172, &mut x1173, x1171, x1167, x1164); + let mut x1174: u32 = 0; + let mut x1175: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1174, &mut x1175, x1173, x1165, x1162); + let mut x1176: u32 = 0; + let mut x1177: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1176, &mut x1177, x1175, x1163, x1160); + let mut x1178: u32 = 0; + let mut x1179: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1178, &mut x1179, x1177, x1161, x1158); + let mut x1180: u32 = 0; + let mut x1181: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1180, &mut x1181, x1179, x1159, x1156); + let mut x1182: u32 = 0; + let mut x1183: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1182, &mut x1183, x1181, x1157, x1154); + let mut x1184: u32 = 0; + let mut x1185: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1184, &mut x1185, x1183, x1155, x1152); + let mut x1186: u32 = 0; + let mut x1187: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1186, &mut x1187, x1185, x1153, x1150); + let mut x1188: u32 = 0; + let mut x1189: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1188, &mut x1189, x1187, x1151, x1148); + let mut x1190: u32 = 0; + let mut x1191: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1190, &mut x1191, x1189, x1149, x1146); + let mut x1192: u32 = 0; + let mut x1193: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1192, &mut x1193, x1191, x1147, x1144); + let mut x1194: u32 = 0; + let mut x1195: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1194, &mut x1195, x1193, x1145, x1142); + let mut x1196: u32 = 0; + let mut x1197: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1196, &mut x1197, x1195, x1143, x1140); + let mut x1198: u32 = 0; + let mut x1199: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1198, &mut x1199, x1197, x1141, x1138); + let mut x1200: u32 = 0; + let mut x1201: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1200, &mut x1201, 0x0, x1106, x1168); + let mut x1202: u32 = 0; + let mut x1203: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1202, &mut x1203, x1201, x1108, x1170); + let mut x1204: u32 = 0; + let mut x1205: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1204, &mut x1205, x1203, x1110, x1172); + let mut x1206: u32 = 0; + let mut x1207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1206, &mut x1207, x1205, x1112, x1174); + let mut x1208: u32 = 0; + let mut x1209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1208, &mut x1209, x1207, x1114, x1176); + let mut x1210: u32 = 0; + let mut x1211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1210, &mut x1211, x1209, x1116, x1178); + let mut x1212: u32 = 0; + let mut x1213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1212, &mut x1213, x1211, x1118, x1180); + let mut x1214: u32 = 0; + let mut x1215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1214, &mut x1215, x1213, x1120, x1182); + let mut x1216: u32 = 0; + let mut x1217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1216, &mut x1217, x1215, x1122, x1184); + let mut x1218: u32 = 0; + let mut x1219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1218, &mut x1219, x1217, x1124, x1186); + let mut x1220: u32 = 0; + let mut x1221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1220, &mut x1221, x1219, x1126, x1188); + let mut x1222: u32 = 0; + let mut x1223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1222, &mut x1223, x1221, x1128, x1190); + let mut x1224: u32 = 0; + let mut x1225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1224, &mut x1225, x1223, x1130, x1192); + let mut x1226: u32 = 0; + let mut x1227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1226, &mut x1227, x1225, x1132, x1194); + let mut x1228: u32 = 0; + let mut x1229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1228, &mut x1229, x1227, x1134, x1196); + let mut x1230: u32 = 0; + let mut x1231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1230, + &mut x1231, + x1229, + ((x1135 as u32) + ((x1105 as u32) + ((x1073 as u32) + x1013))), + x1198, + ); + let mut x1232: u32 = 0; + let mut x1233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1232, &mut x1233, 0x0, x1202, (arg1[10])); + let mut x1234: u32 = 0; + let mut x1235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1234, &mut x1235, x1233, x1204, (0x0 as u32)); + let mut x1236: u32 = 0; + let mut x1237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1236, &mut x1237, x1235, x1206, (0x0 as u32)); + let mut x1238: u32 = 0; + let mut x1239: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1238, &mut x1239, x1237, x1208, (0x0 as u32)); + let mut x1240: u32 = 0; + let mut x1241: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1240, &mut x1241, x1239, x1210, (0x0 as u32)); + let mut x1242: u32 = 0; + let mut x1243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1242, &mut x1243, x1241, x1212, (0x0 as u32)); + let mut x1244: u32 = 0; + let mut x1245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1244, &mut x1245, x1243, x1214, (0x0 as u32)); + let mut x1246: u32 = 0; + let mut x1247: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1246, &mut x1247, x1245, x1216, (0x0 as u32)); + let mut x1248: u32 = 0; + let mut x1249: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1248, &mut x1249, x1247, x1218, (0x0 as u32)); + let mut x1250: u32 = 0; + let mut x1251: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1250, &mut x1251, x1249, x1220, (0x0 as u32)); + let mut x1252: u32 = 0; + let mut x1253: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1252, &mut x1253, x1251, x1222, (0x0 as u32)); + let mut x1254: u32 = 0; + let mut x1255: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1254, &mut x1255, x1253, x1224, (0x0 as u32)); + let mut x1256: u32 = 0; + let mut x1257: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1256, &mut x1257, x1255, x1226, (0x0 as u32)); + let mut x1258: u32 = 0; + let mut x1259: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1258, &mut x1259, x1257, x1228, (0x0 as u32)); + let mut x1260: u32 = 0; + let mut x1261: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1260, &mut x1261, x1259, x1230, (0x0 as u32)); + let mut x1262: u32 = 0; + let mut x1263: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1262, &mut x1263, x1232, 0xf1b7027); + let mut x1264: u32 = 0; + let mut x1265: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1264, &mut x1265, x1262, 0xaadd9db8); + let mut x1266: u32 = 0; + let mut x1267: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1266, &mut x1267, x1262, 0xdbe9c48b); + let mut x1268: u32 = 0; + let mut x1269: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1268, &mut x1269, x1262, 0x3fd4e6ae); + let mut x1270: u32 = 0; + let mut x1271: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1270, &mut x1271, x1262, 0x33c9fc07); + let mut x1272: u32 = 0; + let mut x1273: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1272, &mut x1273, x1262, 0xcb308db3); + let mut x1274: u32 = 0; + let mut x1275: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1274, &mut x1275, x1262, 0xb3c9d20e); + let mut x1276: u32 = 0; + let mut x1277: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1276, &mut x1277, x1262, 0xd6639cca); + let mut x1278: u32 = 0; + let mut x1279: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1278, &mut x1279, x1262, 0x70330870); + let mut x1280: u32 = 0; + let mut x1281: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1280, &mut x1281, x1262, 0x553e5c41); + let mut x1282: u32 = 0; + let mut x1283: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1282, &mut x1283, x1262, 0x4ca92619); + let mut x1284: u32 = 0; + let mut x1285: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1284, &mut x1285, x1262, 0x41866119); + let mut x1286: u32 = 0; + let mut x1287: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1286, &mut x1287, x1262, 0x7fac1047); + let mut x1288: u32 = 0; + let mut x1289: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1288, &mut x1289, x1262, 0x1db1d381); + let mut x1290: u32 = 0; + let mut x1291: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1290, &mut x1291, x1262, 0x85ddadd); + let mut x1292: u32 = 0; + let mut x1293: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1292, &mut x1293, x1262, 0xb5879682); + let mut x1294: u32 = 0; + let mut x1295: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1294, &mut x1295, x1262, 0x9ca90069); + let mut x1296: u32 = 0; + let mut x1297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1296, &mut x1297, 0x0, x1295, x1292); + let mut x1298: u32 = 0; + let mut x1299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1298, &mut x1299, x1297, x1293, x1290); + let mut x1300: u32 = 0; + let mut x1301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1300, &mut x1301, x1299, x1291, x1288); + let mut x1302: u32 = 0; + let mut x1303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1302, &mut x1303, x1301, x1289, x1286); + let mut x1304: u32 = 0; + let mut x1305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1304, &mut x1305, x1303, x1287, x1284); + let mut x1306: u32 = 0; + let mut x1307: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1306, &mut x1307, x1305, x1285, x1282); + let mut x1308: u32 = 0; + let mut x1309: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1308, &mut x1309, x1307, x1283, x1280); + let mut x1310: u32 = 0; + let mut x1311: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1310, &mut x1311, x1309, x1281, x1278); + let mut x1312: u32 = 0; + let mut x1313: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1312, &mut x1313, x1311, x1279, x1276); + let mut x1314: u32 = 0; + let mut x1315: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1314, &mut x1315, x1313, x1277, x1274); + let mut x1316: u32 = 0; + let mut x1317: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1316, &mut x1317, x1315, x1275, x1272); + let mut x1318: u32 = 0; + let mut x1319: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1318, &mut x1319, x1317, x1273, x1270); + let mut x1320: u32 = 0; + let mut x1321: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1320, &mut x1321, x1319, x1271, x1268); + let mut x1322: u32 = 0; + let mut x1323: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1322, &mut x1323, x1321, x1269, x1266); + let mut x1324: u32 = 0; + let mut x1325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1324, &mut x1325, x1323, x1267, x1264); + let mut x1326: u32 = 0; + let mut x1327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1326, &mut x1327, 0x0, x1232, x1294); + let mut x1328: u32 = 0; + let mut x1329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1328, &mut x1329, x1327, x1234, x1296); + let mut x1330: u32 = 0; + let mut x1331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1330, &mut x1331, x1329, x1236, x1298); + let mut x1332: u32 = 0; + let mut x1333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1332, &mut x1333, x1331, x1238, x1300); + let mut x1334: u32 = 0; + let mut x1335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1334, &mut x1335, x1333, x1240, x1302); + let mut x1336: u32 = 0; + let mut x1337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1336, &mut x1337, x1335, x1242, x1304); + let mut x1338: u32 = 0; + let mut x1339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1338, &mut x1339, x1337, x1244, x1306); + let mut x1340: u32 = 0; + let mut x1341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1340, &mut x1341, x1339, x1246, x1308); + let mut x1342: u32 = 0; + let mut x1343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1342, &mut x1343, x1341, x1248, x1310); + let mut x1344: u32 = 0; + let mut x1345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1344, &mut x1345, x1343, x1250, x1312); + let mut x1346: u32 = 0; + let mut x1347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1346, &mut x1347, x1345, x1252, x1314); + let mut x1348: u32 = 0; + let mut x1349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1348, &mut x1349, x1347, x1254, x1316); + let mut x1350: u32 = 0; + let mut x1351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1350, &mut x1351, x1349, x1256, x1318); + let mut x1352: u32 = 0; + let mut x1353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1352, &mut x1353, x1351, x1258, x1320); + let mut x1354: u32 = 0; + let mut x1355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1354, &mut x1355, x1353, x1260, x1322); + let mut x1356: u32 = 0; + let mut x1357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1356, + &mut x1357, + x1355, + ((x1261 as u32) + ((x1231 as u32) + ((x1199 as u32) + x1139))), + x1324, + ); + let mut x1358: u32 = 0; + let mut x1359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1358, &mut x1359, 0x0, x1328, (arg1[11])); + let mut x1360: u32 = 0; + let mut x1361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1360, &mut x1361, x1359, x1330, (0x0 as u32)); + let mut x1362: u32 = 0; + let mut x1363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1362, &mut x1363, x1361, x1332, (0x0 as u32)); + let mut x1364: u32 = 0; + let mut x1365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1364, &mut x1365, x1363, x1334, (0x0 as u32)); + let mut x1366: u32 = 0; + let mut x1367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1366, &mut x1367, x1365, x1336, (0x0 as u32)); + let mut x1368: u32 = 0; + let mut x1369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1368, &mut x1369, x1367, x1338, (0x0 as u32)); + let mut x1370: u32 = 0; + let mut x1371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1370, &mut x1371, x1369, x1340, (0x0 as u32)); + let mut x1372: u32 = 0; + let mut x1373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1372, &mut x1373, x1371, x1342, (0x0 as u32)); + let mut x1374: u32 = 0; + let mut x1375: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1374, &mut x1375, x1373, x1344, (0x0 as u32)); + let mut x1376: u32 = 0; + let mut x1377: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1376, &mut x1377, x1375, x1346, (0x0 as u32)); + let mut x1378: u32 = 0; + let mut x1379: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1378, &mut x1379, x1377, x1348, (0x0 as u32)); + let mut x1380: u32 = 0; + let mut x1381: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1380, &mut x1381, x1379, x1350, (0x0 as u32)); + let mut x1382: u32 = 0; + let mut x1383: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1382, &mut x1383, x1381, x1352, (0x0 as u32)); + let mut x1384: u32 = 0; + let mut x1385: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1384, &mut x1385, x1383, x1354, (0x0 as u32)); + let mut x1386: u32 = 0; + let mut x1387: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1386, &mut x1387, x1385, x1356, (0x0 as u32)); + let mut x1388: u32 = 0; + let mut x1389: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1388, &mut x1389, x1358, 0xf1b7027); + let mut x1390: u32 = 0; + let mut x1391: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1390, &mut x1391, x1388, 0xaadd9db8); + let mut x1392: u32 = 0; + let mut x1393: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1392, &mut x1393, x1388, 0xdbe9c48b); + let mut x1394: u32 = 0; + let mut x1395: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1394, &mut x1395, x1388, 0x3fd4e6ae); + let mut x1396: u32 = 0; + let mut x1397: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1396, &mut x1397, x1388, 0x33c9fc07); + let mut x1398: u32 = 0; + let mut x1399: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1398, &mut x1399, x1388, 0xcb308db3); + let mut x1400: u32 = 0; + let mut x1401: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1400, &mut x1401, x1388, 0xb3c9d20e); + let mut x1402: u32 = 0; + let mut x1403: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1402, &mut x1403, x1388, 0xd6639cca); + let mut x1404: u32 = 0; + let mut x1405: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1404, &mut x1405, x1388, 0x70330870); + let mut x1406: u32 = 0; + let mut x1407: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1406, &mut x1407, x1388, 0x553e5c41); + let mut x1408: u32 = 0; + let mut x1409: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1408, &mut x1409, x1388, 0x4ca92619); + let mut x1410: u32 = 0; + let mut x1411: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1410, &mut x1411, x1388, 0x41866119); + let mut x1412: u32 = 0; + let mut x1413: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1412, &mut x1413, x1388, 0x7fac1047); + let mut x1414: u32 = 0; + let mut x1415: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1414, &mut x1415, x1388, 0x1db1d381); + let mut x1416: u32 = 0; + let mut x1417: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1416, &mut x1417, x1388, 0x85ddadd); + let mut x1418: u32 = 0; + let mut x1419: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1418, &mut x1419, x1388, 0xb5879682); + let mut x1420: u32 = 0; + let mut x1421: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1420, &mut x1421, x1388, 0x9ca90069); + let mut x1422: u32 = 0; + let mut x1423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1422, &mut x1423, 0x0, x1421, x1418); + let mut x1424: u32 = 0; + let mut x1425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1424, &mut x1425, x1423, x1419, x1416); + let mut x1426: u32 = 0; + let mut x1427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1426, &mut x1427, x1425, x1417, x1414); + let mut x1428: u32 = 0; + let mut x1429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1428, &mut x1429, x1427, x1415, x1412); + let mut x1430: u32 = 0; + let mut x1431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1430, &mut x1431, x1429, x1413, x1410); + let mut x1432: u32 = 0; + let mut x1433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1432, &mut x1433, x1431, x1411, x1408); + let mut x1434: u32 = 0; + let mut x1435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1434, &mut x1435, x1433, x1409, x1406); + let mut x1436: u32 = 0; + let mut x1437: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1436, &mut x1437, x1435, x1407, x1404); + let mut x1438: u32 = 0; + let mut x1439: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1438, &mut x1439, x1437, x1405, x1402); + let mut x1440: u32 = 0; + let mut x1441: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1440, &mut x1441, x1439, x1403, x1400); + let mut x1442: u32 = 0; + let mut x1443: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1442, &mut x1443, x1441, x1401, x1398); + let mut x1444: u32 = 0; + let mut x1445: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1444, &mut x1445, x1443, x1399, x1396); + let mut x1446: u32 = 0; + let mut x1447: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1446, &mut x1447, x1445, x1397, x1394); + let mut x1448: u32 = 0; + let mut x1449: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1448, &mut x1449, x1447, x1395, x1392); + let mut x1450: u32 = 0; + let mut x1451: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1450, &mut x1451, x1449, x1393, x1390); + let mut x1452: u32 = 0; + let mut x1453: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1452, &mut x1453, 0x0, x1358, x1420); + let mut x1454: u32 = 0; + let mut x1455: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1454, &mut x1455, x1453, x1360, x1422); + let mut x1456: u32 = 0; + let mut x1457: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1456, &mut x1457, x1455, x1362, x1424); + let mut x1458: u32 = 0; + let mut x1459: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1458, &mut x1459, x1457, x1364, x1426); + let mut x1460: u32 = 0; + let mut x1461: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1460, &mut x1461, x1459, x1366, x1428); + let mut x1462: u32 = 0; + let mut x1463: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1462, &mut x1463, x1461, x1368, x1430); + let mut x1464: u32 = 0; + let mut x1465: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1464, &mut x1465, x1463, x1370, x1432); + let mut x1466: u32 = 0; + let mut x1467: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1466, &mut x1467, x1465, x1372, x1434); + let mut x1468: u32 = 0; + let mut x1469: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1468, &mut x1469, x1467, x1374, x1436); + let mut x1470: u32 = 0; + let mut x1471: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1470, &mut x1471, x1469, x1376, x1438); + let mut x1472: u32 = 0; + let mut x1473: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1472, &mut x1473, x1471, x1378, x1440); + let mut x1474: u32 = 0; + let mut x1475: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1474, &mut x1475, x1473, x1380, x1442); + let mut x1476: u32 = 0; + let mut x1477: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1476, &mut x1477, x1475, x1382, x1444); + let mut x1478: u32 = 0; + let mut x1479: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1478, &mut x1479, x1477, x1384, x1446); + let mut x1480: u32 = 0; + let mut x1481: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1480, &mut x1481, x1479, x1386, x1448); + let mut x1482: u32 = 0; + let mut x1483: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1482, + &mut x1483, + x1481, + ((x1387 as u32) + ((x1357 as u32) + ((x1325 as u32) + x1265))), + x1450, + ); + let mut x1484: u32 = 0; + let mut x1485: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1484, &mut x1485, 0x0, x1454, (arg1[12])); + let mut x1486: u32 = 0; + let mut x1487: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1486, &mut x1487, x1485, x1456, (0x0 as u32)); + let mut x1488: u32 = 0; + let mut x1489: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1488, &mut x1489, x1487, x1458, (0x0 as u32)); + let mut x1490: u32 = 0; + let mut x1491: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1490, &mut x1491, x1489, x1460, (0x0 as u32)); + let mut x1492: u32 = 0; + let mut x1493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1492, &mut x1493, x1491, x1462, (0x0 as u32)); + let mut x1494: u32 = 0; + let mut x1495: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1494, &mut x1495, x1493, x1464, (0x0 as u32)); + let mut x1496: u32 = 0; + let mut x1497: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1496, &mut x1497, x1495, x1466, (0x0 as u32)); + let mut x1498: u32 = 0; + let mut x1499: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1498, &mut x1499, x1497, x1468, (0x0 as u32)); + let mut x1500: u32 = 0; + let mut x1501: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1500, &mut x1501, x1499, x1470, (0x0 as u32)); + let mut x1502: u32 = 0; + let mut x1503: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1502, &mut x1503, x1501, x1472, (0x0 as u32)); + let mut x1504: u32 = 0; + let mut x1505: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1504, &mut x1505, x1503, x1474, (0x0 as u32)); + let mut x1506: u32 = 0; + let mut x1507: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1506, &mut x1507, x1505, x1476, (0x0 as u32)); + let mut x1508: u32 = 0; + let mut x1509: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1508, &mut x1509, x1507, x1478, (0x0 as u32)); + let mut x1510: u32 = 0; + let mut x1511: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1510, &mut x1511, x1509, x1480, (0x0 as u32)); + let mut x1512: u32 = 0; + let mut x1513: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1512, &mut x1513, x1511, x1482, (0x0 as u32)); + let mut x1514: u32 = 0; + let mut x1515: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1514, &mut x1515, x1484, 0xf1b7027); + let mut x1516: u32 = 0; + let mut x1517: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1516, &mut x1517, x1514, 0xaadd9db8); + let mut x1518: u32 = 0; + let mut x1519: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1518, &mut x1519, x1514, 0xdbe9c48b); + let mut x1520: u32 = 0; + let mut x1521: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1520, &mut x1521, x1514, 0x3fd4e6ae); + let mut x1522: u32 = 0; + let mut x1523: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1522, &mut x1523, x1514, 0x33c9fc07); + let mut x1524: u32 = 0; + let mut x1525: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1524, &mut x1525, x1514, 0xcb308db3); + let mut x1526: u32 = 0; + let mut x1527: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1526, &mut x1527, x1514, 0xb3c9d20e); + let mut x1528: u32 = 0; + let mut x1529: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1528, &mut x1529, x1514, 0xd6639cca); + let mut x1530: u32 = 0; + let mut x1531: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1530, &mut x1531, x1514, 0x70330870); + let mut x1532: u32 = 0; + let mut x1533: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1532, &mut x1533, x1514, 0x553e5c41); + let mut x1534: u32 = 0; + let mut x1535: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1534, &mut x1535, x1514, 0x4ca92619); + let mut x1536: u32 = 0; + let mut x1537: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1536, &mut x1537, x1514, 0x41866119); + let mut x1538: u32 = 0; + let mut x1539: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1538, &mut x1539, x1514, 0x7fac1047); + let mut x1540: u32 = 0; + let mut x1541: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1540, &mut x1541, x1514, 0x1db1d381); + let mut x1542: u32 = 0; + let mut x1543: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1542, &mut x1543, x1514, 0x85ddadd); + let mut x1544: u32 = 0; + let mut x1545: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1544, &mut x1545, x1514, 0xb5879682); + let mut x1546: u32 = 0; + let mut x1547: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1546, &mut x1547, x1514, 0x9ca90069); + let mut x1548: u32 = 0; + let mut x1549: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1548, &mut x1549, 0x0, x1547, x1544); + let mut x1550: u32 = 0; + let mut x1551: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1550, &mut x1551, x1549, x1545, x1542); + let mut x1552: u32 = 0; + let mut x1553: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1552, &mut x1553, x1551, x1543, x1540); + let mut x1554: u32 = 0; + let mut x1555: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1554, &mut x1555, x1553, x1541, x1538); + let mut x1556: u32 = 0; + let mut x1557: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1556, &mut x1557, x1555, x1539, x1536); + let mut x1558: u32 = 0; + let mut x1559: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1558, &mut x1559, x1557, x1537, x1534); + let mut x1560: u32 = 0; + let mut x1561: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1560, &mut x1561, x1559, x1535, x1532); + let mut x1562: u32 = 0; + let mut x1563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1562, &mut x1563, x1561, x1533, x1530); + let mut x1564: u32 = 0; + let mut x1565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1564, &mut x1565, x1563, x1531, x1528); + let mut x1566: u32 = 0; + let mut x1567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1566, &mut x1567, x1565, x1529, x1526); + let mut x1568: u32 = 0; + let mut x1569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1568, &mut x1569, x1567, x1527, x1524); + let mut x1570: u32 = 0; + let mut x1571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1570, &mut x1571, x1569, x1525, x1522); + let mut x1572: u32 = 0; + let mut x1573: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1572, &mut x1573, x1571, x1523, x1520); + let mut x1574: u32 = 0; + let mut x1575: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1574, &mut x1575, x1573, x1521, x1518); + let mut x1576: u32 = 0; + let mut x1577: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1576, &mut x1577, x1575, x1519, x1516); + let mut x1578: u32 = 0; + let mut x1579: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1578, &mut x1579, 0x0, x1484, x1546); + let mut x1580: u32 = 0; + let mut x1581: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1580, &mut x1581, x1579, x1486, x1548); + let mut x1582: u32 = 0; + let mut x1583: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1582, &mut x1583, x1581, x1488, x1550); + let mut x1584: u32 = 0; + let mut x1585: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1584, &mut x1585, x1583, x1490, x1552); + let mut x1586: u32 = 0; + let mut x1587: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1586, &mut x1587, x1585, x1492, x1554); + let mut x1588: u32 = 0; + let mut x1589: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1588, &mut x1589, x1587, x1494, x1556); + let mut x1590: u32 = 0; + let mut x1591: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1590, &mut x1591, x1589, x1496, x1558); + let mut x1592: u32 = 0; + let mut x1593: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1592, &mut x1593, x1591, x1498, x1560); + let mut x1594: u32 = 0; + let mut x1595: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1594, &mut x1595, x1593, x1500, x1562); + let mut x1596: u32 = 0; + let mut x1597: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1596, &mut x1597, x1595, x1502, x1564); + let mut x1598: u32 = 0; + let mut x1599: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1598, &mut x1599, x1597, x1504, x1566); + let mut x1600: u32 = 0; + let mut x1601: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1600, &mut x1601, x1599, x1506, x1568); + let mut x1602: u32 = 0; + let mut x1603: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1602, &mut x1603, x1601, x1508, x1570); + let mut x1604: u32 = 0; + let mut x1605: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1604, &mut x1605, x1603, x1510, x1572); + let mut x1606: u32 = 0; + let mut x1607: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1606, &mut x1607, x1605, x1512, x1574); + let mut x1608: u32 = 0; + let mut x1609: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1608, + &mut x1609, + x1607, + ((x1513 as u32) + ((x1483 as u32) + ((x1451 as u32) + x1391))), + x1576, + ); + let mut x1610: u32 = 0; + let mut x1611: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1610, &mut x1611, 0x0, x1580, (arg1[13])); + let mut x1612: u32 = 0; + let mut x1613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1612, &mut x1613, x1611, x1582, (0x0 as u32)); + let mut x1614: u32 = 0; + let mut x1615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1614, &mut x1615, x1613, x1584, (0x0 as u32)); + let mut x1616: u32 = 0; + let mut x1617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1616, &mut x1617, x1615, x1586, (0x0 as u32)); + let mut x1618: u32 = 0; + let mut x1619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1618, &mut x1619, x1617, x1588, (0x0 as u32)); + let mut x1620: u32 = 0; + let mut x1621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1620, &mut x1621, x1619, x1590, (0x0 as u32)); + let mut x1622: u32 = 0; + let mut x1623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1622, &mut x1623, x1621, x1592, (0x0 as u32)); + let mut x1624: u32 = 0; + let mut x1625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1624, &mut x1625, x1623, x1594, (0x0 as u32)); + let mut x1626: u32 = 0; + let mut x1627: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1626, &mut x1627, x1625, x1596, (0x0 as u32)); + let mut x1628: u32 = 0; + let mut x1629: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1628, &mut x1629, x1627, x1598, (0x0 as u32)); + let mut x1630: u32 = 0; + let mut x1631: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1630, &mut x1631, x1629, x1600, (0x0 as u32)); + let mut x1632: u32 = 0; + let mut x1633: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1632, &mut x1633, x1631, x1602, (0x0 as u32)); + let mut x1634: u32 = 0; + let mut x1635: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1634, &mut x1635, x1633, x1604, (0x0 as u32)); + let mut x1636: u32 = 0; + let mut x1637: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1636, &mut x1637, x1635, x1606, (0x0 as u32)); + let mut x1638: u32 = 0; + let mut x1639: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1638, &mut x1639, x1637, x1608, (0x0 as u32)); + let mut x1640: u32 = 0; + let mut x1641: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1640, &mut x1641, x1610, 0xf1b7027); + let mut x1642: u32 = 0; + let mut x1643: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1642, &mut x1643, x1640, 0xaadd9db8); + let mut x1644: u32 = 0; + let mut x1645: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1644, &mut x1645, x1640, 0xdbe9c48b); + let mut x1646: u32 = 0; + let mut x1647: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1646, &mut x1647, x1640, 0x3fd4e6ae); + let mut x1648: u32 = 0; + let mut x1649: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1648, &mut x1649, x1640, 0x33c9fc07); + let mut x1650: u32 = 0; + let mut x1651: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1650, &mut x1651, x1640, 0xcb308db3); + let mut x1652: u32 = 0; + let mut x1653: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1652, &mut x1653, x1640, 0xb3c9d20e); + let mut x1654: u32 = 0; + let mut x1655: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1654, &mut x1655, x1640, 0xd6639cca); + let mut x1656: u32 = 0; + let mut x1657: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1656, &mut x1657, x1640, 0x70330870); + let mut x1658: u32 = 0; + let mut x1659: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1658, &mut x1659, x1640, 0x553e5c41); + let mut x1660: u32 = 0; + let mut x1661: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1660, &mut x1661, x1640, 0x4ca92619); + let mut x1662: u32 = 0; + let mut x1663: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1662, &mut x1663, x1640, 0x41866119); + let mut x1664: u32 = 0; + let mut x1665: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1664, &mut x1665, x1640, 0x7fac1047); + let mut x1666: u32 = 0; + let mut x1667: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1666, &mut x1667, x1640, 0x1db1d381); + let mut x1668: u32 = 0; + let mut x1669: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1668, &mut x1669, x1640, 0x85ddadd); + let mut x1670: u32 = 0; + let mut x1671: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1670, &mut x1671, x1640, 0xb5879682); + let mut x1672: u32 = 0; + let mut x1673: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1672, &mut x1673, x1640, 0x9ca90069); + let mut x1674: u32 = 0; + let mut x1675: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1674, &mut x1675, 0x0, x1673, x1670); + let mut x1676: u32 = 0; + let mut x1677: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1676, &mut x1677, x1675, x1671, x1668); + let mut x1678: u32 = 0; + let mut x1679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1678, &mut x1679, x1677, x1669, x1666); + let mut x1680: u32 = 0; + let mut x1681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1680, &mut x1681, x1679, x1667, x1664); + let mut x1682: u32 = 0; + let mut x1683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1682, &mut x1683, x1681, x1665, x1662); + let mut x1684: u32 = 0; + let mut x1685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1684, &mut x1685, x1683, x1663, x1660); + let mut x1686: u32 = 0; + let mut x1687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1686, &mut x1687, x1685, x1661, x1658); + let mut x1688: u32 = 0; + let mut x1689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1688, &mut x1689, x1687, x1659, x1656); + let mut x1690: u32 = 0; + let mut x1691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1690, &mut x1691, x1689, x1657, x1654); + let mut x1692: u32 = 0; + let mut x1693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1692, &mut x1693, x1691, x1655, x1652); + let mut x1694: u32 = 0; + let mut x1695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1694, &mut x1695, x1693, x1653, x1650); + let mut x1696: u32 = 0; + let mut x1697: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1696, &mut x1697, x1695, x1651, x1648); + let mut x1698: u32 = 0; + let mut x1699: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1698, &mut x1699, x1697, x1649, x1646); + let mut x1700: u32 = 0; + let mut x1701: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1700, &mut x1701, x1699, x1647, x1644); + let mut x1702: u32 = 0; + let mut x1703: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1702, &mut x1703, x1701, x1645, x1642); + let mut x1704: u32 = 0; + let mut x1705: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1704, &mut x1705, 0x0, x1610, x1672); + let mut x1706: u32 = 0; + let mut x1707: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1706, &mut x1707, x1705, x1612, x1674); + let mut x1708: u32 = 0; + let mut x1709: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1708, &mut x1709, x1707, x1614, x1676); + let mut x1710: u32 = 0; + let mut x1711: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1710, &mut x1711, x1709, x1616, x1678); + let mut x1712: u32 = 0; + let mut x1713: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1712, &mut x1713, x1711, x1618, x1680); + let mut x1714: u32 = 0; + let mut x1715: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1714, &mut x1715, x1713, x1620, x1682); + let mut x1716: u32 = 0; + let mut x1717: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1716, &mut x1717, x1715, x1622, x1684); + let mut x1718: u32 = 0; + let mut x1719: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1718, &mut x1719, x1717, x1624, x1686); + let mut x1720: u32 = 0; + let mut x1721: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1720, &mut x1721, x1719, x1626, x1688); + let mut x1722: u32 = 0; + let mut x1723: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1722, &mut x1723, x1721, x1628, x1690); + let mut x1724: u32 = 0; + let mut x1725: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1724, &mut x1725, x1723, x1630, x1692); + let mut x1726: u32 = 0; + let mut x1727: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1726, &mut x1727, x1725, x1632, x1694); + let mut x1728: u32 = 0; + let mut x1729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1728, &mut x1729, x1727, x1634, x1696); + let mut x1730: u32 = 0; + let mut x1731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1730, &mut x1731, x1729, x1636, x1698); + let mut x1732: u32 = 0; + let mut x1733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1732, &mut x1733, x1731, x1638, x1700); + let mut x1734: u32 = 0; + let mut x1735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1734, + &mut x1735, + x1733, + ((x1639 as u32) + ((x1609 as u32) + ((x1577 as u32) + x1517))), + x1702, + ); + let mut x1736: u32 = 0; + let mut x1737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1736, &mut x1737, 0x0, x1706, (arg1[14])); + let mut x1738: u32 = 0; + let mut x1739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1738, &mut x1739, x1737, x1708, (0x0 as u32)); + let mut x1740: u32 = 0; + let mut x1741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1740, &mut x1741, x1739, x1710, (0x0 as u32)); + let mut x1742: u32 = 0; + let mut x1743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1742, &mut x1743, x1741, x1712, (0x0 as u32)); + let mut x1744: u32 = 0; + let mut x1745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1744, &mut x1745, x1743, x1714, (0x0 as u32)); + let mut x1746: u32 = 0; + let mut x1747: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1746, &mut x1747, x1745, x1716, (0x0 as u32)); + let mut x1748: u32 = 0; + let mut x1749: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1748, &mut x1749, x1747, x1718, (0x0 as u32)); + let mut x1750: u32 = 0; + let mut x1751: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1750, &mut x1751, x1749, x1720, (0x0 as u32)); + let mut x1752: u32 = 0; + let mut x1753: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1752, &mut x1753, x1751, x1722, (0x0 as u32)); + let mut x1754: u32 = 0; + let mut x1755: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1754, &mut x1755, x1753, x1724, (0x0 as u32)); + let mut x1756: u32 = 0; + let mut x1757: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1756, &mut x1757, x1755, x1726, (0x0 as u32)); + let mut x1758: u32 = 0; + let mut x1759: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1758, &mut x1759, x1757, x1728, (0x0 as u32)); + let mut x1760: u32 = 0; + let mut x1761: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1760, &mut x1761, x1759, x1730, (0x0 as u32)); + let mut x1762: u32 = 0; + let mut x1763: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1762, &mut x1763, x1761, x1732, (0x0 as u32)); + let mut x1764: u32 = 0; + let mut x1765: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1764, &mut x1765, x1763, x1734, (0x0 as u32)); + let mut x1766: u32 = 0; + let mut x1767: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1766, &mut x1767, x1736, 0xf1b7027); + let mut x1768: u32 = 0; + let mut x1769: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1768, &mut x1769, x1766, 0xaadd9db8); + let mut x1770: u32 = 0; + let mut x1771: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1770, &mut x1771, x1766, 0xdbe9c48b); + let mut x1772: u32 = 0; + let mut x1773: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1772, &mut x1773, x1766, 0x3fd4e6ae); + let mut x1774: u32 = 0; + let mut x1775: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1774, &mut x1775, x1766, 0x33c9fc07); + let mut x1776: u32 = 0; + let mut x1777: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1776, &mut x1777, x1766, 0xcb308db3); + let mut x1778: u32 = 0; + let mut x1779: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1778, &mut x1779, x1766, 0xb3c9d20e); + let mut x1780: u32 = 0; + let mut x1781: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1780, &mut x1781, x1766, 0xd6639cca); + let mut x1782: u32 = 0; + let mut x1783: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1782, &mut x1783, x1766, 0x70330870); + let mut x1784: u32 = 0; + let mut x1785: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1784, &mut x1785, x1766, 0x553e5c41); + let mut x1786: u32 = 0; + let mut x1787: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1786, &mut x1787, x1766, 0x4ca92619); + let mut x1788: u32 = 0; + let mut x1789: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1788, &mut x1789, x1766, 0x41866119); + let mut x1790: u32 = 0; + let mut x1791: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1790, &mut x1791, x1766, 0x7fac1047); + let mut x1792: u32 = 0; + let mut x1793: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1792, &mut x1793, x1766, 0x1db1d381); + let mut x1794: u32 = 0; + let mut x1795: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1794, &mut x1795, x1766, 0x85ddadd); + let mut x1796: u32 = 0; + let mut x1797: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1796, &mut x1797, x1766, 0xb5879682); + let mut x1798: u32 = 0; + let mut x1799: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1798, &mut x1799, x1766, 0x9ca90069); + let mut x1800: u32 = 0; + let mut x1801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1800, &mut x1801, 0x0, x1799, x1796); + let mut x1802: u32 = 0; + let mut x1803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1802, &mut x1803, x1801, x1797, x1794); + let mut x1804: u32 = 0; + let mut x1805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1804, &mut x1805, x1803, x1795, x1792); + let mut x1806: u32 = 0; + let mut x1807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1806, &mut x1807, x1805, x1793, x1790); + let mut x1808: u32 = 0; + let mut x1809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1808, &mut x1809, x1807, x1791, x1788); + let mut x1810: u32 = 0; + let mut x1811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1810, &mut x1811, x1809, x1789, x1786); + let mut x1812: u32 = 0; + let mut x1813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1812, &mut x1813, x1811, x1787, x1784); + let mut x1814: u32 = 0; + let mut x1815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1814, &mut x1815, x1813, x1785, x1782); + let mut x1816: u32 = 0; + let mut x1817: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1816, &mut x1817, x1815, x1783, x1780); + let mut x1818: u32 = 0; + let mut x1819: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1818, &mut x1819, x1817, x1781, x1778); + let mut x1820: u32 = 0; + let mut x1821: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1820, &mut x1821, x1819, x1779, x1776); + let mut x1822: u32 = 0; + let mut x1823: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1822, &mut x1823, x1821, x1777, x1774); + let mut x1824: u32 = 0; + let mut x1825: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1824, &mut x1825, x1823, x1775, x1772); + let mut x1826: u32 = 0; + let mut x1827: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1826, &mut x1827, x1825, x1773, x1770); + let mut x1828: u32 = 0; + let mut x1829: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1828, &mut x1829, x1827, x1771, x1768); + let mut x1830: u32 = 0; + let mut x1831: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1830, &mut x1831, 0x0, x1736, x1798); + let mut x1832: u32 = 0; + let mut x1833: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1832, &mut x1833, x1831, x1738, x1800); + let mut x1834: u32 = 0; + let mut x1835: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1834, &mut x1835, x1833, x1740, x1802); + let mut x1836: u32 = 0; + let mut x1837: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1836, &mut x1837, x1835, x1742, x1804); + let mut x1838: u32 = 0; + let mut x1839: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1838, &mut x1839, x1837, x1744, x1806); + let mut x1840: u32 = 0; + let mut x1841: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1840, &mut x1841, x1839, x1746, x1808); + let mut x1842: u32 = 0; + let mut x1843: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1842, &mut x1843, x1841, x1748, x1810); + let mut x1844: u32 = 0; + let mut x1845: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1844, &mut x1845, x1843, x1750, x1812); + let mut x1846: u32 = 0; + let mut x1847: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1846, &mut x1847, x1845, x1752, x1814); + let mut x1848: u32 = 0; + let mut x1849: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1848, &mut x1849, x1847, x1754, x1816); + let mut x1850: u32 = 0; + let mut x1851: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1850, &mut x1851, x1849, x1756, x1818); + let mut x1852: u32 = 0; + let mut x1853: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1852, &mut x1853, x1851, x1758, x1820); + let mut x1854: u32 = 0; + let mut x1855: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1854, &mut x1855, x1853, x1760, x1822); + let mut x1856: u32 = 0; + let mut x1857: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1856, &mut x1857, x1855, x1762, x1824); + let mut x1858: u32 = 0; + let mut x1859: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1858, &mut x1859, x1857, x1764, x1826); + let mut x1860: u32 = 0; + let mut x1861: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1860, + &mut x1861, + x1859, + ((x1765 as u32) + ((x1735 as u32) + ((x1703 as u32) + x1643))), + x1828, + ); + let mut x1862: u32 = 0; + let mut x1863: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1862, &mut x1863, 0x0, x1832, (arg1[15])); + let mut x1864: u32 = 0; + let mut x1865: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1864, &mut x1865, x1863, x1834, (0x0 as u32)); + let mut x1866: u32 = 0; + let mut x1867: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1866, &mut x1867, x1865, x1836, (0x0 as u32)); + let mut x1868: u32 = 0; + let mut x1869: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1868, &mut x1869, x1867, x1838, (0x0 as u32)); + let mut x1870: u32 = 0; + let mut x1871: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1870, &mut x1871, x1869, x1840, (0x0 as u32)); + let mut x1872: u32 = 0; + let mut x1873: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1872, &mut x1873, x1871, x1842, (0x0 as u32)); + let mut x1874: u32 = 0; + let mut x1875: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1874, &mut x1875, x1873, x1844, (0x0 as u32)); + let mut x1876: u32 = 0; + let mut x1877: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1876, &mut x1877, x1875, x1846, (0x0 as u32)); + let mut x1878: u32 = 0; + let mut x1879: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1878, &mut x1879, x1877, x1848, (0x0 as u32)); + let mut x1880: u32 = 0; + let mut x1881: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1880, &mut x1881, x1879, x1850, (0x0 as u32)); + let mut x1882: u32 = 0; + let mut x1883: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1882, &mut x1883, x1881, x1852, (0x0 as u32)); + let mut x1884: u32 = 0; + let mut x1885: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1884, &mut x1885, x1883, x1854, (0x0 as u32)); + let mut x1886: u32 = 0; + let mut x1887: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1886, &mut x1887, x1885, x1856, (0x0 as u32)); + let mut x1888: u32 = 0; + let mut x1889: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1888, &mut x1889, x1887, x1858, (0x0 as u32)); + let mut x1890: u32 = 0; + let mut x1891: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1890, &mut x1891, x1889, x1860, (0x0 as u32)); + let mut x1892: u32 = 0; + let mut x1893: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1892, &mut x1893, x1862, 0xf1b7027); + let mut x1894: u32 = 0; + let mut x1895: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1894, &mut x1895, x1892, 0xaadd9db8); + let mut x1896: u32 = 0; + let mut x1897: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1896, &mut x1897, x1892, 0xdbe9c48b); + let mut x1898: u32 = 0; + let mut x1899: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1898, &mut x1899, x1892, 0x3fd4e6ae); + let mut x1900: u32 = 0; + let mut x1901: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1900, &mut x1901, x1892, 0x33c9fc07); + let mut x1902: u32 = 0; + let mut x1903: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1902, &mut x1903, x1892, 0xcb308db3); + let mut x1904: u32 = 0; + let mut x1905: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1904, &mut x1905, x1892, 0xb3c9d20e); + let mut x1906: u32 = 0; + let mut x1907: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1906, &mut x1907, x1892, 0xd6639cca); + let mut x1908: u32 = 0; + let mut x1909: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1908, &mut x1909, x1892, 0x70330870); + let mut x1910: u32 = 0; + let mut x1911: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1910, &mut x1911, x1892, 0x553e5c41); + let mut x1912: u32 = 0; + let mut x1913: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1912, &mut x1913, x1892, 0x4ca92619); + let mut x1914: u32 = 0; + let mut x1915: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1914, &mut x1915, x1892, 0x41866119); + let mut x1916: u32 = 0; + let mut x1917: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1916, &mut x1917, x1892, 0x7fac1047); + let mut x1918: u32 = 0; + let mut x1919: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1918, &mut x1919, x1892, 0x1db1d381); + let mut x1920: u32 = 0; + let mut x1921: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1920, &mut x1921, x1892, 0x85ddadd); + let mut x1922: u32 = 0; + let mut x1923: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1922, &mut x1923, x1892, 0xb5879682); + let mut x1924: u32 = 0; + let mut x1925: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1924, &mut x1925, x1892, 0x9ca90069); + let mut x1926: u32 = 0; + let mut x1927: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1926, &mut x1927, 0x0, x1925, x1922); + let mut x1928: u32 = 0; + let mut x1929: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1928, &mut x1929, x1927, x1923, x1920); + let mut x1930: u32 = 0; + let mut x1931: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1930, &mut x1931, x1929, x1921, x1918); + let mut x1932: u32 = 0; + let mut x1933: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1932, &mut x1933, x1931, x1919, x1916); + let mut x1934: u32 = 0; + let mut x1935: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1934, &mut x1935, x1933, x1917, x1914); + let mut x1936: u32 = 0; + let mut x1937: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1936, &mut x1937, x1935, x1915, x1912); + let mut x1938: u32 = 0; + let mut x1939: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1938, &mut x1939, x1937, x1913, x1910); + let mut x1940: u32 = 0; + let mut x1941: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1940, &mut x1941, x1939, x1911, x1908); + let mut x1942: u32 = 0; + let mut x1943: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1942, &mut x1943, x1941, x1909, x1906); + let mut x1944: u32 = 0; + let mut x1945: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1944, &mut x1945, x1943, x1907, x1904); + let mut x1946: u32 = 0; + let mut x1947: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1946, &mut x1947, x1945, x1905, x1902); + let mut x1948: u32 = 0; + let mut x1949: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1948, &mut x1949, x1947, x1903, x1900); + let mut x1950: u32 = 0; + let mut x1951: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1950, &mut x1951, x1949, x1901, x1898); + let mut x1952: u32 = 0; + let mut x1953: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1952, &mut x1953, x1951, x1899, x1896); + let mut x1954: u32 = 0; + let mut x1955: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1954, &mut x1955, x1953, x1897, x1894); + let mut x1956: u32 = 0; + let mut x1957: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1956, &mut x1957, 0x0, x1862, x1924); + let mut x1958: u32 = 0; + let mut x1959: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1958, &mut x1959, x1957, x1864, x1926); + let mut x1960: u32 = 0; + let mut x1961: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1960, &mut x1961, x1959, x1866, x1928); + let mut x1962: u32 = 0; + let mut x1963: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1962, &mut x1963, x1961, x1868, x1930); + let mut x1964: u32 = 0; + let mut x1965: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1964, &mut x1965, x1963, x1870, x1932); + let mut x1966: u32 = 0; + let mut x1967: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1966, &mut x1967, x1965, x1872, x1934); + let mut x1968: u32 = 0; + let mut x1969: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1968, &mut x1969, x1967, x1874, x1936); + let mut x1970: u32 = 0; + let mut x1971: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1970, &mut x1971, x1969, x1876, x1938); + let mut x1972: u32 = 0; + let mut x1973: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1972, &mut x1973, x1971, x1878, x1940); + let mut x1974: u32 = 0; + let mut x1975: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1974, &mut x1975, x1973, x1880, x1942); + let mut x1976: u32 = 0; + let mut x1977: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1976, &mut x1977, x1975, x1882, x1944); + let mut x1978: u32 = 0; + let mut x1979: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1978, &mut x1979, x1977, x1884, x1946); + let mut x1980: u32 = 0; + let mut x1981: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1980, &mut x1981, x1979, x1886, x1948); + let mut x1982: u32 = 0; + let mut x1983: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1982, &mut x1983, x1981, x1888, x1950); + let mut x1984: u32 = 0; + let mut x1985: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1984, &mut x1985, x1983, x1890, x1952); + let mut x1986: u32 = 0; + let mut x1987: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1986, + &mut x1987, + x1985, + ((x1891 as u32) + ((x1861 as u32) + ((x1829 as u32) + x1769))), + x1954, + ); + let x1988: u32 = ((x1987 as u32) + ((x1955 as u32) + x1895)); + let mut x1989: u32 = 0; + let mut x1990: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1989, &mut x1990, 0x0, x1958, 0x9ca90069); + let mut x1991: u32 = 0; + let mut x1992: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1991, &mut x1992, x1990, x1960, 0xb5879682); + let mut x1993: u32 = 0; + let mut x1994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1993, &mut x1994, x1992, x1962, 0x85ddadd); + let mut x1995: u32 = 0; + let mut x1996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1995, &mut x1996, x1994, x1964, 0x1db1d381); + let mut x1997: u32 = 0; + let mut x1998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1997, &mut x1998, x1996, x1966, 0x7fac1047); + let mut x1999: u32 = 0; + let mut x2000: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x1999, &mut x2000, x1998, x1968, 0x41866119); + let mut x2001: u32 = 0; + let mut x2002: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2001, &mut x2002, x2000, x1970, 0x4ca92619); + let mut x2003: u32 = 0; + let mut x2004: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2003, &mut x2004, x2002, x1972, 0x553e5c41); + let mut x2005: u32 = 0; + let mut x2006: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2005, &mut x2006, x2004, x1974, 0x70330870); + let mut x2007: u32 = 0; + let mut x2008: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2007, &mut x2008, x2006, x1976, 0xd6639cca); + let mut x2009: u32 = 0; + let mut x2010: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2009, &mut x2010, x2008, x1978, 0xb3c9d20e); + let mut x2011: u32 = 0; + let mut x2012: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2011, &mut x2012, x2010, x1980, 0xcb308db3); + let mut x2013: u32 = 0; + let mut x2014: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2013, &mut x2014, x2012, x1982, 0x33c9fc07); + let mut x2015: u32 = 0; + let mut x2016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2015, &mut x2016, x2014, x1984, 0x3fd4e6ae); + let mut x2017: u32 = 0; + let mut x2018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2017, &mut x2018, x2016, x1986, 0xdbe9c48b); + let mut x2019: u32 = 0; + let mut x2020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2019, &mut x2020, x2018, x1988, 0xaadd9db8); + let mut x2021: u32 = 0; + let mut x2022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x2021, &mut x2022, x2020, (0x0 as u32), (0x0 as u32)); + let mut x2023: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2023, x2022, x1989, x1958); + let mut x2024: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2024, x2022, x1991, x1960); + let mut x2025: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2025, x2022, x1993, x1962); + let mut x2026: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2026, x2022, x1995, x1964); + let mut x2027: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2027, x2022, x1997, x1966); + let mut x2028: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2028, x2022, x1999, x1968); + let mut x2029: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2029, x2022, x2001, x1970); + let mut x2030: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2030, x2022, x2003, x1972); + let mut x2031: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2031, x2022, x2005, x1974); + let mut x2032: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2032, x2022, x2007, x1976); + let mut x2033: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2033, x2022, x2009, x1978); + let mut x2034: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2034, x2022, x2011, x1980); + let mut x2035: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2035, x2022, x2013, x1982); + let mut x2036: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2036, x2022, x2015, x1984); + let mut x2037: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2037, x2022, x2017, x1986); + let mut x2038: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2038, x2022, x2019, x1988); + out1[0] = x2023; + out1[1] = x2024; + out1[2] = x2025; + out1[3] = x2026; + out1[4] = x2027; + out1[5] = x2028; + out1[6] = x2029; + out1[7] = x2030; + out1[8] = x2031; + out1[9] = x2032; + out1[10] = x2033; + out1[11] = x2034; + out1[12] = x2035; + out1[13] = x2036; + out1[14] = x2037; + out1[15] = x2038; +} + +/// The function fiat_bp512_scalar_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_to_montgomery( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_non_montgomery_domain_field_element, +) { + let x1: u32 = (arg1[1]); + let x2: u32 = (arg1[2]); + let x3: u32 = (arg1[3]); + let x4: u32 = (arg1[4]); + let x5: u32 = (arg1[5]); + let x6: u32 = (arg1[6]); + let x7: u32 = (arg1[7]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[9]); + let x10: u32 = (arg1[10]); + let x11: u32 = (arg1[11]); + let x12: u32 = (arg1[12]); + let x13: u32 = (arg1[13]); + let x14: u32 = (arg1[14]); + let x15: u32 = (arg1[15]); + let x16: u32 = (arg1[0]); + let mut x17: u32 = 0; + let mut x18: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x17, &mut x18, x16, 0xa794586a); + let mut x19: u32 = 0; + let mut x20: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x19, &mut x20, x16, 0x718407b0); + let mut x21: u32 = 0; + let mut x22: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x21, &mut x22, x16, 0x95df1b4c); + let mut x23: u32 = 0; + let mut x24: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x23, &mut x24, x16, 0x194b2e56); + let mut x25: u32 = 0; + let mut x26: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x25, &mut x26, x16, 0x723c37a2); + let mut x27: u32 = 0; + let mut x28: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x27, &mut x28, x16, 0x2f16bbdf); + let mut x29: u32 = 0; + let mut x30: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x29, &mut x30, x16, 0xd7f9cc26); + let mut x31: u32 = 0; + let mut x32: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x31, &mut x32, x16, 0x3b790de3); + let mut x33: u32 = 0; + let mut x34: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x33, &mut x34, x16, 0xa6f230c7); + let mut x35: u32 = 0; + let mut x36: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x35, &mut x36, x16, 0x2f0207e8); + let mut x37: u32 = 0; + let mut x38: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x37, &mut x38, x16, 0x3ec64bd0); + let mut x39: u32 = 0; + let mut x40: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x39, &mut x40, x16, 0x33b7627f); + let mut x41: u32 = 0; + let mut x42: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x41, &mut x42, x16, 0x886b758); + let mut x43: u32 = 0; + let mut x44: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x43, &mut x44, x16, 0x95283ddd); + let mut x45: u32 = 0; + let mut x46: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x45, &mut x46, x16, 0xd2a3681e); + let mut x47: u32 = 0; + let mut x48: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x47, &mut x48, x16, 0xcda81671); + let mut x49: u32 = 0; + let mut x50: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x49, &mut x50, 0x0, x48, x45); + let mut x51: u32 = 0; + let mut x52: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x51, &mut x52, x50, x46, x43); + let mut x53: u32 = 0; + let mut x54: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x53, &mut x54, x52, x44, x41); + let mut x55: u32 = 0; + let mut x56: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x55, &mut x56, x54, x42, x39); + let mut x57: u32 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x57, &mut x58, x56, x40, x37); + let mut x59: u32 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x59, &mut x60, x58, x38, x35); + let mut x61: u32 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x61, &mut x62, x60, x36, x33); + let mut x63: u32 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x63, &mut x64, x62, x34, x31); + let mut x65: u32 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x65, &mut x66, x64, x32, x29); + let mut x67: u32 = 0; + let mut x68: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x67, &mut x68, x66, x30, x27); + let mut x69: u32 = 0; + let mut x70: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x69, &mut x70, x68, x28, x25); + let mut x71: u32 = 0; + let mut x72: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x71, &mut x72, x70, x26, x23); + let mut x73: u32 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x73, &mut x74, x72, x24, x21); + let mut x75: u32 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x75, &mut x76, x74, x22, x19); + let mut x77: u32 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x77, &mut x78, x76, x20, x17); + let mut x79: u32 = 0; + let mut x80: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x79, &mut x80, x47, 0xf1b7027); + let mut x81: u32 = 0; + let mut x82: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x81, &mut x82, x79, 0xaadd9db8); + let mut x83: u32 = 0; + let mut x84: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x83, &mut x84, x79, 0xdbe9c48b); + let mut x85: u32 = 0; + let mut x86: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x85, &mut x86, x79, 0x3fd4e6ae); + let mut x87: u32 = 0; + let mut x88: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x87, &mut x88, x79, 0x33c9fc07); + let mut x89: u32 = 0; + let mut x90: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x89, &mut x90, x79, 0xcb308db3); + let mut x91: u32 = 0; + let mut x92: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x91, &mut x92, x79, 0xb3c9d20e); + let mut x93: u32 = 0; + let mut x94: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x93, &mut x94, x79, 0xd6639cca); + let mut x95: u32 = 0; + let mut x96: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x95, &mut x96, x79, 0x70330870); + let mut x97: u32 = 0; + let mut x98: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x97, &mut x98, x79, 0x553e5c41); + let mut x99: u32 = 0; + let mut x100: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x99, &mut x100, x79, 0x4ca92619); + let mut x101: u32 = 0; + let mut x102: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x101, &mut x102, x79, 0x41866119); + let mut x103: u32 = 0; + let mut x104: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x103, &mut x104, x79, 0x7fac1047); + let mut x105: u32 = 0; + let mut x106: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x105, &mut x106, x79, 0x1db1d381); + let mut x107: u32 = 0; + let mut x108: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x107, &mut x108, x79, 0x85ddadd); + let mut x109: u32 = 0; + let mut x110: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x109, &mut x110, x79, 0xb5879682); + let mut x111: u32 = 0; + let mut x112: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x111, &mut x112, x79, 0x9ca90069); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x113, &mut x114, 0x0, x112, x109); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x115, &mut x116, x114, x110, x107); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x117, &mut x118, x116, x108, x105); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x119, &mut x120, x118, x106, x103); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x121, &mut x122, x120, x104, x101); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x123, &mut x124, x122, x102, x99); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x125, &mut x126, x124, x100, x97); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x127, &mut x128, x126, x98, x95); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x129, &mut x130, x128, x96, x93); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x131, &mut x132, x130, x94, x91); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x133, &mut x134, x132, x92, x89); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x135, &mut x136, x134, x90, x87); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x137, &mut x138, x136, x88, x85); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x139, &mut x140, x138, x86, x83); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x141, &mut x142, x140, x84, x81); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x143, &mut x144, 0x0, x47, x111); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x145, &mut x146, x144, x49, x113); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x147, &mut x148, x146, x51, x115); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x149, &mut x150, x148, x53, x117); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x151, &mut x152, x150, x55, x119); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x153, &mut x154, x152, x57, x121); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x155, &mut x156, x154, x59, x123); + let mut x157: u32 = 0; + let mut x158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x157, &mut x158, x156, x61, x125); + let mut x159: u32 = 0; + let mut x160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x159, &mut x160, x158, x63, x127); + let mut x161: u32 = 0; + let mut x162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x161, &mut x162, x160, x65, x129); + let mut x163: u32 = 0; + let mut x164: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x163, &mut x164, x162, x67, x131); + let mut x165: u32 = 0; + let mut x166: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x165, &mut x166, x164, x69, x133); + let mut x167: u32 = 0; + let mut x168: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x167, &mut x168, x166, x71, x135); + let mut x169: u32 = 0; + let mut x170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x169, &mut x170, x168, x73, x137); + let mut x171: u32 = 0; + let mut x172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x171, &mut x172, x170, x75, x139); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x173, &mut x174, x172, x77, x141); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x175, + &mut x176, + x174, + ((x78 as u32) + x18), + ((x142 as u32) + x82), + ); + let mut x177: u32 = 0; + let mut x178: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x177, &mut x178, x1, 0xa794586a); + let mut x179: u32 = 0; + let mut x180: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x179, &mut x180, x1, 0x718407b0); + let mut x181: u32 = 0; + let mut x182: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x181, &mut x182, x1, 0x95df1b4c); + let mut x183: u32 = 0; + let mut x184: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x183, &mut x184, x1, 0x194b2e56); + let mut x185: u32 = 0; + let mut x186: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x185, &mut x186, x1, 0x723c37a2); + let mut x187: u32 = 0; + let mut x188: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x187, &mut x188, x1, 0x2f16bbdf); + let mut x189: u32 = 0; + let mut x190: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x189, &mut x190, x1, 0xd7f9cc26); + let mut x191: u32 = 0; + let mut x192: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x191, &mut x192, x1, 0x3b790de3); + let mut x193: u32 = 0; + let mut x194: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x193, &mut x194, x1, 0xa6f230c7); + let mut x195: u32 = 0; + let mut x196: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x195, &mut x196, x1, 0x2f0207e8); + let mut x197: u32 = 0; + let mut x198: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x197, &mut x198, x1, 0x3ec64bd0); + let mut x199: u32 = 0; + let mut x200: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x199, &mut x200, x1, 0x33b7627f); + let mut x201: u32 = 0; + let mut x202: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x201, &mut x202, x1, 0x886b758); + let mut x203: u32 = 0; + let mut x204: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x203, &mut x204, x1, 0x95283ddd); + let mut x205: u32 = 0; + let mut x206: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x205, &mut x206, x1, 0xd2a3681e); + let mut x207: u32 = 0; + let mut x208: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x207, &mut x208, x1, 0xcda81671); + let mut x209: u32 = 0; + let mut x210: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x209, &mut x210, 0x0, x208, x205); + let mut x211: u32 = 0; + let mut x212: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x211, &mut x212, x210, x206, x203); + let mut x213: u32 = 0; + let mut x214: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x213, &mut x214, x212, x204, x201); + let mut x215: u32 = 0; + let mut x216: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x215, &mut x216, x214, x202, x199); + let mut x217: u32 = 0; + let mut x218: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x217, &mut x218, x216, x200, x197); + let mut x219: u32 = 0; + let mut x220: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x219, &mut x220, x218, x198, x195); + let mut x221: u32 = 0; + let mut x222: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x221, &mut x222, x220, x196, x193); + let mut x223: u32 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x223, &mut x224, x222, x194, x191); + let mut x225: u32 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x225, &mut x226, x224, x192, x189); + let mut x227: u32 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x227, &mut x228, x226, x190, x187); + let mut x229: u32 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x229, &mut x230, x228, x188, x185); + let mut x231: u32 = 0; + let mut x232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x231, &mut x232, x230, x186, x183); + let mut x233: u32 = 0; + let mut x234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x233, &mut x234, x232, x184, x181); + let mut x235: u32 = 0; + let mut x236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x235, &mut x236, x234, x182, x179); + let mut x237: u32 = 0; + let mut x238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x237, &mut x238, x236, x180, x177); + let mut x239: u32 = 0; + let mut x240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x239, &mut x240, 0x0, x145, x207); + let mut x241: u32 = 0; + let mut x242: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x241, &mut x242, x240, x147, x209); + let mut x243: u32 = 0; + let mut x244: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x243, &mut x244, x242, x149, x211); + let mut x245: u32 = 0; + let mut x246: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x245, &mut x246, x244, x151, x213); + let mut x247: u32 = 0; + let mut x248: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x247, &mut x248, x246, x153, x215); + let mut x249: u32 = 0; + let mut x250: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x249, &mut x250, x248, x155, x217); + let mut x251: u32 = 0; + let mut x252: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x251, &mut x252, x250, x157, x219); + let mut x253: u32 = 0; + let mut x254: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x253, &mut x254, x252, x159, x221); + let mut x255: u32 = 0; + let mut x256: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x255, &mut x256, x254, x161, x223); + let mut x257: u32 = 0; + let mut x258: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x257, &mut x258, x256, x163, x225); + let mut x259: u32 = 0; + let mut x260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x259, &mut x260, x258, x165, x227); + let mut x261: u32 = 0; + let mut x262: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x261, &mut x262, x260, x167, x229); + let mut x263: u32 = 0; + let mut x264: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x263, &mut x264, x262, x169, x231); + let mut x265: u32 = 0; + let mut x266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x265, &mut x266, x264, x171, x233); + let mut x267: u32 = 0; + let mut x268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x267, &mut x268, x266, x173, x235); + let mut x269: u32 = 0; + let mut x270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x269, &mut x270, x268, x175, x237); + let mut x271: u32 = 0; + let mut x272: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x271, &mut x272, x239, 0xf1b7027); + let mut x273: u32 = 0; + let mut x274: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x273, &mut x274, x271, 0xaadd9db8); + let mut x275: u32 = 0; + let mut x276: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x275, &mut x276, x271, 0xdbe9c48b); + let mut x277: u32 = 0; + let mut x278: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x277, &mut x278, x271, 0x3fd4e6ae); + let mut x279: u32 = 0; + let mut x280: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x279, &mut x280, x271, 0x33c9fc07); + let mut x281: u32 = 0; + let mut x282: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x281, &mut x282, x271, 0xcb308db3); + let mut x283: u32 = 0; + let mut x284: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x283, &mut x284, x271, 0xb3c9d20e); + let mut x285: u32 = 0; + let mut x286: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x285, &mut x286, x271, 0xd6639cca); + let mut x287: u32 = 0; + let mut x288: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x287, &mut x288, x271, 0x70330870); + let mut x289: u32 = 0; + let mut x290: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x289, &mut x290, x271, 0x553e5c41); + let mut x291: u32 = 0; + let mut x292: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x291, &mut x292, x271, 0x4ca92619); + let mut x293: u32 = 0; + let mut x294: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x293, &mut x294, x271, 0x41866119); + let mut x295: u32 = 0; + let mut x296: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x295, &mut x296, x271, 0x7fac1047); + let mut x297: u32 = 0; + let mut x298: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x297, &mut x298, x271, 0x1db1d381); + let mut x299: u32 = 0; + let mut x300: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x299, &mut x300, x271, 0x85ddadd); + let mut x301: u32 = 0; + let mut x302: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x301, &mut x302, x271, 0xb5879682); + let mut x303: u32 = 0; + let mut x304: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x303, &mut x304, x271, 0x9ca90069); + let mut x305: u32 = 0; + let mut x306: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x305, &mut x306, 0x0, x304, x301); + let mut x307: u32 = 0; + let mut x308: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x307, &mut x308, x306, x302, x299); + let mut x309: u32 = 0; + let mut x310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x309, &mut x310, x308, x300, x297); + let mut x311: u32 = 0; + let mut x312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x311, &mut x312, x310, x298, x295); + let mut x313: u32 = 0; + let mut x314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x313, &mut x314, x312, x296, x293); + let mut x315: u32 = 0; + let mut x316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x315, &mut x316, x314, x294, x291); + let mut x317: u32 = 0; + let mut x318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x317, &mut x318, x316, x292, x289); + let mut x319: u32 = 0; + let mut x320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x319, &mut x320, x318, x290, x287); + let mut x321: u32 = 0; + let mut x322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x321, &mut x322, x320, x288, x285); + let mut x323: u32 = 0; + let mut x324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x323, &mut x324, x322, x286, x283); + let mut x325: u32 = 0; + let mut x326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x325, &mut x326, x324, x284, x281); + let mut x327: u32 = 0; + let mut x328: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x327, &mut x328, x326, x282, x279); + let mut x329: u32 = 0; + let mut x330: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x329, &mut x330, x328, x280, x277); + let mut x331: u32 = 0; + let mut x332: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x331, &mut x332, x330, x278, x275); + let mut x333: u32 = 0; + let mut x334: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x333, &mut x334, x332, x276, x273); + let mut x335: u32 = 0; + let mut x336: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x335, &mut x336, 0x0, x239, x303); + let mut x337: u32 = 0; + let mut x338: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x337, &mut x338, x336, x241, x305); + let mut x339: u32 = 0; + let mut x340: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x339, &mut x340, x338, x243, x307); + let mut x341: u32 = 0; + let mut x342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x341, &mut x342, x340, x245, x309); + let mut x343: u32 = 0; + let mut x344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x343, &mut x344, x342, x247, x311); + let mut x345: u32 = 0; + let mut x346: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x345, &mut x346, x344, x249, x313); + let mut x347: u32 = 0; + let mut x348: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x347, &mut x348, x346, x251, x315); + let mut x349: u32 = 0; + let mut x350: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x349, &mut x350, x348, x253, x317); + let mut x351: u32 = 0; + let mut x352: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x351, &mut x352, x350, x255, x319); + let mut x353: u32 = 0; + let mut x354: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x353, &mut x354, x352, x257, x321); + let mut x355: u32 = 0; + let mut x356: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x355, &mut x356, x354, x259, x323); + let mut x357: u32 = 0; + let mut x358: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x357, &mut x358, x356, x261, x325); + let mut x359: u32 = 0; + let mut x360: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x359, &mut x360, x358, x263, x327); + let mut x361: u32 = 0; + let mut x362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x361, &mut x362, x360, x265, x329); + let mut x363: u32 = 0; + let mut x364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x363, &mut x364, x362, x267, x331); + let mut x365: u32 = 0; + let mut x366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x365, &mut x366, x364, x269, x333); + let mut x367: u32 = 0; + let mut x368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x367, + &mut x368, + x366, + (((x270 as u32) + (x176 as u32)) + ((x238 as u32) + x178)), + ((x334 as u32) + x274), + ); + let mut x369: u32 = 0; + let mut x370: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x369, &mut x370, x2, 0xa794586a); + let mut x371: u32 = 0; + let mut x372: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x371, &mut x372, x2, 0x718407b0); + let mut x373: u32 = 0; + let mut x374: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x373, &mut x374, x2, 0x95df1b4c); + let mut x375: u32 = 0; + let mut x376: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x375, &mut x376, x2, 0x194b2e56); + let mut x377: u32 = 0; + let mut x378: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x377, &mut x378, x2, 0x723c37a2); + let mut x379: u32 = 0; + let mut x380: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x379, &mut x380, x2, 0x2f16bbdf); + let mut x381: u32 = 0; + let mut x382: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x381, &mut x382, x2, 0xd7f9cc26); + let mut x383: u32 = 0; + let mut x384: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x383, &mut x384, x2, 0x3b790de3); + let mut x385: u32 = 0; + let mut x386: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x385, &mut x386, x2, 0xa6f230c7); + let mut x387: u32 = 0; + let mut x388: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x387, &mut x388, x2, 0x2f0207e8); + let mut x389: u32 = 0; + let mut x390: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x389, &mut x390, x2, 0x3ec64bd0); + let mut x391: u32 = 0; + let mut x392: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x391, &mut x392, x2, 0x33b7627f); + let mut x393: u32 = 0; + let mut x394: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x393, &mut x394, x2, 0x886b758); + let mut x395: u32 = 0; + let mut x396: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x395, &mut x396, x2, 0x95283ddd); + let mut x397: u32 = 0; + let mut x398: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x397, &mut x398, x2, 0xd2a3681e); + let mut x399: u32 = 0; + let mut x400: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x399, &mut x400, x2, 0xcda81671); + let mut x401: u32 = 0; + let mut x402: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x401, &mut x402, 0x0, x400, x397); + let mut x403: u32 = 0; + let mut x404: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x403, &mut x404, x402, x398, x395); + let mut x405: u32 = 0; + let mut x406: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x405, &mut x406, x404, x396, x393); + let mut x407: u32 = 0; + let mut x408: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x407, &mut x408, x406, x394, x391); + let mut x409: u32 = 0; + let mut x410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x409, &mut x410, x408, x392, x389); + let mut x411: u32 = 0; + let mut x412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x411, &mut x412, x410, x390, x387); + let mut x413: u32 = 0; + let mut x414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x413, &mut x414, x412, x388, x385); + let mut x415: u32 = 0; + let mut x416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x415, &mut x416, x414, x386, x383); + let mut x417: u32 = 0; + let mut x418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x417, &mut x418, x416, x384, x381); + let mut x419: u32 = 0; + let mut x420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x419, &mut x420, x418, x382, x379); + let mut x421: u32 = 0; + let mut x422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x421, &mut x422, x420, x380, x377); + let mut x423: u32 = 0; + let mut x424: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x423, &mut x424, x422, x378, x375); + let mut x425: u32 = 0; + let mut x426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x425, &mut x426, x424, x376, x373); + let mut x427: u32 = 0; + let mut x428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x427, &mut x428, x426, x374, x371); + let mut x429: u32 = 0; + let mut x430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x429, &mut x430, x428, x372, x369); + let mut x431: u32 = 0; + let mut x432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x431, &mut x432, 0x0, x337, x399); + let mut x433: u32 = 0; + let mut x434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x433, &mut x434, x432, x339, x401); + let mut x435: u32 = 0; + let mut x436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x435, &mut x436, x434, x341, x403); + let mut x437: u32 = 0; + let mut x438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x437, &mut x438, x436, x343, x405); + let mut x439: u32 = 0; + let mut x440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x439, &mut x440, x438, x345, x407); + let mut x441: u32 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x441, &mut x442, x440, x347, x409); + let mut x443: u32 = 0; + let mut x444: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x443, &mut x444, x442, x349, x411); + let mut x445: u32 = 0; + let mut x446: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x445, &mut x446, x444, x351, x413); + let mut x447: u32 = 0; + let mut x448: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x447, &mut x448, x446, x353, x415); + let mut x449: u32 = 0; + let mut x450: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x449, &mut x450, x448, x355, x417); + let mut x451: u32 = 0; + let mut x452: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x451, &mut x452, x450, x357, x419); + let mut x453: u32 = 0; + let mut x454: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x453, &mut x454, x452, x359, x421); + let mut x455: u32 = 0; + let mut x456: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x455, &mut x456, x454, x361, x423); + let mut x457: u32 = 0; + let mut x458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x457, &mut x458, x456, x363, x425); + let mut x459: u32 = 0; + let mut x460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x459, &mut x460, x458, x365, x427); + let mut x461: u32 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x461, &mut x462, x460, x367, x429); + let mut x463: u32 = 0; + let mut x464: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x463, &mut x464, x431, 0xf1b7027); + let mut x465: u32 = 0; + let mut x466: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x465, &mut x466, x463, 0xaadd9db8); + let mut x467: u32 = 0; + let mut x468: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x467, &mut x468, x463, 0xdbe9c48b); + let mut x469: u32 = 0; + let mut x470: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x469, &mut x470, x463, 0x3fd4e6ae); + let mut x471: u32 = 0; + let mut x472: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x471, &mut x472, x463, 0x33c9fc07); + let mut x473: u32 = 0; + let mut x474: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x473, &mut x474, x463, 0xcb308db3); + let mut x475: u32 = 0; + let mut x476: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x475, &mut x476, x463, 0xb3c9d20e); + let mut x477: u32 = 0; + let mut x478: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x477, &mut x478, x463, 0xd6639cca); + let mut x479: u32 = 0; + let mut x480: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x479, &mut x480, x463, 0x70330870); + let mut x481: u32 = 0; + let mut x482: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x481, &mut x482, x463, 0x553e5c41); + let mut x483: u32 = 0; + let mut x484: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x483, &mut x484, x463, 0x4ca92619); + let mut x485: u32 = 0; + let mut x486: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x485, &mut x486, x463, 0x41866119); + let mut x487: u32 = 0; + let mut x488: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x487, &mut x488, x463, 0x7fac1047); + let mut x489: u32 = 0; + let mut x490: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x489, &mut x490, x463, 0x1db1d381); + let mut x491: u32 = 0; + let mut x492: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x491, &mut x492, x463, 0x85ddadd); + let mut x493: u32 = 0; + let mut x494: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x493, &mut x494, x463, 0xb5879682); + let mut x495: u32 = 0; + let mut x496: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x495, &mut x496, x463, 0x9ca90069); + let mut x497: u32 = 0; + let mut x498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x497, &mut x498, 0x0, x496, x493); + let mut x499: u32 = 0; + let mut x500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x499, &mut x500, x498, x494, x491); + let mut x501: u32 = 0; + let mut x502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x501, &mut x502, x500, x492, x489); + let mut x503: u32 = 0; + let mut x504: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x503, &mut x504, x502, x490, x487); + let mut x505: u32 = 0; + let mut x506: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x505, &mut x506, x504, x488, x485); + let mut x507: u32 = 0; + let mut x508: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x507, &mut x508, x506, x486, x483); + let mut x509: u32 = 0; + let mut x510: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x509, &mut x510, x508, x484, x481); + let mut x511: u32 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x511, &mut x512, x510, x482, x479); + let mut x513: u32 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x513, &mut x514, x512, x480, x477); + let mut x515: u32 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x515, &mut x516, x514, x478, x475); + let mut x517: u32 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x517, &mut x518, x516, x476, x473); + let mut x519: u32 = 0; + let mut x520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x519, &mut x520, x518, x474, x471); + let mut x521: u32 = 0; + let mut x522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x521, &mut x522, x520, x472, x469); + let mut x523: u32 = 0; + let mut x524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x523, &mut x524, x522, x470, x467); + let mut x525: u32 = 0; + let mut x526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x525, &mut x526, x524, x468, x465); + let mut x527: u32 = 0; + let mut x528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x527, &mut x528, 0x0, x431, x495); + let mut x529: u32 = 0; + let mut x530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x529, &mut x530, x528, x433, x497); + let mut x531: u32 = 0; + let mut x532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x531, &mut x532, x530, x435, x499); + let mut x533: u32 = 0; + let mut x534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x533, &mut x534, x532, x437, x501); + let mut x535: u32 = 0; + let mut x536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x535, &mut x536, x534, x439, x503); + let mut x537: u32 = 0; + let mut x538: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x537, &mut x538, x536, x441, x505); + let mut x539: u32 = 0; + let mut x540: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x539, &mut x540, x538, x443, x507); + let mut x541: u32 = 0; + let mut x542: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x541, &mut x542, x540, x445, x509); + let mut x543: u32 = 0; + let mut x544: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x543, &mut x544, x542, x447, x511); + let mut x545: u32 = 0; + let mut x546: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x545, &mut x546, x544, x449, x513); + let mut x547: u32 = 0; + let mut x548: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x547, &mut x548, x546, x451, x515); + let mut x549: u32 = 0; + let mut x550: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x549, &mut x550, x548, x453, x517); + let mut x551: u32 = 0; + let mut x552: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x551, &mut x552, x550, x455, x519); + let mut x553: u32 = 0; + let mut x554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x553, &mut x554, x552, x457, x521); + let mut x555: u32 = 0; + let mut x556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x555, &mut x556, x554, x459, x523); + let mut x557: u32 = 0; + let mut x558: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x557, &mut x558, x556, x461, x525); + let mut x559: u32 = 0; + let mut x560: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x559, + &mut x560, + x558, + (((x462 as u32) + (x368 as u32)) + ((x430 as u32) + x370)), + ((x526 as u32) + x466), + ); + let mut x561: u32 = 0; + let mut x562: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x561, &mut x562, x3, 0xa794586a); + let mut x563: u32 = 0; + let mut x564: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x563, &mut x564, x3, 0x718407b0); + let mut x565: u32 = 0; + let mut x566: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x565, &mut x566, x3, 0x95df1b4c); + let mut x567: u32 = 0; + let mut x568: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x567, &mut x568, x3, 0x194b2e56); + let mut x569: u32 = 0; + let mut x570: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x569, &mut x570, x3, 0x723c37a2); + let mut x571: u32 = 0; + let mut x572: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x571, &mut x572, x3, 0x2f16bbdf); + let mut x573: u32 = 0; + let mut x574: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x573, &mut x574, x3, 0xd7f9cc26); + let mut x575: u32 = 0; + let mut x576: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x575, &mut x576, x3, 0x3b790de3); + let mut x577: u32 = 0; + let mut x578: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x577, &mut x578, x3, 0xa6f230c7); + let mut x579: u32 = 0; + let mut x580: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x579, &mut x580, x3, 0x2f0207e8); + let mut x581: u32 = 0; + let mut x582: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x581, &mut x582, x3, 0x3ec64bd0); + let mut x583: u32 = 0; + let mut x584: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x583, &mut x584, x3, 0x33b7627f); + let mut x585: u32 = 0; + let mut x586: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x585, &mut x586, x3, 0x886b758); + let mut x587: u32 = 0; + let mut x588: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x587, &mut x588, x3, 0x95283ddd); + let mut x589: u32 = 0; + let mut x590: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x589, &mut x590, x3, 0xd2a3681e); + let mut x591: u32 = 0; + let mut x592: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x591, &mut x592, x3, 0xcda81671); + let mut x593: u32 = 0; + let mut x594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x593, &mut x594, 0x0, x592, x589); + let mut x595: u32 = 0; + let mut x596: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x595, &mut x596, x594, x590, x587); + let mut x597: u32 = 0; + let mut x598: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x597, &mut x598, x596, x588, x585); + let mut x599: u32 = 0; + let mut x600: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x599, &mut x600, x598, x586, x583); + let mut x601: u32 = 0; + let mut x602: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x601, &mut x602, x600, x584, x581); + let mut x603: u32 = 0; + let mut x604: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x603, &mut x604, x602, x582, x579); + let mut x605: u32 = 0; + let mut x606: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x605, &mut x606, x604, x580, x577); + let mut x607: u32 = 0; + let mut x608: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x607, &mut x608, x606, x578, x575); + let mut x609: u32 = 0; + let mut x610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x609, &mut x610, x608, x576, x573); + let mut x611: u32 = 0; + let mut x612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x611, &mut x612, x610, x574, x571); + let mut x613: u32 = 0; + let mut x614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x613, &mut x614, x612, x572, x569); + let mut x615: u32 = 0; + let mut x616: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x615, &mut x616, x614, x570, x567); + let mut x617: u32 = 0; + let mut x618: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x617, &mut x618, x616, x568, x565); + let mut x619: u32 = 0; + let mut x620: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x619, &mut x620, x618, x566, x563); + let mut x621: u32 = 0; + let mut x622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x621, &mut x622, x620, x564, x561); + let mut x623: u32 = 0; + let mut x624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x623, &mut x624, 0x0, x529, x591); + let mut x625: u32 = 0; + let mut x626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x625, &mut x626, x624, x531, x593); + let mut x627: u32 = 0; + let mut x628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x627, &mut x628, x626, x533, x595); + let mut x629: u32 = 0; + let mut x630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x629, &mut x630, x628, x535, x597); + let mut x631: u32 = 0; + let mut x632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x631, &mut x632, x630, x537, x599); + let mut x633: u32 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x633, &mut x634, x632, x539, x601); + let mut x635: u32 = 0; + let mut x636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x635, &mut x636, x634, x541, x603); + let mut x637: u32 = 0; + let mut x638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x637, &mut x638, x636, x543, x605); + let mut x639: u32 = 0; + let mut x640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x639, &mut x640, x638, x545, x607); + let mut x641: u32 = 0; + let mut x642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x641, &mut x642, x640, x547, x609); + let mut x643: u32 = 0; + let mut x644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x643, &mut x644, x642, x549, x611); + let mut x645: u32 = 0; + let mut x646: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x645, &mut x646, x644, x551, x613); + let mut x647: u32 = 0; + let mut x648: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x647, &mut x648, x646, x553, x615); + let mut x649: u32 = 0; + let mut x650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x649, &mut x650, x648, x555, x617); + let mut x651: u32 = 0; + let mut x652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x651, &mut x652, x650, x557, x619); + let mut x653: u32 = 0; + let mut x654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x653, &mut x654, x652, x559, x621); + let mut x655: u32 = 0; + let mut x656: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x655, &mut x656, x623, 0xf1b7027); + let mut x657: u32 = 0; + let mut x658: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x657, &mut x658, x655, 0xaadd9db8); + let mut x659: u32 = 0; + let mut x660: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x659, &mut x660, x655, 0xdbe9c48b); + let mut x661: u32 = 0; + let mut x662: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x661, &mut x662, x655, 0x3fd4e6ae); + let mut x663: u32 = 0; + let mut x664: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x663, &mut x664, x655, 0x33c9fc07); + let mut x665: u32 = 0; + let mut x666: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x665, &mut x666, x655, 0xcb308db3); + let mut x667: u32 = 0; + let mut x668: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x667, &mut x668, x655, 0xb3c9d20e); + let mut x669: u32 = 0; + let mut x670: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x669, &mut x670, x655, 0xd6639cca); + let mut x671: u32 = 0; + let mut x672: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x671, &mut x672, x655, 0x70330870); + let mut x673: u32 = 0; + let mut x674: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x673, &mut x674, x655, 0x553e5c41); + let mut x675: u32 = 0; + let mut x676: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x675, &mut x676, x655, 0x4ca92619); + let mut x677: u32 = 0; + let mut x678: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x677, &mut x678, x655, 0x41866119); + let mut x679: u32 = 0; + let mut x680: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x679, &mut x680, x655, 0x7fac1047); + let mut x681: u32 = 0; + let mut x682: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x681, &mut x682, x655, 0x1db1d381); + let mut x683: u32 = 0; + let mut x684: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x683, &mut x684, x655, 0x85ddadd); + let mut x685: u32 = 0; + let mut x686: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x685, &mut x686, x655, 0xb5879682); + let mut x687: u32 = 0; + let mut x688: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x687, &mut x688, x655, 0x9ca90069); + let mut x689: u32 = 0; + let mut x690: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x689, &mut x690, 0x0, x688, x685); + let mut x691: u32 = 0; + let mut x692: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x691, &mut x692, x690, x686, x683); + let mut x693: u32 = 0; + let mut x694: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x693, &mut x694, x692, x684, x681); + let mut x695: u32 = 0; + let mut x696: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x695, &mut x696, x694, x682, x679); + let mut x697: u32 = 0; + let mut x698: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x697, &mut x698, x696, x680, x677); + let mut x699: u32 = 0; + let mut x700: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x699, &mut x700, x698, x678, x675); + let mut x701: u32 = 0; + let mut x702: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x701, &mut x702, x700, x676, x673); + let mut x703: u32 = 0; + let mut x704: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x703, &mut x704, x702, x674, x671); + let mut x705: u32 = 0; + let mut x706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x705, &mut x706, x704, x672, x669); + let mut x707: u32 = 0; + let mut x708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x707, &mut x708, x706, x670, x667); + let mut x709: u32 = 0; + let mut x710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x709, &mut x710, x708, x668, x665); + let mut x711: u32 = 0; + let mut x712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x711, &mut x712, x710, x666, x663); + let mut x713: u32 = 0; + let mut x714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x713, &mut x714, x712, x664, x661); + let mut x715: u32 = 0; + let mut x716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x715, &mut x716, x714, x662, x659); + let mut x717: u32 = 0; + let mut x718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x717, &mut x718, x716, x660, x657); + let mut x719: u32 = 0; + let mut x720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x719, &mut x720, 0x0, x623, x687); + let mut x721: u32 = 0; + let mut x722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x721, &mut x722, x720, x625, x689); + let mut x723: u32 = 0; + let mut x724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x723, &mut x724, x722, x627, x691); + let mut x725: u32 = 0; + let mut x726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x725, &mut x726, x724, x629, x693); + let mut x727: u32 = 0; + let mut x728: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x727, &mut x728, x726, x631, x695); + let mut x729: u32 = 0; + let mut x730: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x729, &mut x730, x728, x633, x697); + let mut x731: u32 = 0; + let mut x732: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x731, &mut x732, x730, x635, x699); + let mut x733: u32 = 0; + let mut x734: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x733, &mut x734, x732, x637, x701); + let mut x735: u32 = 0; + let mut x736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x735, &mut x736, x734, x639, x703); + let mut x737: u32 = 0; + let mut x738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x737, &mut x738, x736, x641, x705); + let mut x739: u32 = 0; + let mut x740: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x739, &mut x740, x738, x643, x707); + let mut x741: u32 = 0; + let mut x742: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x741, &mut x742, x740, x645, x709); + let mut x743: u32 = 0; + let mut x744: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x743, &mut x744, x742, x647, x711); + let mut x745: u32 = 0; + let mut x746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x745, &mut x746, x744, x649, x713); + let mut x747: u32 = 0; + let mut x748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x747, &mut x748, x746, x651, x715); + let mut x749: u32 = 0; + let mut x750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x749, &mut x750, x748, x653, x717); + let mut x751: u32 = 0; + let mut x752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x751, + &mut x752, + x750, + (((x654 as u32) + (x560 as u32)) + ((x622 as u32) + x562)), + ((x718 as u32) + x658), + ); + let mut x753: u32 = 0; + let mut x754: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x753, &mut x754, x4, 0xa794586a); + let mut x755: u32 = 0; + let mut x756: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x755, &mut x756, x4, 0x718407b0); + let mut x757: u32 = 0; + let mut x758: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x757, &mut x758, x4, 0x95df1b4c); + let mut x759: u32 = 0; + let mut x760: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x759, &mut x760, x4, 0x194b2e56); + let mut x761: u32 = 0; + let mut x762: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x761, &mut x762, x4, 0x723c37a2); + let mut x763: u32 = 0; + let mut x764: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x763, &mut x764, x4, 0x2f16bbdf); + let mut x765: u32 = 0; + let mut x766: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x765, &mut x766, x4, 0xd7f9cc26); + let mut x767: u32 = 0; + let mut x768: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x767, &mut x768, x4, 0x3b790de3); + let mut x769: u32 = 0; + let mut x770: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x769, &mut x770, x4, 0xa6f230c7); + let mut x771: u32 = 0; + let mut x772: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x771, &mut x772, x4, 0x2f0207e8); + let mut x773: u32 = 0; + let mut x774: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x773, &mut x774, x4, 0x3ec64bd0); + let mut x775: u32 = 0; + let mut x776: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x775, &mut x776, x4, 0x33b7627f); + let mut x777: u32 = 0; + let mut x778: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x777, &mut x778, x4, 0x886b758); + let mut x779: u32 = 0; + let mut x780: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x779, &mut x780, x4, 0x95283ddd); + let mut x781: u32 = 0; + let mut x782: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x781, &mut x782, x4, 0xd2a3681e); + let mut x783: u32 = 0; + let mut x784: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x783, &mut x784, x4, 0xcda81671); + let mut x785: u32 = 0; + let mut x786: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x785, &mut x786, 0x0, x784, x781); + let mut x787: u32 = 0; + let mut x788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x787, &mut x788, x786, x782, x779); + let mut x789: u32 = 0; + let mut x790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x789, &mut x790, x788, x780, x777); + let mut x791: u32 = 0; + let mut x792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x791, &mut x792, x790, x778, x775); + let mut x793: u32 = 0; + let mut x794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x793, &mut x794, x792, x776, x773); + let mut x795: u32 = 0; + let mut x796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x795, &mut x796, x794, x774, x771); + let mut x797: u32 = 0; + let mut x798: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x797, &mut x798, x796, x772, x769); + let mut x799: u32 = 0; + let mut x800: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x799, &mut x800, x798, x770, x767); + let mut x801: u32 = 0; + let mut x802: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x801, &mut x802, x800, x768, x765); + let mut x803: u32 = 0; + let mut x804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x803, &mut x804, x802, x766, x763); + let mut x805: u32 = 0; + let mut x806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x805, &mut x806, x804, x764, x761); + let mut x807: u32 = 0; + let mut x808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x807, &mut x808, x806, x762, x759); + let mut x809: u32 = 0; + let mut x810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x809, &mut x810, x808, x760, x757); + let mut x811: u32 = 0; + let mut x812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x811, &mut x812, x810, x758, x755); + let mut x813: u32 = 0; + let mut x814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x813, &mut x814, x812, x756, x753); + let mut x815: u32 = 0; + let mut x816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x815, &mut x816, 0x0, x721, x783); + let mut x817: u32 = 0; + let mut x818: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x817, &mut x818, x816, x723, x785); + let mut x819: u32 = 0; + let mut x820: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x819, &mut x820, x818, x725, x787); + let mut x821: u32 = 0; + let mut x822: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x821, &mut x822, x820, x727, x789); + let mut x823: u32 = 0; + let mut x824: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x823, &mut x824, x822, x729, x791); + let mut x825: u32 = 0; + let mut x826: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x825, &mut x826, x824, x731, x793); + let mut x827: u32 = 0; + let mut x828: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x827, &mut x828, x826, x733, x795); + let mut x829: u32 = 0; + let mut x830: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x829, &mut x830, x828, x735, x797); + let mut x831: u32 = 0; + let mut x832: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x831, &mut x832, x830, x737, x799); + let mut x833: u32 = 0; + let mut x834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x833, &mut x834, x832, x739, x801); + let mut x835: u32 = 0; + let mut x836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x835, &mut x836, x834, x741, x803); + let mut x837: u32 = 0; + let mut x838: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x837, &mut x838, x836, x743, x805); + let mut x839: u32 = 0; + let mut x840: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x839, &mut x840, x838, x745, x807); + let mut x841: u32 = 0; + let mut x842: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x841, &mut x842, x840, x747, x809); + let mut x843: u32 = 0; + let mut x844: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x843, &mut x844, x842, x749, x811); + let mut x845: u32 = 0; + let mut x846: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x845, &mut x846, x844, x751, x813); + let mut x847: u32 = 0; + let mut x848: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x847, &mut x848, x815, 0xf1b7027); + let mut x849: u32 = 0; + let mut x850: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x849, &mut x850, x847, 0xaadd9db8); + let mut x851: u32 = 0; + let mut x852: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x851, &mut x852, x847, 0xdbe9c48b); + let mut x853: u32 = 0; + let mut x854: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x853, &mut x854, x847, 0x3fd4e6ae); + let mut x855: u32 = 0; + let mut x856: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x855, &mut x856, x847, 0x33c9fc07); + let mut x857: u32 = 0; + let mut x858: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x857, &mut x858, x847, 0xcb308db3); + let mut x859: u32 = 0; + let mut x860: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x859, &mut x860, x847, 0xb3c9d20e); + let mut x861: u32 = 0; + let mut x862: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x861, &mut x862, x847, 0xd6639cca); + let mut x863: u32 = 0; + let mut x864: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x863, &mut x864, x847, 0x70330870); + let mut x865: u32 = 0; + let mut x866: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x865, &mut x866, x847, 0x553e5c41); + let mut x867: u32 = 0; + let mut x868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x867, &mut x868, x847, 0x4ca92619); + let mut x869: u32 = 0; + let mut x870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x869, &mut x870, x847, 0x41866119); + let mut x871: u32 = 0; + let mut x872: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x871, &mut x872, x847, 0x7fac1047); + let mut x873: u32 = 0; + let mut x874: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x873, &mut x874, x847, 0x1db1d381); + let mut x875: u32 = 0; + let mut x876: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x875, &mut x876, x847, 0x85ddadd); + let mut x877: u32 = 0; + let mut x878: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x877, &mut x878, x847, 0xb5879682); + let mut x879: u32 = 0; + let mut x880: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x879, &mut x880, x847, 0x9ca90069); + let mut x881: u32 = 0; + let mut x882: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x881, &mut x882, 0x0, x880, x877); + let mut x883: u32 = 0; + let mut x884: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x883, &mut x884, x882, x878, x875); + let mut x885: u32 = 0; + let mut x886: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x885, &mut x886, x884, x876, x873); + let mut x887: u32 = 0; + let mut x888: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x887, &mut x888, x886, x874, x871); + let mut x889: u32 = 0; + let mut x890: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x889, &mut x890, x888, x872, x869); + let mut x891: u32 = 0; + let mut x892: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x891, &mut x892, x890, x870, x867); + let mut x893: u32 = 0; + let mut x894: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x893, &mut x894, x892, x868, x865); + let mut x895: u32 = 0; + let mut x896: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x895, &mut x896, x894, x866, x863); + let mut x897: u32 = 0; + let mut x898: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x897, &mut x898, x896, x864, x861); + let mut x899: u32 = 0; + let mut x900: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x899, &mut x900, x898, x862, x859); + let mut x901: u32 = 0; + let mut x902: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x901, &mut x902, x900, x860, x857); + let mut x903: u32 = 0; + let mut x904: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x903, &mut x904, x902, x858, x855); + let mut x905: u32 = 0; + let mut x906: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x905, &mut x906, x904, x856, x853); + let mut x907: u32 = 0; + let mut x908: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x907, &mut x908, x906, x854, x851); + let mut x909: u32 = 0; + let mut x910: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x909, &mut x910, x908, x852, x849); + let mut x911: u32 = 0; + let mut x912: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x911, &mut x912, 0x0, x815, x879); + let mut x913: u32 = 0; + let mut x914: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x913, &mut x914, x912, x817, x881); + let mut x915: u32 = 0; + let mut x916: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x915, &mut x916, x914, x819, x883); + let mut x917: u32 = 0; + let mut x918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x917, &mut x918, x916, x821, x885); + let mut x919: u32 = 0; + let mut x920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x919, &mut x920, x918, x823, x887); + let mut x921: u32 = 0; + let mut x922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x921, &mut x922, x920, x825, x889); + let mut x923: u32 = 0; + let mut x924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x923, &mut x924, x922, x827, x891); + let mut x925: u32 = 0; + let mut x926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x925, &mut x926, x924, x829, x893); + let mut x927: u32 = 0; + let mut x928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x927, &mut x928, x926, x831, x895); + let mut x929: u32 = 0; + let mut x930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x929, &mut x930, x928, x833, x897); + let mut x931: u32 = 0; + let mut x932: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x931, &mut x932, x930, x835, x899); + let mut x933: u32 = 0; + let mut x934: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x933, &mut x934, x932, x837, x901); + let mut x935: u32 = 0; + let mut x936: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x935, &mut x936, x934, x839, x903); + let mut x937: u32 = 0; + let mut x938: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x937, &mut x938, x936, x841, x905); + let mut x939: u32 = 0; + let mut x940: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x939, &mut x940, x938, x843, x907); + let mut x941: u32 = 0; + let mut x942: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x941, &mut x942, x940, x845, x909); + let mut x943: u32 = 0; + let mut x944: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x943, + &mut x944, + x942, + (((x846 as u32) + (x752 as u32)) + ((x814 as u32) + x754)), + ((x910 as u32) + x850), + ); + let mut x945: u32 = 0; + let mut x946: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x945, &mut x946, x5, 0xa794586a); + let mut x947: u32 = 0; + let mut x948: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x947, &mut x948, x5, 0x718407b0); + let mut x949: u32 = 0; + let mut x950: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x949, &mut x950, x5, 0x95df1b4c); + let mut x951: u32 = 0; + let mut x952: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x951, &mut x952, x5, 0x194b2e56); + let mut x953: u32 = 0; + let mut x954: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x953, &mut x954, x5, 0x723c37a2); + let mut x955: u32 = 0; + let mut x956: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x955, &mut x956, x5, 0x2f16bbdf); + let mut x957: u32 = 0; + let mut x958: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x957, &mut x958, x5, 0xd7f9cc26); + let mut x959: u32 = 0; + let mut x960: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x959, &mut x960, x5, 0x3b790de3); + let mut x961: u32 = 0; + let mut x962: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x961, &mut x962, x5, 0xa6f230c7); + let mut x963: u32 = 0; + let mut x964: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x963, &mut x964, x5, 0x2f0207e8); + let mut x965: u32 = 0; + let mut x966: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x965, &mut x966, x5, 0x3ec64bd0); + let mut x967: u32 = 0; + let mut x968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x967, &mut x968, x5, 0x33b7627f); + let mut x969: u32 = 0; + let mut x970: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x969, &mut x970, x5, 0x886b758); + let mut x971: u32 = 0; + let mut x972: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x971, &mut x972, x5, 0x95283ddd); + let mut x973: u32 = 0; + let mut x974: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x973, &mut x974, x5, 0xd2a3681e); + let mut x975: u32 = 0; + let mut x976: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x975, &mut x976, x5, 0xcda81671); + let mut x977: u32 = 0; + let mut x978: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x977, &mut x978, 0x0, x976, x973); + let mut x979: u32 = 0; + let mut x980: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x979, &mut x980, x978, x974, x971); + let mut x981: u32 = 0; + let mut x982: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x981, &mut x982, x980, x972, x969); + let mut x983: u32 = 0; + let mut x984: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x983, &mut x984, x982, x970, x967); + let mut x985: u32 = 0; + let mut x986: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x985, &mut x986, x984, x968, x965); + let mut x987: u32 = 0; + let mut x988: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x987, &mut x988, x986, x966, x963); + let mut x989: u32 = 0; + let mut x990: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x989, &mut x990, x988, x964, x961); + let mut x991: u32 = 0; + let mut x992: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x991, &mut x992, x990, x962, x959); + let mut x993: u32 = 0; + let mut x994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x993, &mut x994, x992, x960, x957); + let mut x995: u32 = 0; + let mut x996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x995, &mut x996, x994, x958, x955); + let mut x997: u32 = 0; + let mut x998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x997, &mut x998, x996, x956, x953); + let mut x999: u32 = 0; + let mut x1000: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x999, &mut x1000, x998, x954, x951); + let mut x1001: u32 = 0; + let mut x1002: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1001, &mut x1002, x1000, x952, x949); + let mut x1003: u32 = 0; + let mut x1004: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1003, &mut x1004, x1002, x950, x947); + let mut x1005: u32 = 0; + let mut x1006: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1005, &mut x1006, x1004, x948, x945); + let mut x1007: u32 = 0; + let mut x1008: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1007, &mut x1008, 0x0, x913, x975); + let mut x1009: u32 = 0; + let mut x1010: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1009, &mut x1010, x1008, x915, x977); + let mut x1011: u32 = 0; + let mut x1012: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1011, &mut x1012, x1010, x917, x979); + let mut x1013: u32 = 0; + let mut x1014: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1013, &mut x1014, x1012, x919, x981); + let mut x1015: u32 = 0; + let mut x1016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1015, &mut x1016, x1014, x921, x983); + let mut x1017: u32 = 0; + let mut x1018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1017, &mut x1018, x1016, x923, x985); + let mut x1019: u32 = 0; + let mut x1020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1019, &mut x1020, x1018, x925, x987); + let mut x1021: u32 = 0; + let mut x1022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1021, &mut x1022, x1020, x927, x989); + let mut x1023: u32 = 0; + let mut x1024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1023, &mut x1024, x1022, x929, x991); + let mut x1025: u32 = 0; + let mut x1026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1025, &mut x1026, x1024, x931, x993); + let mut x1027: u32 = 0; + let mut x1028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1027, &mut x1028, x1026, x933, x995); + let mut x1029: u32 = 0; + let mut x1030: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1029, &mut x1030, x1028, x935, x997); + let mut x1031: u32 = 0; + let mut x1032: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1031, &mut x1032, x1030, x937, x999); + let mut x1033: u32 = 0; + let mut x1034: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1033, &mut x1034, x1032, x939, x1001); + let mut x1035: u32 = 0; + let mut x1036: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1035, &mut x1036, x1034, x941, x1003); + let mut x1037: u32 = 0; + let mut x1038: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1037, &mut x1038, x1036, x943, x1005); + let mut x1039: u32 = 0; + let mut x1040: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1039, &mut x1040, x1007, 0xf1b7027); + let mut x1041: u32 = 0; + let mut x1042: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1041, &mut x1042, x1039, 0xaadd9db8); + let mut x1043: u32 = 0; + let mut x1044: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1043, &mut x1044, x1039, 0xdbe9c48b); + let mut x1045: u32 = 0; + let mut x1046: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1045, &mut x1046, x1039, 0x3fd4e6ae); + let mut x1047: u32 = 0; + let mut x1048: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1047, &mut x1048, x1039, 0x33c9fc07); + let mut x1049: u32 = 0; + let mut x1050: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1049, &mut x1050, x1039, 0xcb308db3); + let mut x1051: u32 = 0; + let mut x1052: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1051, &mut x1052, x1039, 0xb3c9d20e); + let mut x1053: u32 = 0; + let mut x1054: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1053, &mut x1054, x1039, 0xd6639cca); + let mut x1055: u32 = 0; + let mut x1056: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1055, &mut x1056, x1039, 0x70330870); + let mut x1057: u32 = 0; + let mut x1058: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1057, &mut x1058, x1039, 0x553e5c41); + let mut x1059: u32 = 0; + let mut x1060: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1059, &mut x1060, x1039, 0x4ca92619); + let mut x1061: u32 = 0; + let mut x1062: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1061, &mut x1062, x1039, 0x41866119); + let mut x1063: u32 = 0; + let mut x1064: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1063, &mut x1064, x1039, 0x7fac1047); + let mut x1065: u32 = 0; + let mut x1066: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1065, &mut x1066, x1039, 0x1db1d381); + let mut x1067: u32 = 0; + let mut x1068: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1067, &mut x1068, x1039, 0x85ddadd); + let mut x1069: u32 = 0; + let mut x1070: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1069, &mut x1070, x1039, 0xb5879682); + let mut x1071: u32 = 0; + let mut x1072: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1071, &mut x1072, x1039, 0x9ca90069); + let mut x1073: u32 = 0; + let mut x1074: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1073, &mut x1074, 0x0, x1072, x1069); + let mut x1075: u32 = 0; + let mut x1076: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1075, &mut x1076, x1074, x1070, x1067); + let mut x1077: u32 = 0; + let mut x1078: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1077, &mut x1078, x1076, x1068, x1065); + let mut x1079: u32 = 0; + let mut x1080: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1079, &mut x1080, x1078, x1066, x1063); + let mut x1081: u32 = 0; + let mut x1082: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1081, &mut x1082, x1080, x1064, x1061); + let mut x1083: u32 = 0; + let mut x1084: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1083, &mut x1084, x1082, x1062, x1059); + let mut x1085: u32 = 0; + let mut x1086: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1085, &mut x1086, x1084, x1060, x1057); + let mut x1087: u32 = 0; + let mut x1088: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1087, &mut x1088, x1086, x1058, x1055); + let mut x1089: u32 = 0; + let mut x1090: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1089, &mut x1090, x1088, x1056, x1053); + let mut x1091: u32 = 0; + let mut x1092: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1091, &mut x1092, x1090, x1054, x1051); + let mut x1093: u32 = 0; + let mut x1094: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1093, &mut x1094, x1092, x1052, x1049); + let mut x1095: u32 = 0; + let mut x1096: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1095, &mut x1096, x1094, x1050, x1047); + let mut x1097: u32 = 0; + let mut x1098: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1097, &mut x1098, x1096, x1048, x1045); + let mut x1099: u32 = 0; + let mut x1100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1099, &mut x1100, x1098, x1046, x1043); + let mut x1101: u32 = 0; + let mut x1102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1101, &mut x1102, x1100, x1044, x1041); + let mut x1103: u32 = 0; + let mut x1104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1103, &mut x1104, 0x0, x1007, x1071); + let mut x1105: u32 = 0; + let mut x1106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1105, &mut x1106, x1104, x1009, x1073); + let mut x1107: u32 = 0; + let mut x1108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1107, &mut x1108, x1106, x1011, x1075); + let mut x1109: u32 = 0; + let mut x1110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1109, &mut x1110, x1108, x1013, x1077); + let mut x1111: u32 = 0; + let mut x1112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1111, &mut x1112, x1110, x1015, x1079); + let mut x1113: u32 = 0; + let mut x1114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1113, &mut x1114, x1112, x1017, x1081); + let mut x1115: u32 = 0; + let mut x1116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1115, &mut x1116, x1114, x1019, x1083); + let mut x1117: u32 = 0; + let mut x1118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1117, &mut x1118, x1116, x1021, x1085); + let mut x1119: u32 = 0; + let mut x1120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1119, &mut x1120, x1118, x1023, x1087); + let mut x1121: u32 = 0; + let mut x1122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1121, &mut x1122, x1120, x1025, x1089); + let mut x1123: u32 = 0; + let mut x1124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1123, &mut x1124, x1122, x1027, x1091); + let mut x1125: u32 = 0; + let mut x1126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1125, &mut x1126, x1124, x1029, x1093); + let mut x1127: u32 = 0; + let mut x1128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1127, &mut x1128, x1126, x1031, x1095); + let mut x1129: u32 = 0; + let mut x1130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1129, &mut x1130, x1128, x1033, x1097); + let mut x1131: u32 = 0; + let mut x1132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1131, &mut x1132, x1130, x1035, x1099); + let mut x1133: u32 = 0; + let mut x1134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1133, &mut x1134, x1132, x1037, x1101); + let mut x1135: u32 = 0; + let mut x1136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1135, + &mut x1136, + x1134, + (((x1038 as u32) + (x944 as u32)) + ((x1006 as u32) + x946)), + ((x1102 as u32) + x1042), + ); + let mut x1137: u32 = 0; + let mut x1138: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1137, &mut x1138, x6, 0xa794586a); + let mut x1139: u32 = 0; + let mut x1140: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1139, &mut x1140, x6, 0x718407b0); + let mut x1141: u32 = 0; + let mut x1142: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1141, &mut x1142, x6, 0x95df1b4c); + let mut x1143: u32 = 0; + let mut x1144: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1143, &mut x1144, x6, 0x194b2e56); + let mut x1145: u32 = 0; + let mut x1146: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1145, &mut x1146, x6, 0x723c37a2); + let mut x1147: u32 = 0; + let mut x1148: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1147, &mut x1148, x6, 0x2f16bbdf); + let mut x1149: u32 = 0; + let mut x1150: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1149, &mut x1150, x6, 0xd7f9cc26); + let mut x1151: u32 = 0; + let mut x1152: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1151, &mut x1152, x6, 0x3b790de3); + let mut x1153: u32 = 0; + let mut x1154: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1153, &mut x1154, x6, 0xa6f230c7); + let mut x1155: u32 = 0; + let mut x1156: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1155, &mut x1156, x6, 0x2f0207e8); + let mut x1157: u32 = 0; + let mut x1158: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1157, &mut x1158, x6, 0x3ec64bd0); + let mut x1159: u32 = 0; + let mut x1160: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1159, &mut x1160, x6, 0x33b7627f); + let mut x1161: u32 = 0; + let mut x1162: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1161, &mut x1162, x6, 0x886b758); + let mut x1163: u32 = 0; + let mut x1164: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1163, &mut x1164, x6, 0x95283ddd); + let mut x1165: u32 = 0; + let mut x1166: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1165, &mut x1166, x6, 0xd2a3681e); + let mut x1167: u32 = 0; + let mut x1168: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1167, &mut x1168, x6, 0xcda81671); + let mut x1169: u32 = 0; + let mut x1170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1169, &mut x1170, 0x0, x1168, x1165); + let mut x1171: u32 = 0; + let mut x1172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1171, &mut x1172, x1170, x1166, x1163); + let mut x1173: u32 = 0; + let mut x1174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1173, &mut x1174, x1172, x1164, x1161); + let mut x1175: u32 = 0; + let mut x1176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1175, &mut x1176, x1174, x1162, x1159); + let mut x1177: u32 = 0; + let mut x1178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1177, &mut x1178, x1176, x1160, x1157); + let mut x1179: u32 = 0; + let mut x1180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1179, &mut x1180, x1178, x1158, x1155); + let mut x1181: u32 = 0; + let mut x1182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1181, &mut x1182, x1180, x1156, x1153); + let mut x1183: u32 = 0; + let mut x1184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1183, &mut x1184, x1182, x1154, x1151); + let mut x1185: u32 = 0; + let mut x1186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1185, &mut x1186, x1184, x1152, x1149); + let mut x1187: u32 = 0; + let mut x1188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1187, &mut x1188, x1186, x1150, x1147); + let mut x1189: u32 = 0; + let mut x1190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1189, &mut x1190, x1188, x1148, x1145); + let mut x1191: u32 = 0; + let mut x1192: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1191, &mut x1192, x1190, x1146, x1143); + let mut x1193: u32 = 0; + let mut x1194: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1193, &mut x1194, x1192, x1144, x1141); + let mut x1195: u32 = 0; + let mut x1196: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1195, &mut x1196, x1194, x1142, x1139); + let mut x1197: u32 = 0; + let mut x1198: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1197, &mut x1198, x1196, x1140, x1137); + let mut x1199: u32 = 0; + let mut x1200: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1199, &mut x1200, 0x0, x1105, x1167); + let mut x1201: u32 = 0; + let mut x1202: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1201, &mut x1202, x1200, x1107, x1169); + let mut x1203: u32 = 0; + let mut x1204: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1203, &mut x1204, x1202, x1109, x1171); + let mut x1205: u32 = 0; + let mut x1206: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1205, &mut x1206, x1204, x1111, x1173); + let mut x1207: u32 = 0; + let mut x1208: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1207, &mut x1208, x1206, x1113, x1175); + let mut x1209: u32 = 0; + let mut x1210: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1209, &mut x1210, x1208, x1115, x1177); + let mut x1211: u32 = 0; + let mut x1212: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1211, &mut x1212, x1210, x1117, x1179); + let mut x1213: u32 = 0; + let mut x1214: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1213, &mut x1214, x1212, x1119, x1181); + let mut x1215: u32 = 0; + let mut x1216: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1215, &mut x1216, x1214, x1121, x1183); + let mut x1217: u32 = 0; + let mut x1218: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1217, &mut x1218, x1216, x1123, x1185); + let mut x1219: u32 = 0; + let mut x1220: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1219, &mut x1220, x1218, x1125, x1187); + let mut x1221: u32 = 0; + let mut x1222: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1221, &mut x1222, x1220, x1127, x1189); + let mut x1223: u32 = 0; + let mut x1224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1223, &mut x1224, x1222, x1129, x1191); + let mut x1225: u32 = 0; + let mut x1226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1225, &mut x1226, x1224, x1131, x1193); + let mut x1227: u32 = 0; + let mut x1228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1227, &mut x1228, x1226, x1133, x1195); + let mut x1229: u32 = 0; + let mut x1230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1229, &mut x1230, x1228, x1135, x1197); + let mut x1231: u32 = 0; + let mut x1232: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1231, &mut x1232, x1199, 0xf1b7027); + let mut x1233: u32 = 0; + let mut x1234: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1233, &mut x1234, x1231, 0xaadd9db8); + let mut x1235: u32 = 0; + let mut x1236: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1235, &mut x1236, x1231, 0xdbe9c48b); + let mut x1237: u32 = 0; + let mut x1238: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1237, &mut x1238, x1231, 0x3fd4e6ae); + let mut x1239: u32 = 0; + let mut x1240: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1239, &mut x1240, x1231, 0x33c9fc07); + let mut x1241: u32 = 0; + let mut x1242: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1241, &mut x1242, x1231, 0xcb308db3); + let mut x1243: u32 = 0; + let mut x1244: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1243, &mut x1244, x1231, 0xb3c9d20e); + let mut x1245: u32 = 0; + let mut x1246: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1245, &mut x1246, x1231, 0xd6639cca); + let mut x1247: u32 = 0; + let mut x1248: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1247, &mut x1248, x1231, 0x70330870); + let mut x1249: u32 = 0; + let mut x1250: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1249, &mut x1250, x1231, 0x553e5c41); + let mut x1251: u32 = 0; + let mut x1252: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1251, &mut x1252, x1231, 0x4ca92619); + let mut x1253: u32 = 0; + let mut x1254: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1253, &mut x1254, x1231, 0x41866119); + let mut x1255: u32 = 0; + let mut x1256: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1255, &mut x1256, x1231, 0x7fac1047); + let mut x1257: u32 = 0; + let mut x1258: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1257, &mut x1258, x1231, 0x1db1d381); + let mut x1259: u32 = 0; + let mut x1260: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1259, &mut x1260, x1231, 0x85ddadd); + let mut x1261: u32 = 0; + let mut x1262: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1261, &mut x1262, x1231, 0xb5879682); + let mut x1263: u32 = 0; + let mut x1264: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1263, &mut x1264, x1231, 0x9ca90069); + let mut x1265: u32 = 0; + let mut x1266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1265, &mut x1266, 0x0, x1264, x1261); + let mut x1267: u32 = 0; + let mut x1268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1267, &mut x1268, x1266, x1262, x1259); + let mut x1269: u32 = 0; + let mut x1270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1269, &mut x1270, x1268, x1260, x1257); + let mut x1271: u32 = 0; + let mut x1272: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1271, &mut x1272, x1270, x1258, x1255); + let mut x1273: u32 = 0; + let mut x1274: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1273, &mut x1274, x1272, x1256, x1253); + let mut x1275: u32 = 0; + let mut x1276: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1275, &mut x1276, x1274, x1254, x1251); + let mut x1277: u32 = 0; + let mut x1278: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1277, &mut x1278, x1276, x1252, x1249); + let mut x1279: u32 = 0; + let mut x1280: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1279, &mut x1280, x1278, x1250, x1247); + let mut x1281: u32 = 0; + let mut x1282: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1281, &mut x1282, x1280, x1248, x1245); + let mut x1283: u32 = 0; + let mut x1284: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1283, &mut x1284, x1282, x1246, x1243); + let mut x1285: u32 = 0; + let mut x1286: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1285, &mut x1286, x1284, x1244, x1241); + let mut x1287: u32 = 0; + let mut x1288: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1287, &mut x1288, x1286, x1242, x1239); + let mut x1289: u32 = 0; + let mut x1290: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1289, &mut x1290, x1288, x1240, x1237); + let mut x1291: u32 = 0; + let mut x1292: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1291, &mut x1292, x1290, x1238, x1235); + let mut x1293: u32 = 0; + let mut x1294: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1293, &mut x1294, x1292, x1236, x1233); + let mut x1295: u32 = 0; + let mut x1296: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1295, &mut x1296, 0x0, x1199, x1263); + let mut x1297: u32 = 0; + let mut x1298: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1297, &mut x1298, x1296, x1201, x1265); + let mut x1299: u32 = 0; + let mut x1300: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1299, &mut x1300, x1298, x1203, x1267); + let mut x1301: u32 = 0; + let mut x1302: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1301, &mut x1302, x1300, x1205, x1269); + let mut x1303: u32 = 0; + let mut x1304: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1303, &mut x1304, x1302, x1207, x1271); + let mut x1305: u32 = 0; + let mut x1306: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1305, &mut x1306, x1304, x1209, x1273); + let mut x1307: u32 = 0; + let mut x1308: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1307, &mut x1308, x1306, x1211, x1275); + let mut x1309: u32 = 0; + let mut x1310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1309, &mut x1310, x1308, x1213, x1277); + let mut x1311: u32 = 0; + let mut x1312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1311, &mut x1312, x1310, x1215, x1279); + let mut x1313: u32 = 0; + let mut x1314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1313, &mut x1314, x1312, x1217, x1281); + let mut x1315: u32 = 0; + let mut x1316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1315, &mut x1316, x1314, x1219, x1283); + let mut x1317: u32 = 0; + let mut x1318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1317, &mut x1318, x1316, x1221, x1285); + let mut x1319: u32 = 0; + let mut x1320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1319, &mut x1320, x1318, x1223, x1287); + let mut x1321: u32 = 0; + let mut x1322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1321, &mut x1322, x1320, x1225, x1289); + let mut x1323: u32 = 0; + let mut x1324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1323, &mut x1324, x1322, x1227, x1291); + let mut x1325: u32 = 0; + let mut x1326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1325, &mut x1326, x1324, x1229, x1293); + let mut x1327: u32 = 0; + let mut x1328: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1327, + &mut x1328, + x1326, + (((x1230 as u32) + (x1136 as u32)) + ((x1198 as u32) + x1138)), + ((x1294 as u32) + x1234), + ); + let mut x1329: u32 = 0; + let mut x1330: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1329, &mut x1330, x7, 0xa794586a); + let mut x1331: u32 = 0; + let mut x1332: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1331, &mut x1332, x7, 0x718407b0); + let mut x1333: u32 = 0; + let mut x1334: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1333, &mut x1334, x7, 0x95df1b4c); + let mut x1335: u32 = 0; + let mut x1336: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1335, &mut x1336, x7, 0x194b2e56); + let mut x1337: u32 = 0; + let mut x1338: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1337, &mut x1338, x7, 0x723c37a2); + let mut x1339: u32 = 0; + let mut x1340: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1339, &mut x1340, x7, 0x2f16bbdf); + let mut x1341: u32 = 0; + let mut x1342: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1341, &mut x1342, x7, 0xd7f9cc26); + let mut x1343: u32 = 0; + let mut x1344: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1343, &mut x1344, x7, 0x3b790de3); + let mut x1345: u32 = 0; + let mut x1346: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1345, &mut x1346, x7, 0xa6f230c7); + let mut x1347: u32 = 0; + let mut x1348: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1347, &mut x1348, x7, 0x2f0207e8); + let mut x1349: u32 = 0; + let mut x1350: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1349, &mut x1350, x7, 0x3ec64bd0); + let mut x1351: u32 = 0; + let mut x1352: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1351, &mut x1352, x7, 0x33b7627f); + let mut x1353: u32 = 0; + let mut x1354: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1353, &mut x1354, x7, 0x886b758); + let mut x1355: u32 = 0; + let mut x1356: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1355, &mut x1356, x7, 0x95283ddd); + let mut x1357: u32 = 0; + let mut x1358: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1357, &mut x1358, x7, 0xd2a3681e); + let mut x1359: u32 = 0; + let mut x1360: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1359, &mut x1360, x7, 0xcda81671); + let mut x1361: u32 = 0; + let mut x1362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1361, &mut x1362, 0x0, x1360, x1357); + let mut x1363: u32 = 0; + let mut x1364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1363, &mut x1364, x1362, x1358, x1355); + let mut x1365: u32 = 0; + let mut x1366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1365, &mut x1366, x1364, x1356, x1353); + let mut x1367: u32 = 0; + let mut x1368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1367, &mut x1368, x1366, x1354, x1351); + let mut x1369: u32 = 0; + let mut x1370: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1369, &mut x1370, x1368, x1352, x1349); + let mut x1371: u32 = 0; + let mut x1372: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1371, &mut x1372, x1370, x1350, x1347); + let mut x1373: u32 = 0; + let mut x1374: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1373, &mut x1374, x1372, x1348, x1345); + let mut x1375: u32 = 0; + let mut x1376: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1375, &mut x1376, x1374, x1346, x1343); + let mut x1377: u32 = 0; + let mut x1378: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1377, &mut x1378, x1376, x1344, x1341); + let mut x1379: u32 = 0; + let mut x1380: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1379, &mut x1380, x1378, x1342, x1339); + let mut x1381: u32 = 0; + let mut x1382: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1381, &mut x1382, x1380, x1340, x1337); + let mut x1383: u32 = 0; + let mut x1384: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1383, &mut x1384, x1382, x1338, x1335); + let mut x1385: u32 = 0; + let mut x1386: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1385, &mut x1386, x1384, x1336, x1333); + let mut x1387: u32 = 0; + let mut x1388: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1387, &mut x1388, x1386, x1334, x1331); + let mut x1389: u32 = 0; + let mut x1390: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1389, &mut x1390, x1388, x1332, x1329); + let mut x1391: u32 = 0; + let mut x1392: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1391, &mut x1392, 0x0, x1297, x1359); + let mut x1393: u32 = 0; + let mut x1394: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1393, &mut x1394, x1392, x1299, x1361); + let mut x1395: u32 = 0; + let mut x1396: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1395, &mut x1396, x1394, x1301, x1363); + let mut x1397: u32 = 0; + let mut x1398: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1397, &mut x1398, x1396, x1303, x1365); + let mut x1399: u32 = 0; + let mut x1400: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1399, &mut x1400, x1398, x1305, x1367); + let mut x1401: u32 = 0; + let mut x1402: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1401, &mut x1402, x1400, x1307, x1369); + let mut x1403: u32 = 0; + let mut x1404: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1403, &mut x1404, x1402, x1309, x1371); + let mut x1405: u32 = 0; + let mut x1406: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1405, &mut x1406, x1404, x1311, x1373); + let mut x1407: u32 = 0; + let mut x1408: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1407, &mut x1408, x1406, x1313, x1375); + let mut x1409: u32 = 0; + let mut x1410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1409, &mut x1410, x1408, x1315, x1377); + let mut x1411: u32 = 0; + let mut x1412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1411, &mut x1412, x1410, x1317, x1379); + let mut x1413: u32 = 0; + let mut x1414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1413, &mut x1414, x1412, x1319, x1381); + let mut x1415: u32 = 0; + let mut x1416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1415, &mut x1416, x1414, x1321, x1383); + let mut x1417: u32 = 0; + let mut x1418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1417, &mut x1418, x1416, x1323, x1385); + let mut x1419: u32 = 0; + let mut x1420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1419, &mut x1420, x1418, x1325, x1387); + let mut x1421: u32 = 0; + let mut x1422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1421, &mut x1422, x1420, x1327, x1389); + let mut x1423: u32 = 0; + let mut x1424: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1423, &mut x1424, x1391, 0xf1b7027); + let mut x1425: u32 = 0; + let mut x1426: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1425, &mut x1426, x1423, 0xaadd9db8); + let mut x1427: u32 = 0; + let mut x1428: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1427, &mut x1428, x1423, 0xdbe9c48b); + let mut x1429: u32 = 0; + let mut x1430: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1429, &mut x1430, x1423, 0x3fd4e6ae); + let mut x1431: u32 = 0; + let mut x1432: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1431, &mut x1432, x1423, 0x33c9fc07); + let mut x1433: u32 = 0; + let mut x1434: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1433, &mut x1434, x1423, 0xcb308db3); + let mut x1435: u32 = 0; + let mut x1436: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1435, &mut x1436, x1423, 0xb3c9d20e); + let mut x1437: u32 = 0; + let mut x1438: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1437, &mut x1438, x1423, 0xd6639cca); + let mut x1439: u32 = 0; + let mut x1440: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1439, &mut x1440, x1423, 0x70330870); + let mut x1441: u32 = 0; + let mut x1442: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1441, &mut x1442, x1423, 0x553e5c41); + let mut x1443: u32 = 0; + let mut x1444: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1443, &mut x1444, x1423, 0x4ca92619); + let mut x1445: u32 = 0; + let mut x1446: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1445, &mut x1446, x1423, 0x41866119); + let mut x1447: u32 = 0; + let mut x1448: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1447, &mut x1448, x1423, 0x7fac1047); + let mut x1449: u32 = 0; + let mut x1450: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1449, &mut x1450, x1423, 0x1db1d381); + let mut x1451: u32 = 0; + let mut x1452: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1451, &mut x1452, x1423, 0x85ddadd); + let mut x1453: u32 = 0; + let mut x1454: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1453, &mut x1454, x1423, 0xb5879682); + let mut x1455: u32 = 0; + let mut x1456: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1455, &mut x1456, x1423, 0x9ca90069); + let mut x1457: u32 = 0; + let mut x1458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1457, &mut x1458, 0x0, x1456, x1453); + let mut x1459: u32 = 0; + let mut x1460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1459, &mut x1460, x1458, x1454, x1451); + let mut x1461: u32 = 0; + let mut x1462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1461, &mut x1462, x1460, x1452, x1449); + let mut x1463: u32 = 0; + let mut x1464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1463, &mut x1464, x1462, x1450, x1447); + let mut x1465: u32 = 0; + let mut x1466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1465, &mut x1466, x1464, x1448, x1445); + let mut x1467: u32 = 0; + let mut x1468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1467, &mut x1468, x1466, x1446, x1443); + let mut x1469: u32 = 0; + let mut x1470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1469, &mut x1470, x1468, x1444, x1441); + let mut x1471: u32 = 0; + let mut x1472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1471, &mut x1472, x1470, x1442, x1439); + let mut x1473: u32 = 0; + let mut x1474: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1473, &mut x1474, x1472, x1440, x1437); + let mut x1475: u32 = 0; + let mut x1476: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1475, &mut x1476, x1474, x1438, x1435); + let mut x1477: u32 = 0; + let mut x1478: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1477, &mut x1478, x1476, x1436, x1433); + let mut x1479: u32 = 0; + let mut x1480: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1479, &mut x1480, x1478, x1434, x1431); + let mut x1481: u32 = 0; + let mut x1482: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1481, &mut x1482, x1480, x1432, x1429); + let mut x1483: u32 = 0; + let mut x1484: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1483, &mut x1484, x1482, x1430, x1427); + let mut x1485: u32 = 0; + let mut x1486: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1485, &mut x1486, x1484, x1428, x1425); + let mut x1487: u32 = 0; + let mut x1488: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1487, &mut x1488, 0x0, x1391, x1455); + let mut x1489: u32 = 0; + let mut x1490: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1489, &mut x1490, x1488, x1393, x1457); + let mut x1491: u32 = 0; + let mut x1492: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1491, &mut x1492, x1490, x1395, x1459); + let mut x1493: u32 = 0; + let mut x1494: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1493, &mut x1494, x1492, x1397, x1461); + let mut x1495: u32 = 0; + let mut x1496: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1495, &mut x1496, x1494, x1399, x1463); + let mut x1497: u32 = 0; + let mut x1498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1497, &mut x1498, x1496, x1401, x1465); + let mut x1499: u32 = 0; + let mut x1500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1499, &mut x1500, x1498, x1403, x1467); + let mut x1501: u32 = 0; + let mut x1502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1501, &mut x1502, x1500, x1405, x1469); + let mut x1503: u32 = 0; + let mut x1504: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1503, &mut x1504, x1502, x1407, x1471); + let mut x1505: u32 = 0; + let mut x1506: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1505, &mut x1506, x1504, x1409, x1473); + let mut x1507: u32 = 0; + let mut x1508: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1507, &mut x1508, x1506, x1411, x1475); + let mut x1509: u32 = 0; + let mut x1510: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1509, &mut x1510, x1508, x1413, x1477); + let mut x1511: u32 = 0; + let mut x1512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1511, &mut x1512, x1510, x1415, x1479); + let mut x1513: u32 = 0; + let mut x1514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1513, &mut x1514, x1512, x1417, x1481); + let mut x1515: u32 = 0; + let mut x1516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1515, &mut x1516, x1514, x1419, x1483); + let mut x1517: u32 = 0; + let mut x1518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1517, &mut x1518, x1516, x1421, x1485); + let mut x1519: u32 = 0; + let mut x1520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1519, + &mut x1520, + x1518, + (((x1422 as u32) + (x1328 as u32)) + ((x1390 as u32) + x1330)), + ((x1486 as u32) + x1426), + ); + let mut x1521: u32 = 0; + let mut x1522: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1521, &mut x1522, x8, 0xa794586a); + let mut x1523: u32 = 0; + let mut x1524: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1523, &mut x1524, x8, 0x718407b0); + let mut x1525: u32 = 0; + let mut x1526: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1525, &mut x1526, x8, 0x95df1b4c); + let mut x1527: u32 = 0; + let mut x1528: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1527, &mut x1528, x8, 0x194b2e56); + let mut x1529: u32 = 0; + let mut x1530: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1529, &mut x1530, x8, 0x723c37a2); + let mut x1531: u32 = 0; + let mut x1532: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1531, &mut x1532, x8, 0x2f16bbdf); + let mut x1533: u32 = 0; + let mut x1534: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1533, &mut x1534, x8, 0xd7f9cc26); + let mut x1535: u32 = 0; + let mut x1536: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1535, &mut x1536, x8, 0x3b790de3); + let mut x1537: u32 = 0; + let mut x1538: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1537, &mut x1538, x8, 0xa6f230c7); + let mut x1539: u32 = 0; + let mut x1540: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1539, &mut x1540, x8, 0x2f0207e8); + let mut x1541: u32 = 0; + let mut x1542: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1541, &mut x1542, x8, 0x3ec64bd0); + let mut x1543: u32 = 0; + let mut x1544: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1543, &mut x1544, x8, 0x33b7627f); + let mut x1545: u32 = 0; + let mut x1546: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1545, &mut x1546, x8, 0x886b758); + let mut x1547: u32 = 0; + let mut x1548: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1547, &mut x1548, x8, 0x95283ddd); + let mut x1549: u32 = 0; + let mut x1550: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1549, &mut x1550, x8, 0xd2a3681e); + let mut x1551: u32 = 0; + let mut x1552: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1551, &mut x1552, x8, 0xcda81671); + let mut x1553: u32 = 0; + let mut x1554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1553, &mut x1554, 0x0, x1552, x1549); + let mut x1555: u32 = 0; + let mut x1556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1555, &mut x1556, x1554, x1550, x1547); + let mut x1557: u32 = 0; + let mut x1558: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1557, &mut x1558, x1556, x1548, x1545); + let mut x1559: u32 = 0; + let mut x1560: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1559, &mut x1560, x1558, x1546, x1543); + let mut x1561: u32 = 0; + let mut x1562: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1561, &mut x1562, x1560, x1544, x1541); + let mut x1563: u32 = 0; + let mut x1564: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1563, &mut x1564, x1562, x1542, x1539); + let mut x1565: u32 = 0; + let mut x1566: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1565, &mut x1566, x1564, x1540, x1537); + let mut x1567: u32 = 0; + let mut x1568: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1567, &mut x1568, x1566, x1538, x1535); + let mut x1569: u32 = 0; + let mut x1570: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1569, &mut x1570, x1568, x1536, x1533); + let mut x1571: u32 = 0; + let mut x1572: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1571, &mut x1572, x1570, x1534, x1531); + let mut x1573: u32 = 0; + let mut x1574: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1573, &mut x1574, x1572, x1532, x1529); + let mut x1575: u32 = 0; + let mut x1576: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1575, &mut x1576, x1574, x1530, x1527); + let mut x1577: u32 = 0; + let mut x1578: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1577, &mut x1578, x1576, x1528, x1525); + let mut x1579: u32 = 0; + let mut x1580: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1579, &mut x1580, x1578, x1526, x1523); + let mut x1581: u32 = 0; + let mut x1582: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1581, &mut x1582, x1580, x1524, x1521); + let mut x1583: u32 = 0; + let mut x1584: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1583, &mut x1584, 0x0, x1489, x1551); + let mut x1585: u32 = 0; + let mut x1586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1585, &mut x1586, x1584, x1491, x1553); + let mut x1587: u32 = 0; + let mut x1588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1587, &mut x1588, x1586, x1493, x1555); + let mut x1589: u32 = 0; + let mut x1590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1589, &mut x1590, x1588, x1495, x1557); + let mut x1591: u32 = 0; + let mut x1592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1591, &mut x1592, x1590, x1497, x1559); + let mut x1593: u32 = 0; + let mut x1594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1593, &mut x1594, x1592, x1499, x1561); + let mut x1595: u32 = 0; + let mut x1596: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1595, &mut x1596, x1594, x1501, x1563); + let mut x1597: u32 = 0; + let mut x1598: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1597, &mut x1598, x1596, x1503, x1565); + let mut x1599: u32 = 0; + let mut x1600: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1599, &mut x1600, x1598, x1505, x1567); + let mut x1601: u32 = 0; + let mut x1602: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1601, &mut x1602, x1600, x1507, x1569); + let mut x1603: u32 = 0; + let mut x1604: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1603, &mut x1604, x1602, x1509, x1571); + let mut x1605: u32 = 0; + let mut x1606: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1605, &mut x1606, x1604, x1511, x1573); + let mut x1607: u32 = 0; + let mut x1608: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1607, &mut x1608, x1606, x1513, x1575); + let mut x1609: u32 = 0; + let mut x1610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1609, &mut x1610, x1608, x1515, x1577); + let mut x1611: u32 = 0; + let mut x1612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1611, &mut x1612, x1610, x1517, x1579); + let mut x1613: u32 = 0; + let mut x1614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1613, &mut x1614, x1612, x1519, x1581); + let mut x1615: u32 = 0; + let mut x1616: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1615, &mut x1616, x1583, 0xf1b7027); + let mut x1617: u32 = 0; + let mut x1618: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1617, &mut x1618, x1615, 0xaadd9db8); + let mut x1619: u32 = 0; + let mut x1620: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1619, &mut x1620, x1615, 0xdbe9c48b); + let mut x1621: u32 = 0; + let mut x1622: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1621, &mut x1622, x1615, 0x3fd4e6ae); + let mut x1623: u32 = 0; + let mut x1624: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1623, &mut x1624, x1615, 0x33c9fc07); + let mut x1625: u32 = 0; + let mut x1626: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1625, &mut x1626, x1615, 0xcb308db3); + let mut x1627: u32 = 0; + let mut x1628: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1627, &mut x1628, x1615, 0xb3c9d20e); + let mut x1629: u32 = 0; + let mut x1630: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1629, &mut x1630, x1615, 0xd6639cca); + let mut x1631: u32 = 0; + let mut x1632: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1631, &mut x1632, x1615, 0x70330870); + let mut x1633: u32 = 0; + let mut x1634: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1633, &mut x1634, x1615, 0x553e5c41); + let mut x1635: u32 = 0; + let mut x1636: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1635, &mut x1636, x1615, 0x4ca92619); + let mut x1637: u32 = 0; + let mut x1638: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1637, &mut x1638, x1615, 0x41866119); + let mut x1639: u32 = 0; + let mut x1640: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1639, &mut x1640, x1615, 0x7fac1047); + let mut x1641: u32 = 0; + let mut x1642: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1641, &mut x1642, x1615, 0x1db1d381); + let mut x1643: u32 = 0; + let mut x1644: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1643, &mut x1644, x1615, 0x85ddadd); + let mut x1645: u32 = 0; + let mut x1646: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1645, &mut x1646, x1615, 0xb5879682); + let mut x1647: u32 = 0; + let mut x1648: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1647, &mut x1648, x1615, 0x9ca90069); + let mut x1649: u32 = 0; + let mut x1650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1649, &mut x1650, 0x0, x1648, x1645); + let mut x1651: u32 = 0; + let mut x1652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1651, &mut x1652, x1650, x1646, x1643); + let mut x1653: u32 = 0; + let mut x1654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1653, &mut x1654, x1652, x1644, x1641); + let mut x1655: u32 = 0; + let mut x1656: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1655, &mut x1656, x1654, x1642, x1639); + let mut x1657: u32 = 0; + let mut x1658: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1657, &mut x1658, x1656, x1640, x1637); + let mut x1659: u32 = 0; + let mut x1660: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1659, &mut x1660, x1658, x1638, x1635); + let mut x1661: u32 = 0; + let mut x1662: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1661, &mut x1662, x1660, x1636, x1633); + let mut x1663: u32 = 0; + let mut x1664: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1663, &mut x1664, x1662, x1634, x1631); + let mut x1665: u32 = 0; + let mut x1666: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1665, &mut x1666, x1664, x1632, x1629); + let mut x1667: u32 = 0; + let mut x1668: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1667, &mut x1668, x1666, x1630, x1627); + let mut x1669: u32 = 0; + let mut x1670: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1669, &mut x1670, x1668, x1628, x1625); + let mut x1671: u32 = 0; + let mut x1672: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1671, &mut x1672, x1670, x1626, x1623); + let mut x1673: u32 = 0; + let mut x1674: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1673, &mut x1674, x1672, x1624, x1621); + let mut x1675: u32 = 0; + let mut x1676: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1675, &mut x1676, x1674, x1622, x1619); + let mut x1677: u32 = 0; + let mut x1678: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1677, &mut x1678, x1676, x1620, x1617); + let mut x1679: u32 = 0; + let mut x1680: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1679, &mut x1680, 0x0, x1583, x1647); + let mut x1681: u32 = 0; + let mut x1682: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1681, &mut x1682, x1680, x1585, x1649); + let mut x1683: u32 = 0; + let mut x1684: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1683, &mut x1684, x1682, x1587, x1651); + let mut x1685: u32 = 0; + let mut x1686: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1685, &mut x1686, x1684, x1589, x1653); + let mut x1687: u32 = 0; + let mut x1688: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1687, &mut x1688, x1686, x1591, x1655); + let mut x1689: u32 = 0; + let mut x1690: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1689, &mut x1690, x1688, x1593, x1657); + let mut x1691: u32 = 0; + let mut x1692: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1691, &mut x1692, x1690, x1595, x1659); + let mut x1693: u32 = 0; + let mut x1694: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1693, &mut x1694, x1692, x1597, x1661); + let mut x1695: u32 = 0; + let mut x1696: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1695, &mut x1696, x1694, x1599, x1663); + let mut x1697: u32 = 0; + let mut x1698: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1697, &mut x1698, x1696, x1601, x1665); + let mut x1699: u32 = 0; + let mut x1700: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1699, &mut x1700, x1698, x1603, x1667); + let mut x1701: u32 = 0; + let mut x1702: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1701, &mut x1702, x1700, x1605, x1669); + let mut x1703: u32 = 0; + let mut x1704: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1703, &mut x1704, x1702, x1607, x1671); + let mut x1705: u32 = 0; + let mut x1706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1705, &mut x1706, x1704, x1609, x1673); + let mut x1707: u32 = 0; + let mut x1708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1707, &mut x1708, x1706, x1611, x1675); + let mut x1709: u32 = 0; + let mut x1710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1709, &mut x1710, x1708, x1613, x1677); + let mut x1711: u32 = 0; + let mut x1712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1711, + &mut x1712, + x1710, + (((x1614 as u32) + (x1520 as u32)) + ((x1582 as u32) + x1522)), + ((x1678 as u32) + x1618), + ); + let mut x1713: u32 = 0; + let mut x1714: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1713, &mut x1714, x9, 0xa794586a); + let mut x1715: u32 = 0; + let mut x1716: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1715, &mut x1716, x9, 0x718407b0); + let mut x1717: u32 = 0; + let mut x1718: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1717, &mut x1718, x9, 0x95df1b4c); + let mut x1719: u32 = 0; + let mut x1720: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1719, &mut x1720, x9, 0x194b2e56); + let mut x1721: u32 = 0; + let mut x1722: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1721, &mut x1722, x9, 0x723c37a2); + let mut x1723: u32 = 0; + let mut x1724: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1723, &mut x1724, x9, 0x2f16bbdf); + let mut x1725: u32 = 0; + let mut x1726: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1725, &mut x1726, x9, 0xd7f9cc26); + let mut x1727: u32 = 0; + let mut x1728: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1727, &mut x1728, x9, 0x3b790de3); + let mut x1729: u32 = 0; + let mut x1730: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1729, &mut x1730, x9, 0xa6f230c7); + let mut x1731: u32 = 0; + let mut x1732: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1731, &mut x1732, x9, 0x2f0207e8); + let mut x1733: u32 = 0; + let mut x1734: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1733, &mut x1734, x9, 0x3ec64bd0); + let mut x1735: u32 = 0; + let mut x1736: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1735, &mut x1736, x9, 0x33b7627f); + let mut x1737: u32 = 0; + let mut x1738: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1737, &mut x1738, x9, 0x886b758); + let mut x1739: u32 = 0; + let mut x1740: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1739, &mut x1740, x9, 0x95283ddd); + let mut x1741: u32 = 0; + let mut x1742: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1741, &mut x1742, x9, 0xd2a3681e); + let mut x1743: u32 = 0; + let mut x1744: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1743, &mut x1744, x9, 0xcda81671); + let mut x1745: u32 = 0; + let mut x1746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1745, &mut x1746, 0x0, x1744, x1741); + let mut x1747: u32 = 0; + let mut x1748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1747, &mut x1748, x1746, x1742, x1739); + let mut x1749: u32 = 0; + let mut x1750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1749, &mut x1750, x1748, x1740, x1737); + let mut x1751: u32 = 0; + let mut x1752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1751, &mut x1752, x1750, x1738, x1735); + let mut x1753: u32 = 0; + let mut x1754: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1753, &mut x1754, x1752, x1736, x1733); + let mut x1755: u32 = 0; + let mut x1756: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1755, &mut x1756, x1754, x1734, x1731); + let mut x1757: u32 = 0; + let mut x1758: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1757, &mut x1758, x1756, x1732, x1729); + let mut x1759: u32 = 0; + let mut x1760: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1759, &mut x1760, x1758, x1730, x1727); + let mut x1761: u32 = 0; + let mut x1762: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1761, &mut x1762, x1760, x1728, x1725); + let mut x1763: u32 = 0; + let mut x1764: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1763, &mut x1764, x1762, x1726, x1723); + let mut x1765: u32 = 0; + let mut x1766: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1765, &mut x1766, x1764, x1724, x1721); + let mut x1767: u32 = 0; + let mut x1768: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1767, &mut x1768, x1766, x1722, x1719); + let mut x1769: u32 = 0; + let mut x1770: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1769, &mut x1770, x1768, x1720, x1717); + let mut x1771: u32 = 0; + let mut x1772: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1771, &mut x1772, x1770, x1718, x1715); + let mut x1773: u32 = 0; + let mut x1774: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1773, &mut x1774, x1772, x1716, x1713); + let mut x1775: u32 = 0; + let mut x1776: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1775, &mut x1776, 0x0, x1681, x1743); + let mut x1777: u32 = 0; + let mut x1778: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1777, &mut x1778, x1776, x1683, x1745); + let mut x1779: u32 = 0; + let mut x1780: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1779, &mut x1780, x1778, x1685, x1747); + let mut x1781: u32 = 0; + let mut x1782: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1781, &mut x1782, x1780, x1687, x1749); + let mut x1783: u32 = 0; + let mut x1784: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1783, &mut x1784, x1782, x1689, x1751); + let mut x1785: u32 = 0; + let mut x1786: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1785, &mut x1786, x1784, x1691, x1753); + let mut x1787: u32 = 0; + let mut x1788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1787, &mut x1788, x1786, x1693, x1755); + let mut x1789: u32 = 0; + let mut x1790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1789, &mut x1790, x1788, x1695, x1757); + let mut x1791: u32 = 0; + let mut x1792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1791, &mut x1792, x1790, x1697, x1759); + let mut x1793: u32 = 0; + let mut x1794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1793, &mut x1794, x1792, x1699, x1761); + let mut x1795: u32 = 0; + let mut x1796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1795, &mut x1796, x1794, x1701, x1763); + let mut x1797: u32 = 0; + let mut x1798: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1797, &mut x1798, x1796, x1703, x1765); + let mut x1799: u32 = 0; + let mut x1800: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1799, &mut x1800, x1798, x1705, x1767); + let mut x1801: u32 = 0; + let mut x1802: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1801, &mut x1802, x1800, x1707, x1769); + let mut x1803: u32 = 0; + let mut x1804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1803, &mut x1804, x1802, x1709, x1771); + let mut x1805: u32 = 0; + let mut x1806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1805, &mut x1806, x1804, x1711, x1773); + let mut x1807: u32 = 0; + let mut x1808: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1807, &mut x1808, x1775, 0xf1b7027); + let mut x1809: u32 = 0; + let mut x1810: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1809, &mut x1810, x1807, 0xaadd9db8); + let mut x1811: u32 = 0; + let mut x1812: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1811, &mut x1812, x1807, 0xdbe9c48b); + let mut x1813: u32 = 0; + let mut x1814: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1813, &mut x1814, x1807, 0x3fd4e6ae); + let mut x1815: u32 = 0; + let mut x1816: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1815, &mut x1816, x1807, 0x33c9fc07); + let mut x1817: u32 = 0; + let mut x1818: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1817, &mut x1818, x1807, 0xcb308db3); + let mut x1819: u32 = 0; + let mut x1820: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1819, &mut x1820, x1807, 0xb3c9d20e); + let mut x1821: u32 = 0; + let mut x1822: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1821, &mut x1822, x1807, 0xd6639cca); + let mut x1823: u32 = 0; + let mut x1824: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1823, &mut x1824, x1807, 0x70330870); + let mut x1825: u32 = 0; + let mut x1826: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1825, &mut x1826, x1807, 0x553e5c41); + let mut x1827: u32 = 0; + let mut x1828: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1827, &mut x1828, x1807, 0x4ca92619); + let mut x1829: u32 = 0; + let mut x1830: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1829, &mut x1830, x1807, 0x41866119); + let mut x1831: u32 = 0; + let mut x1832: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1831, &mut x1832, x1807, 0x7fac1047); + let mut x1833: u32 = 0; + let mut x1834: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1833, &mut x1834, x1807, 0x1db1d381); + let mut x1835: u32 = 0; + let mut x1836: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1835, &mut x1836, x1807, 0x85ddadd); + let mut x1837: u32 = 0; + let mut x1838: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1837, &mut x1838, x1807, 0xb5879682); + let mut x1839: u32 = 0; + let mut x1840: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1839, &mut x1840, x1807, 0x9ca90069); + let mut x1841: u32 = 0; + let mut x1842: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1841, &mut x1842, 0x0, x1840, x1837); + let mut x1843: u32 = 0; + let mut x1844: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1843, &mut x1844, x1842, x1838, x1835); + let mut x1845: u32 = 0; + let mut x1846: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1845, &mut x1846, x1844, x1836, x1833); + let mut x1847: u32 = 0; + let mut x1848: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1847, &mut x1848, x1846, x1834, x1831); + let mut x1849: u32 = 0; + let mut x1850: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1849, &mut x1850, x1848, x1832, x1829); + let mut x1851: u32 = 0; + let mut x1852: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1851, &mut x1852, x1850, x1830, x1827); + let mut x1853: u32 = 0; + let mut x1854: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1853, &mut x1854, x1852, x1828, x1825); + let mut x1855: u32 = 0; + let mut x1856: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1855, &mut x1856, x1854, x1826, x1823); + let mut x1857: u32 = 0; + let mut x1858: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1857, &mut x1858, x1856, x1824, x1821); + let mut x1859: u32 = 0; + let mut x1860: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1859, &mut x1860, x1858, x1822, x1819); + let mut x1861: u32 = 0; + let mut x1862: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1861, &mut x1862, x1860, x1820, x1817); + let mut x1863: u32 = 0; + let mut x1864: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1863, &mut x1864, x1862, x1818, x1815); + let mut x1865: u32 = 0; + let mut x1866: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1865, &mut x1866, x1864, x1816, x1813); + let mut x1867: u32 = 0; + let mut x1868: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1867, &mut x1868, x1866, x1814, x1811); + let mut x1869: u32 = 0; + let mut x1870: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1869, &mut x1870, x1868, x1812, x1809); + let mut x1871: u32 = 0; + let mut x1872: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1871, &mut x1872, 0x0, x1775, x1839); + let mut x1873: u32 = 0; + let mut x1874: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1873, &mut x1874, x1872, x1777, x1841); + let mut x1875: u32 = 0; + let mut x1876: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1875, &mut x1876, x1874, x1779, x1843); + let mut x1877: u32 = 0; + let mut x1878: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1877, &mut x1878, x1876, x1781, x1845); + let mut x1879: u32 = 0; + let mut x1880: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1879, &mut x1880, x1878, x1783, x1847); + let mut x1881: u32 = 0; + let mut x1882: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1881, &mut x1882, x1880, x1785, x1849); + let mut x1883: u32 = 0; + let mut x1884: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1883, &mut x1884, x1882, x1787, x1851); + let mut x1885: u32 = 0; + let mut x1886: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1885, &mut x1886, x1884, x1789, x1853); + let mut x1887: u32 = 0; + let mut x1888: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1887, &mut x1888, x1886, x1791, x1855); + let mut x1889: u32 = 0; + let mut x1890: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1889, &mut x1890, x1888, x1793, x1857); + let mut x1891: u32 = 0; + let mut x1892: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1891, &mut x1892, x1890, x1795, x1859); + let mut x1893: u32 = 0; + let mut x1894: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1893, &mut x1894, x1892, x1797, x1861); + let mut x1895: u32 = 0; + let mut x1896: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1895, &mut x1896, x1894, x1799, x1863); + let mut x1897: u32 = 0; + let mut x1898: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1897, &mut x1898, x1896, x1801, x1865); + let mut x1899: u32 = 0; + let mut x1900: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1899, &mut x1900, x1898, x1803, x1867); + let mut x1901: u32 = 0; + let mut x1902: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1901, &mut x1902, x1900, x1805, x1869); + let mut x1903: u32 = 0; + let mut x1904: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x1903, + &mut x1904, + x1902, + (((x1806 as u32) + (x1712 as u32)) + ((x1774 as u32) + x1714)), + ((x1870 as u32) + x1810), + ); + let mut x1905: u32 = 0; + let mut x1906: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1905, &mut x1906, x10, 0xa794586a); + let mut x1907: u32 = 0; + let mut x1908: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1907, &mut x1908, x10, 0x718407b0); + let mut x1909: u32 = 0; + let mut x1910: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1909, &mut x1910, x10, 0x95df1b4c); + let mut x1911: u32 = 0; + let mut x1912: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1911, &mut x1912, x10, 0x194b2e56); + let mut x1913: u32 = 0; + let mut x1914: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1913, &mut x1914, x10, 0x723c37a2); + let mut x1915: u32 = 0; + let mut x1916: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1915, &mut x1916, x10, 0x2f16bbdf); + let mut x1917: u32 = 0; + let mut x1918: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1917, &mut x1918, x10, 0xd7f9cc26); + let mut x1919: u32 = 0; + let mut x1920: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1919, &mut x1920, x10, 0x3b790de3); + let mut x1921: u32 = 0; + let mut x1922: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1921, &mut x1922, x10, 0xa6f230c7); + let mut x1923: u32 = 0; + let mut x1924: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1923, &mut x1924, x10, 0x2f0207e8); + let mut x1925: u32 = 0; + let mut x1926: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1925, &mut x1926, x10, 0x3ec64bd0); + let mut x1927: u32 = 0; + let mut x1928: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1927, &mut x1928, x10, 0x33b7627f); + let mut x1929: u32 = 0; + let mut x1930: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1929, &mut x1930, x10, 0x886b758); + let mut x1931: u32 = 0; + let mut x1932: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1931, &mut x1932, x10, 0x95283ddd); + let mut x1933: u32 = 0; + let mut x1934: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1933, &mut x1934, x10, 0xd2a3681e); + let mut x1935: u32 = 0; + let mut x1936: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1935, &mut x1936, x10, 0xcda81671); + let mut x1937: u32 = 0; + let mut x1938: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1937, &mut x1938, 0x0, x1936, x1933); + let mut x1939: u32 = 0; + let mut x1940: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1939, &mut x1940, x1938, x1934, x1931); + let mut x1941: u32 = 0; + let mut x1942: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1941, &mut x1942, x1940, x1932, x1929); + let mut x1943: u32 = 0; + let mut x1944: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1943, &mut x1944, x1942, x1930, x1927); + let mut x1945: u32 = 0; + let mut x1946: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1945, &mut x1946, x1944, x1928, x1925); + let mut x1947: u32 = 0; + let mut x1948: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1947, &mut x1948, x1946, x1926, x1923); + let mut x1949: u32 = 0; + let mut x1950: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1949, &mut x1950, x1948, x1924, x1921); + let mut x1951: u32 = 0; + let mut x1952: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1951, &mut x1952, x1950, x1922, x1919); + let mut x1953: u32 = 0; + let mut x1954: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1953, &mut x1954, x1952, x1920, x1917); + let mut x1955: u32 = 0; + let mut x1956: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1955, &mut x1956, x1954, x1918, x1915); + let mut x1957: u32 = 0; + let mut x1958: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1957, &mut x1958, x1956, x1916, x1913); + let mut x1959: u32 = 0; + let mut x1960: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1959, &mut x1960, x1958, x1914, x1911); + let mut x1961: u32 = 0; + let mut x1962: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1961, &mut x1962, x1960, x1912, x1909); + let mut x1963: u32 = 0; + let mut x1964: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1963, &mut x1964, x1962, x1910, x1907); + let mut x1965: u32 = 0; + let mut x1966: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1965, &mut x1966, x1964, x1908, x1905); + let mut x1967: u32 = 0; + let mut x1968: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1967, &mut x1968, 0x0, x1873, x1935); + let mut x1969: u32 = 0; + let mut x1970: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1969, &mut x1970, x1968, x1875, x1937); + let mut x1971: u32 = 0; + let mut x1972: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1971, &mut x1972, x1970, x1877, x1939); + let mut x1973: u32 = 0; + let mut x1974: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1973, &mut x1974, x1972, x1879, x1941); + let mut x1975: u32 = 0; + let mut x1976: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1975, &mut x1976, x1974, x1881, x1943); + let mut x1977: u32 = 0; + let mut x1978: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1977, &mut x1978, x1976, x1883, x1945); + let mut x1979: u32 = 0; + let mut x1980: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1979, &mut x1980, x1978, x1885, x1947); + let mut x1981: u32 = 0; + let mut x1982: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1981, &mut x1982, x1980, x1887, x1949); + let mut x1983: u32 = 0; + let mut x1984: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1983, &mut x1984, x1982, x1889, x1951); + let mut x1985: u32 = 0; + let mut x1986: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1985, &mut x1986, x1984, x1891, x1953); + let mut x1987: u32 = 0; + let mut x1988: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1987, &mut x1988, x1986, x1893, x1955); + let mut x1989: u32 = 0; + let mut x1990: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1989, &mut x1990, x1988, x1895, x1957); + let mut x1991: u32 = 0; + let mut x1992: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1991, &mut x1992, x1990, x1897, x1959); + let mut x1993: u32 = 0; + let mut x1994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1993, &mut x1994, x1992, x1899, x1961); + let mut x1995: u32 = 0; + let mut x1996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1995, &mut x1996, x1994, x1901, x1963); + let mut x1997: u32 = 0; + let mut x1998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1997, &mut x1998, x1996, x1903, x1965); + let mut x1999: u32 = 0; + let mut x2000: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x1999, &mut x2000, x1967, 0xf1b7027); + let mut x2001: u32 = 0; + let mut x2002: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2001, &mut x2002, x1999, 0xaadd9db8); + let mut x2003: u32 = 0; + let mut x2004: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2003, &mut x2004, x1999, 0xdbe9c48b); + let mut x2005: u32 = 0; + let mut x2006: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2005, &mut x2006, x1999, 0x3fd4e6ae); + let mut x2007: u32 = 0; + let mut x2008: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2007, &mut x2008, x1999, 0x33c9fc07); + let mut x2009: u32 = 0; + let mut x2010: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2009, &mut x2010, x1999, 0xcb308db3); + let mut x2011: u32 = 0; + let mut x2012: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2011, &mut x2012, x1999, 0xb3c9d20e); + let mut x2013: u32 = 0; + let mut x2014: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2013, &mut x2014, x1999, 0xd6639cca); + let mut x2015: u32 = 0; + let mut x2016: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2015, &mut x2016, x1999, 0x70330870); + let mut x2017: u32 = 0; + let mut x2018: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2017, &mut x2018, x1999, 0x553e5c41); + let mut x2019: u32 = 0; + let mut x2020: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2019, &mut x2020, x1999, 0x4ca92619); + let mut x2021: u32 = 0; + let mut x2022: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2021, &mut x2022, x1999, 0x41866119); + let mut x2023: u32 = 0; + let mut x2024: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2023, &mut x2024, x1999, 0x7fac1047); + let mut x2025: u32 = 0; + let mut x2026: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2025, &mut x2026, x1999, 0x1db1d381); + let mut x2027: u32 = 0; + let mut x2028: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2027, &mut x2028, x1999, 0x85ddadd); + let mut x2029: u32 = 0; + let mut x2030: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2029, &mut x2030, x1999, 0xb5879682); + let mut x2031: u32 = 0; + let mut x2032: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2031, &mut x2032, x1999, 0x9ca90069); + let mut x2033: u32 = 0; + let mut x2034: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2033, &mut x2034, 0x0, x2032, x2029); + let mut x2035: u32 = 0; + let mut x2036: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2035, &mut x2036, x2034, x2030, x2027); + let mut x2037: u32 = 0; + let mut x2038: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2037, &mut x2038, x2036, x2028, x2025); + let mut x2039: u32 = 0; + let mut x2040: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2039, &mut x2040, x2038, x2026, x2023); + let mut x2041: u32 = 0; + let mut x2042: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2041, &mut x2042, x2040, x2024, x2021); + let mut x2043: u32 = 0; + let mut x2044: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2043, &mut x2044, x2042, x2022, x2019); + let mut x2045: u32 = 0; + let mut x2046: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2045, &mut x2046, x2044, x2020, x2017); + let mut x2047: u32 = 0; + let mut x2048: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2047, &mut x2048, x2046, x2018, x2015); + let mut x2049: u32 = 0; + let mut x2050: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2049, &mut x2050, x2048, x2016, x2013); + let mut x2051: u32 = 0; + let mut x2052: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2051, &mut x2052, x2050, x2014, x2011); + let mut x2053: u32 = 0; + let mut x2054: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2053, &mut x2054, x2052, x2012, x2009); + let mut x2055: u32 = 0; + let mut x2056: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2055, &mut x2056, x2054, x2010, x2007); + let mut x2057: u32 = 0; + let mut x2058: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2057, &mut x2058, x2056, x2008, x2005); + let mut x2059: u32 = 0; + let mut x2060: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2059, &mut x2060, x2058, x2006, x2003); + let mut x2061: u32 = 0; + let mut x2062: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2061, &mut x2062, x2060, x2004, x2001); + let mut x2063: u32 = 0; + let mut x2064: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2063, &mut x2064, 0x0, x1967, x2031); + let mut x2065: u32 = 0; + let mut x2066: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2065, &mut x2066, x2064, x1969, x2033); + let mut x2067: u32 = 0; + let mut x2068: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2067, &mut x2068, x2066, x1971, x2035); + let mut x2069: u32 = 0; + let mut x2070: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2069, &mut x2070, x2068, x1973, x2037); + let mut x2071: u32 = 0; + let mut x2072: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2071, &mut x2072, x2070, x1975, x2039); + let mut x2073: u32 = 0; + let mut x2074: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2073, &mut x2074, x2072, x1977, x2041); + let mut x2075: u32 = 0; + let mut x2076: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2075, &mut x2076, x2074, x1979, x2043); + let mut x2077: u32 = 0; + let mut x2078: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2077, &mut x2078, x2076, x1981, x2045); + let mut x2079: u32 = 0; + let mut x2080: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2079, &mut x2080, x2078, x1983, x2047); + let mut x2081: u32 = 0; + let mut x2082: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2081, &mut x2082, x2080, x1985, x2049); + let mut x2083: u32 = 0; + let mut x2084: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2083, &mut x2084, x2082, x1987, x2051); + let mut x2085: u32 = 0; + let mut x2086: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2085, &mut x2086, x2084, x1989, x2053); + let mut x2087: u32 = 0; + let mut x2088: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2087, &mut x2088, x2086, x1991, x2055); + let mut x2089: u32 = 0; + let mut x2090: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2089, &mut x2090, x2088, x1993, x2057); + let mut x2091: u32 = 0; + let mut x2092: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2091, &mut x2092, x2090, x1995, x2059); + let mut x2093: u32 = 0; + let mut x2094: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2093, &mut x2094, x2092, x1997, x2061); + let mut x2095: u32 = 0; + let mut x2096: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x2095, + &mut x2096, + x2094, + (((x1998 as u32) + (x1904 as u32)) + ((x1966 as u32) + x1906)), + ((x2062 as u32) + x2002), + ); + let mut x2097: u32 = 0; + let mut x2098: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2097, &mut x2098, x11, 0xa794586a); + let mut x2099: u32 = 0; + let mut x2100: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2099, &mut x2100, x11, 0x718407b0); + let mut x2101: u32 = 0; + let mut x2102: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2101, &mut x2102, x11, 0x95df1b4c); + let mut x2103: u32 = 0; + let mut x2104: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2103, &mut x2104, x11, 0x194b2e56); + let mut x2105: u32 = 0; + let mut x2106: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2105, &mut x2106, x11, 0x723c37a2); + let mut x2107: u32 = 0; + let mut x2108: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2107, &mut x2108, x11, 0x2f16bbdf); + let mut x2109: u32 = 0; + let mut x2110: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2109, &mut x2110, x11, 0xd7f9cc26); + let mut x2111: u32 = 0; + let mut x2112: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2111, &mut x2112, x11, 0x3b790de3); + let mut x2113: u32 = 0; + let mut x2114: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2113, &mut x2114, x11, 0xa6f230c7); + let mut x2115: u32 = 0; + let mut x2116: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2115, &mut x2116, x11, 0x2f0207e8); + let mut x2117: u32 = 0; + let mut x2118: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2117, &mut x2118, x11, 0x3ec64bd0); + let mut x2119: u32 = 0; + let mut x2120: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2119, &mut x2120, x11, 0x33b7627f); + let mut x2121: u32 = 0; + let mut x2122: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2121, &mut x2122, x11, 0x886b758); + let mut x2123: u32 = 0; + let mut x2124: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2123, &mut x2124, x11, 0x95283ddd); + let mut x2125: u32 = 0; + let mut x2126: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2125, &mut x2126, x11, 0xd2a3681e); + let mut x2127: u32 = 0; + let mut x2128: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2127, &mut x2128, x11, 0xcda81671); + let mut x2129: u32 = 0; + let mut x2130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2129, &mut x2130, 0x0, x2128, x2125); + let mut x2131: u32 = 0; + let mut x2132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2131, &mut x2132, x2130, x2126, x2123); + let mut x2133: u32 = 0; + let mut x2134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2133, &mut x2134, x2132, x2124, x2121); + let mut x2135: u32 = 0; + let mut x2136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2135, &mut x2136, x2134, x2122, x2119); + let mut x2137: u32 = 0; + let mut x2138: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2137, &mut x2138, x2136, x2120, x2117); + let mut x2139: u32 = 0; + let mut x2140: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2139, &mut x2140, x2138, x2118, x2115); + let mut x2141: u32 = 0; + let mut x2142: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2141, &mut x2142, x2140, x2116, x2113); + let mut x2143: u32 = 0; + let mut x2144: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2143, &mut x2144, x2142, x2114, x2111); + let mut x2145: u32 = 0; + let mut x2146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2145, &mut x2146, x2144, x2112, x2109); + let mut x2147: u32 = 0; + let mut x2148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2147, &mut x2148, x2146, x2110, x2107); + let mut x2149: u32 = 0; + let mut x2150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2149, &mut x2150, x2148, x2108, x2105); + let mut x2151: u32 = 0; + let mut x2152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2151, &mut x2152, x2150, x2106, x2103); + let mut x2153: u32 = 0; + let mut x2154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2153, &mut x2154, x2152, x2104, x2101); + let mut x2155: u32 = 0; + let mut x2156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2155, &mut x2156, x2154, x2102, x2099); + let mut x2157: u32 = 0; + let mut x2158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2157, &mut x2158, x2156, x2100, x2097); + let mut x2159: u32 = 0; + let mut x2160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2159, &mut x2160, 0x0, x2065, x2127); + let mut x2161: u32 = 0; + let mut x2162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2161, &mut x2162, x2160, x2067, x2129); + let mut x2163: u32 = 0; + let mut x2164: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2163, &mut x2164, x2162, x2069, x2131); + let mut x2165: u32 = 0; + let mut x2166: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2165, &mut x2166, x2164, x2071, x2133); + let mut x2167: u32 = 0; + let mut x2168: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2167, &mut x2168, x2166, x2073, x2135); + let mut x2169: u32 = 0; + let mut x2170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2169, &mut x2170, x2168, x2075, x2137); + let mut x2171: u32 = 0; + let mut x2172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2171, &mut x2172, x2170, x2077, x2139); + let mut x2173: u32 = 0; + let mut x2174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2173, &mut x2174, x2172, x2079, x2141); + let mut x2175: u32 = 0; + let mut x2176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2175, &mut x2176, x2174, x2081, x2143); + let mut x2177: u32 = 0; + let mut x2178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2177, &mut x2178, x2176, x2083, x2145); + let mut x2179: u32 = 0; + let mut x2180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2179, &mut x2180, x2178, x2085, x2147); + let mut x2181: u32 = 0; + let mut x2182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2181, &mut x2182, x2180, x2087, x2149); + let mut x2183: u32 = 0; + let mut x2184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2183, &mut x2184, x2182, x2089, x2151); + let mut x2185: u32 = 0; + let mut x2186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2185, &mut x2186, x2184, x2091, x2153); + let mut x2187: u32 = 0; + let mut x2188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2187, &mut x2188, x2186, x2093, x2155); + let mut x2189: u32 = 0; + let mut x2190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2189, &mut x2190, x2188, x2095, x2157); + let mut x2191: u32 = 0; + let mut x2192: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2191, &mut x2192, x2159, 0xf1b7027); + let mut x2193: u32 = 0; + let mut x2194: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2193, &mut x2194, x2191, 0xaadd9db8); + let mut x2195: u32 = 0; + let mut x2196: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2195, &mut x2196, x2191, 0xdbe9c48b); + let mut x2197: u32 = 0; + let mut x2198: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2197, &mut x2198, x2191, 0x3fd4e6ae); + let mut x2199: u32 = 0; + let mut x2200: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2199, &mut x2200, x2191, 0x33c9fc07); + let mut x2201: u32 = 0; + let mut x2202: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2201, &mut x2202, x2191, 0xcb308db3); + let mut x2203: u32 = 0; + let mut x2204: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2203, &mut x2204, x2191, 0xb3c9d20e); + let mut x2205: u32 = 0; + let mut x2206: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2205, &mut x2206, x2191, 0xd6639cca); + let mut x2207: u32 = 0; + let mut x2208: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2207, &mut x2208, x2191, 0x70330870); + let mut x2209: u32 = 0; + let mut x2210: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2209, &mut x2210, x2191, 0x553e5c41); + let mut x2211: u32 = 0; + let mut x2212: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2211, &mut x2212, x2191, 0x4ca92619); + let mut x2213: u32 = 0; + let mut x2214: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2213, &mut x2214, x2191, 0x41866119); + let mut x2215: u32 = 0; + let mut x2216: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2215, &mut x2216, x2191, 0x7fac1047); + let mut x2217: u32 = 0; + let mut x2218: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2217, &mut x2218, x2191, 0x1db1d381); + let mut x2219: u32 = 0; + let mut x2220: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2219, &mut x2220, x2191, 0x85ddadd); + let mut x2221: u32 = 0; + let mut x2222: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2221, &mut x2222, x2191, 0xb5879682); + let mut x2223: u32 = 0; + let mut x2224: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2223, &mut x2224, x2191, 0x9ca90069); + let mut x2225: u32 = 0; + let mut x2226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2225, &mut x2226, 0x0, x2224, x2221); + let mut x2227: u32 = 0; + let mut x2228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2227, &mut x2228, x2226, x2222, x2219); + let mut x2229: u32 = 0; + let mut x2230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2229, &mut x2230, x2228, x2220, x2217); + let mut x2231: u32 = 0; + let mut x2232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2231, &mut x2232, x2230, x2218, x2215); + let mut x2233: u32 = 0; + let mut x2234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2233, &mut x2234, x2232, x2216, x2213); + let mut x2235: u32 = 0; + let mut x2236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2235, &mut x2236, x2234, x2214, x2211); + let mut x2237: u32 = 0; + let mut x2238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2237, &mut x2238, x2236, x2212, x2209); + let mut x2239: u32 = 0; + let mut x2240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2239, &mut x2240, x2238, x2210, x2207); + let mut x2241: u32 = 0; + let mut x2242: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2241, &mut x2242, x2240, x2208, x2205); + let mut x2243: u32 = 0; + let mut x2244: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2243, &mut x2244, x2242, x2206, x2203); + let mut x2245: u32 = 0; + let mut x2246: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2245, &mut x2246, x2244, x2204, x2201); + let mut x2247: u32 = 0; + let mut x2248: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2247, &mut x2248, x2246, x2202, x2199); + let mut x2249: u32 = 0; + let mut x2250: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2249, &mut x2250, x2248, x2200, x2197); + let mut x2251: u32 = 0; + let mut x2252: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2251, &mut x2252, x2250, x2198, x2195); + let mut x2253: u32 = 0; + let mut x2254: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2253, &mut x2254, x2252, x2196, x2193); + let mut x2255: u32 = 0; + let mut x2256: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2255, &mut x2256, 0x0, x2159, x2223); + let mut x2257: u32 = 0; + let mut x2258: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2257, &mut x2258, x2256, x2161, x2225); + let mut x2259: u32 = 0; + let mut x2260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2259, &mut x2260, x2258, x2163, x2227); + let mut x2261: u32 = 0; + let mut x2262: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2261, &mut x2262, x2260, x2165, x2229); + let mut x2263: u32 = 0; + let mut x2264: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2263, &mut x2264, x2262, x2167, x2231); + let mut x2265: u32 = 0; + let mut x2266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2265, &mut x2266, x2264, x2169, x2233); + let mut x2267: u32 = 0; + let mut x2268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2267, &mut x2268, x2266, x2171, x2235); + let mut x2269: u32 = 0; + let mut x2270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2269, &mut x2270, x2268, x2173, x2237); + let mut x2271: u32 = 0; + let mut x2272: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2271, &mut x2272, x2270, x2175, x2239); + let mut x2273: u32 = 0; + let mut x2274: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2273, &mut x2274, x2272, x2177, x2241); + let mut x2275: u32 = 0; + let mut x2276: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2275, &mut x2276, x2274, x2179, x2243); + let mut x2277: u32 = 0; + let mut x2278: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2277, &mut x2278, x2276, x2181, x2245); + let mut x2279: u32 = 0; + let mut x2280: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2279, &mut x2280, x2278, x2183, x2247); + let mut x2281: u32 = 0; + let mut x2282: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2281, &mut x2282, x2280, x2185, x2249); + let mut x2283: u32 = 0; + let mut x2284: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2283, &mut x2284, x2282, x2187, x2251); + let mut x2285: u32 = 0; + let mut x2286: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2285, &mut x2286, x2284, x2189, x2253); + let mut x2287: u32 = 0; + let mut x2288: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x2287, + &mut x2288, + x2286, + (((x2190 as u32) + (x2096 as u32)) + ((x2158 as u32) + x2098)), + ((x2254 as u32) + x2194), + ); + let mut x2289: u32 = 0; + let mut x2290: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2289, &mut x2290, x12, 0xa794586a); + let mut x2291: u32 = 0; + let mut x2292: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2291, &mut x2292, x12, 0x718407b0); + let mut x2293: u32 = 0; + let mut x2294: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2293, &mut x2294, x12, 0x95df1b4c); + let mut x2295: u32 = 0; + let mut x2296: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2295, &mut x2296, x12, 0x194b2e56); + let mut x2297: u32 = 0; + let mut x2298: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2297, &mut x2298, x12, 0x723c37a2); + let mut x2299: u32 = 0; + let mut x2300: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2299, &mut x2300, x12, 0x2f16bbdf); + let mut x2301: u32 = 0; + let mut x2302: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2301, &mut x2302, x12, 0xd7f9cc26); + let mut x2303: u32 = 0; + let mut x2304: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2303, &mut x2304, x12, 0x3b790de3); + let mut x2305: u32 = 0; + let mut x2306: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2305, &mut x2306, x12, 0xa6f230c7); + let mut x2307: u32 = 0; + let mut x2308: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2307, &mut x2308, x12, 0x2f0207e8); + let mut x2309: u32 = 0; + let mut x2310: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2309, &mut x2310, x12, 0x3ec64bd0); + let mut x2311: u32 = 0; + let mut x2312: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2311, &mut x2312, x12, 0x33b7627f); + let mut x2313: u32 = 0; + let mut x2314: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2313, &mut x2314, x12, 0x886b758); + let mut x2315: u32 = 0; + let mut x2316: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2315, &mut x2316, x12, 0x95283ddd); + let mut x2317: u32 = 0; + let mut x2318: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2317, &mut x2318, x12, 0xd2a3681e); + let mut x2319: u32 = 0; + let mut x2320: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2319, &mut x2320, x12, 0xcda81671); + let mut x2321: u32 = 0; + let mut x2322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2321, &mut x2322, 0x0, x2320, x2317); + let mut x2323: u32 = 0; + let mut x2324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2323, &mut x2324, x2322, x2318, x2315); + let mut x2325: u32 = 0; + let mut x2326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2325, &mut x2326, x2324, x2316, x2313); + let mut x2327: u32 = 0; + let mut x2328: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2327, &mut x2328, x2326, x2314, x2311); + let mut x2329: u32 = 0; + let mut x2330: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2329, &mut x2330, x2328, x2312, x2309); + let mut x2331: u32 = 0; + let mut x2332: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2331, &mut x2332, x2330, x2310, x2307); + let mut x2333: u32 = 0; + let mut x2334: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2333, &mut x2334, x2332, x2308, x2305); + let mut x2335: u32 = 0; + let mut x2336: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2335, &mut x2336, x2334, x2306, x2303); + let mut x2337: u32 = 0; + let mut x2338: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2337, &mut x2338, x2336, x2304, x2301); + let mut x2339: u32 = 0; + let mut x2340: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2339, &mut x2340, x2338, x2302, x2299); + let mut x2341: u32 = 0; + let mut x2342: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2341, &mut x2342, x2340, x2300, x2297); + let mut x2343: u32 = 0; + let mut x2344: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2343, &mut x2344, x2342, x2298, x2295); + let mut x2345: u32 = 0; + let mut x2346: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2345, &mut x2346, x2344, x2296, x2293); + let mut x2347: u32 = 0; + let mut x2348: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2347, &mut x2348, x2346, x2294, x2291); + let mut x2349: u32 = 0; + let mut x2350: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2349, &mut x2350, x2348, x2292, x2289); + let mut x2351: u32 = 0; + let mut x2352: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2351, &mut x2352, 0x0, x2257, x2319); + let mut x2353: u32 = 0; + let mut x2354: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2353, &mut x2354, x2352, x2259, x2321); + let mut x2355: u32 = 0; + let mut x2356: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2355, &mut x2356, x2354, x2261, x2323); + let mut x2357: u32 = 0; + let mut x2358: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2357, &mut x2358, x2356, x2263, x2325); + let mut x2359: u32 = 0; + let mut x2360: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2359, &mut x2360, x2358, x2265, x2327); + let mut x2361: u32 = 0; + let mut x2362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2361, &mut x2362, x2360, x2267, x2329); + let mut x2363: u32 = 0; + let mut x2364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2363, &mut x2364, x2362, x2269, x2331); + let mut x2365: u32 = 0; + let mut x2366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2365, &mut x2366, x2364, x2271, x2333); + let mut x2367: u32 = 0; + let mut x2368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2367, &mut x2368, x2366, x2273, x2335); + let mut x2369: u32 = 0; + let mut x2370: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2369, &mut x2370, x2368, x2275, x2337); + let mut x2371: u32 = 0; + let mut x2372: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2371, &mut x2372, x2370, x2277, x2339); + let mut x2373: u32 = 0; + let mut x2374: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2373, &mut x2374, x2372, x2279, x2341); + let mut x2375: u32 = 0; + let mut x2376: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2375, &mut x2376, x2374, x2281, x2343); + let mut x2377: u32 = 0; + let mut x2378: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2377, &mut x2378, x2376, x2283, x2345); + let mut x2379: u32 = 0; + let mut x2380: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2379, &mut x2380, x2378, x2285, x2347); + let mut x2381: u32 = 0; + let mut x2382: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2381, &mut x2382, x2380, x2287, x2349); + let mut x2383: u32 = 0; + let mut x2384: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2383, &mut x2384, x2351, 0xf1b7027); + let mut x2385: u32 = 0; + let mut x2386: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2385, &mut x2386, x2383, 0xaadd9db8); + let mut x2387: u32 = 0; + let mut x2388: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2387, &mut x2388, x2383, 0xdbe9c48b); + let mut x2389: u32 = 0; + let mut x2390: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2389, &mut x2390, x2383, 0x3fd4e6ae); + let mut x2391: u32 = 0; + let mut x2392: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2391, &mut x2392, x2383, 0x33c9fc07); + let mut x2393: u32 = 0; + let mut x2394: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2393, &mut x2394, x2383, 0xcb308db3); + let mut x2395: u32 = 0; + let mut x2396: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2395, &mut x2396, x2383, 0xb3c9d20e); + let mut x2397: u32 = 0; + let mut x2398: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2397, &mut x2398, x2383, 0xd6639cca); + let mut x2399: u32 = 0; + let mut x2400: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2399, &mut x2400, x2383, 0x70330870); + let mut x2401: u32 = 0; + let mut x2402: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2401, &mut x2402, x2383, 0x553e5c41); + let mut x2403: u32 = 0; + let mut x2404: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2403, &mut x2404, x2383, 0x4ca92619); + let mut x2405: u32 = 0; + let mut x2406: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2405, &mut x2406, x2383, 0x41866119); + let mut x2407: u32 = 0; + let mut x2408: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2407, &mut x2408, x2383, 0x7fac1047); + let mut x2409: u32 = 0; + let mut x2410: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2409, &mut x2410, x2383, 0x1db1d381); + let mut x2411: u32 = 0; + let mut x2412: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2411, &mut x2412, x2383, 0x85ddadd); + let mut x2413: u32 = 0; + let mut x2414: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2413, &mut x2414, x2383, 0xb5879682); + let mut x2415: u32 = 0; + let mut x2416: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2415, &mut x2416, x2383, 0x9ca90069); + let mut x2417: u32 = 0; + let mut x2418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2417, &mut x2418, 0x0, x2416, x2413); + let mut x2419: u32 = 0; + let mut x2420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2419, &mut x2420, x2418, x2414, x2411); + let mut x2421: u32 = 0; + let mut x2422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2421, &mut x2422, x2420, x2412, x2409); + let mut x2423: u32 = 0; + let mut x2424: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2423, &mut x2424, x2422, x2410, x2407); + let mut x2425: u32 = 0; + let mut x2426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2425, &mut x2426, x2424, x2408, x2405); + let mut x2427: u32 = 0; + let mut x2428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2427, &mut x2428, x2426, x2406, x2403); + let mut x2429: u32 = 0; + let mut x2430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2429, &mut x2430, x2428, x2404, x2401); + let mut x2431: u32 = 0; + let mut x2432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2431, &mut x2432, x2430, x2402, x2399); + let mut x2433: u32 = 0; + let mut x2434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2433, &mut x2434, x2432, x2400, x2397); + let mut x2435: u32 = 0; + let mut x2436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2435, &mut x2436, x2434, x2398, x2395); + let mut x2437: u32 = 0; + let mut x2438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2437, &mut x2438, x2436, x2396, x2393); + let mut x2439: u32 = 0; + let mut x2440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2439, &mut x2440, x2438, x2394, x2391); + let mut x2441: u32 = 0; + let mut x2442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2441, &mut x2442, x2440, x2392, x2389); + let mut x2443: u32 = 0; + let mut x2444: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2443, &mut x2444, x2442, x2390, x2387); + let mut x2445: u32 = 0; + let mut x2446: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2445, &mut x2446, x2444, x2388, x2385); + let mut x2447: u32 = 0; + let mut x2448: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2447, &mut x2448, 0x0, x2351, x2415); + let mut x2449: u32 = 0; + let mut x2450: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2449, &mut x2450, x2448, x2353, x2417); + let mut x2451: u32 = 0; + let mut x2452: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2451, &mut x2452, x2450, x2355, x2419); + let mut x2453: u32 = 0; + let mut x2454: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2453, &mut x2454, x2452, x2357, x2421); + let mut x2455: u32 = 0; + let mut x2456: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2455, &mut x2456, x2454, x2359, x2423); + let mut x2457: u32 = 0; + let mut x2458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2457, &mut x2458, x2456, x2361, x2425); + let mut x2459: u32 = 0; + let mut x2460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2459, &mut x2460, x2458, x2363, x2427); + let mut x2461: u32 = 0; + let mut x2462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2461, &mut x2462, x2460, x2365, x2429); + let mut x2463: u32 = 0; + let mut x2464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2463, &mut x2464, x2462, x2367, x2431); + let mut x2465: u32 = 0; + let mut x2466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2465, &mut x2466, x2464, x2369, x2433); + let mut x2467: u32 = 0; + let mut x2468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2467, &mut x2468, x2466, x2371, x2435); + let mut x2469: u32 = 0; + let mut x2470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2469, &mut x2470, x2468, x2373, x2437); + let mut x2471: u32 = 0; + let mut x2472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2471, &mut x2472, x2470, x2375, x2439); + let mut x2473: u32 = 0; + let mut x2474: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2473, &mut x2474, x2472, x2377, x2441); + let mut x2475: u32 = 0; + let mut x2476: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2475, &mut x2476, x2474, x2379, x2443); + let mut x2477: u32 = 0; + let mut x2478: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2477, &mut x2478, x2476, x2381, x2445); + let mut x2479: u32 = 0; + let mut x2480: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x2479, + &mut x2480, + x2478, + (((x2382 as u32) + (x2288 as u32)) + ((x2350 as u32) + x2290)), + ((x2446 as u32) + x2386), + ); + let mut x2481: u32 = 0; + let mut x2482: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2481, &mut x2482, x13, 0xa794586a); + let mut x2483: u32 = 0; + let mut x2484: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2483, &mut x2484, x13, 0x718407b0); + let mut x2485: u32 = 0; + let mut x2486: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2485, &mut x2486, x13, 0x95df1b4c); + let mut x2487: u32 = 0; + let mut x2488: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2487, &mut x2488, x13, 0x194b2e56); + let mut x2489: u32 = 0; + let mut x2490: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2489, &mut x2490, x13, 0x723c37a2); + let mut x2491: u32 = 0; + let mut x2492: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2491, &mut x2492, x13, 0x2f16bbdf); + let mut x2493: u32 = 0; + let mut x2494: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2493, &mut x2494, x13, 0xd7f9cc26); + let mut x2495: u32 = 0; + let mut x2496: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2495, &mut x2496, x13, 0x3b790de3); + let mut x2497: u32 = 0; + let mut x2498: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2497, &mut x2498, x13, 0xa6f230c7); + let mut x2499: u32 = 0; + let mut x2500: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2499, &mut x2500, x13, 0x2f0207e8); + let mut x2501: u32 = 0; + let mut x2502: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2501, &mut x2502, x13, 0x3ec64bd0); + let mut x2503: u32 = 0; + let mut x2504: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2503, &mut x2504, x13, 0x33b7627f); + let mut x2505: u32 = 0; + let mut x2506: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2505, &mut x2506, x13, 0x886b758); + let mut x2507: u32 = 0; + let mut x2508: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2507, &mut x2508, x13, 0x95283ddd); + let mut x2509: u32 = 0; + let mut x2510: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2509, &mut x2510, x13, 0xd2a3681e); + let mut x2511: u32 = 0; + let mut x2512: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2511, &mut x2512, x13, 0xcda81671); + let mut x2513: u32 = 0; + let mut x2514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2513, &mut x2514, 0x0, x2512, x2509); + let mut x2515: u32 = 0; + let mut x2516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2515, &mut x2516, x2514, x2510, x2507); + let mut x2517: u32 = 0; + let mut x2518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2517, &mut x2518, x2516, x2508, x2505); + let mut x2519: u32 = 0; + let mut x2520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2519, &mut x2520, x2518, x2506, x2503); + let mut x2521: u32 = 0; + let mut x2522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2521, &mut x2522, x2520, x2504, x2501); + let mut x2523: u32 = 0; + let mut x2524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2523, &mut x2524, x2522, x2502, x2499); + let mut x2525: u32 = 0; + let mut x2526: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2525, &mut x2526, x2524, x2500, x2497); + let mut x2527: u32 = 0; + let mut x2528: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2527, &mut x2528, x2526, x2498, x2495); + let mut x2529: u32 = 0; + let mut x2530: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2529, &mut x2530, x2528, x2496, x2493); + let mut x2531: u32 = 0; + let mut x2532: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2531, &mut x2532, x2530, x2494, x2491); + let mut x2533: u32 = 0; + let mut x2534: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2533, &mut x2534, x2532, x2492, x2489); + let mut x2535: u32 = 0; + let mut x2536: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2535, &mut x2536, x2534, x2490, x2487); + let mut x2537: u32 = 0; + let mut x2538: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2537, &mut x2538, x2536, x2488, x2485); + let mut x2539: u32 = 0; + let mut x2540: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2539, &mut x2540, x2538, x2486, x2483); + let mut x2541: u32 = 0; + let mut x2542: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2541, &mut x2542, x2540, x2484, x2481); + let mut x2543: u32 = 0; + let mut x2544: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2543, &mut x2544, 0x0, x2449, x2511); + let mut x2545: u32 = 0; + let mut x2546: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2545, &mut x2546, x2544, x2451, x2513); + let mut x2547: u32 = 0; + let mut x2548: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2547, &mut x2548, x2546, x2453, x2515); + let mut x2549: u32 = 0; + let mut x2550: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2549, &mut x2550, x2548, x2455, x2517); + let mut x2551: u32 = 0; + let mut x2552: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2551, &mut x2552, x2550, x2457, x2519); + let mut x2553: u32 = 0; + let mut x2554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2553, &mut x2554, x2552, x2459, x2521); + let mut x2555: u32 = 0; + let mut x2556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2555, &mut x2556, x2554, x2461, x2523); + let mut x2557: u32 = 0; + let mut x2558: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2557, &mut x2558, x2556, x2463, x2525); + let mut x2559: u32 = 0; + let mut x2560: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2559, &mut x2560, x2558, x2465, x2527); + let mut x2561: u32 = 0; + let mut x2562: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2561, &mut x2562, x2560, x2467, x2529); + let mut x2563: u32 = 0; + let mut x2564: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2563, &mut x2564, x2562, x2469, x2531); + let mut x2565: u32 = 0; + let mut x2566: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2565, &mut x2566, x2564, x2471, x2533); + let mut x2567: u32 = 0; + let mut x2568: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2567, &mut x2568, x2566, x2473, x2535); + let mut x2569: u32 = 0; + let mut x2570: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2569, &mut x2570, x2568, x2475, x2537); + let mut x2571: u32 = 0; + let mut x2572: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2571, &mut x2572, x2570, x2477, x2539); + let mut x2573: u32 = 0; + let mut x2574: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2573, &mut x2574, x2572, x2479, x2541); + let mut x2575: u32 = 0; + let mut x2576: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2575, &mut x2576, x2543, 0xf1b7027); + let mut x2577: u32 = 0; + let mut x2578: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2577, &mut x2578, x2575, 0xaadd9db8); + let mut x2579: u32 = 0; + let mut x2580: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2579, &mut x2580, x2575, 0xdbe9c48b); + let mut x2581: u32 = 0; + let mut x2582: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2581, &mut x2582, x2575, 0x3fd4e6ae); + let mut x2583: u32 = 0; + let mut x2584: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2583, &mut x2584, x2575, 0x33c9fc07); + let mut x2585: u32 = 0; + let mut x2586: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2585, &mut x2586, x2575, 0xcb308db3); + let mut x2587: u32 = 0; + let mut x2588: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2587, &mut x2588, x2575, 0xb3c9d20e); + let mut x2589: u32 = 0; + let mut x2590: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2589, &mut x2590, x2575, 0xd6639cca); + let mut x2591: u32 = 0; + let mut x2592: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2591, &mut x2592, x2575, 0x70330870); + let mut x2593: u32 = 0; + let mut x2594: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2593, &mut x2594, x2575, 0x553e5c41); + let mut x2595: u32 = 0; + let mut x2596: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2595, &mut x2596, x2575, 0x4ca92619); + let mut x2597: u32 = 0; + let mut x2598: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2597, &mut x2598, x2575, 0x41866119); + let mut x2599: u32 = 0; + let mut x2600: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2599, &mut x2600, x2575, 0x7fac1047); + let mut x2601: u32 = 0; + let mut x2602: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2601, &mut x2602, x2575, 0x1db1d381); + let mut x2603: u32 = 0; + let mut x2604: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2603, &mut x2604, x2575, 0x85ddadd); + let mut x2605: u32 = 0; + let mut x2606: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2605, &mut x2606, x2575, 0xb5879682); + let mut x2607: u32 = 0; + let mut x2608: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2607, &mut x2608, x2575, 0x9ca90069); + let mut x2609: u32 = 0; + let mut x2610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2609, &mut x2610, 0x0, x2608, x2605); + let mut x2611: u32 = 0; + let mut x2612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2611, &mut x2612, x2610, x2606, x2603); + let mut x2613: u32 = 0; + let mut x2614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2613, &mut x2614, x2612, x2604, x2601); + let mut x2615: u32 = 0; + let mut x2616: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2615, &mut x2616, x2614, x2602, x2599); + let mut x2617: u32 = 0; + let mut x2618: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2617, &mut x2618, x2616, x2600, x2597); + let mut x2619: u32 = 0; + let mut x2620: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2619, &mut x2620, x2618, x2598, x2595); + let mut x2621: u32 = 0; + let mut x2622: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2621, &mut x2622, x2620, x2596, x2593); + let mut x2623: u32 = 0; + let mut x2624: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2623, &mut x2624, x2622, x2594, x2591); + let mut x2625: u32 = 0; + let mut x2626: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2625, &mut x2626, x2624, x2592, x2589); + let mut x2627: u32 = 0; + let mut x2628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2627, &mut x2628, x2626, x2590, x2587); + let mut x2629: u32 = 0; + let mut x2630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2629, &mut x2630, x2628, x2588, x2585); + let mut x2631: u32 = 0; + let mut x2632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2631, &mut x2632, x2630, x2586, x2583); + let mut x2633: u32 = 0; + let mut x2634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2633, &mut x2634, x2632, x2584, x2581); + let mut x2635: u32 = 0; + let mut x2636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2635, &mut x2636, x2634, x2582, x2579); + let mut x2637: u32 = 0; + let mut x2638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2637, &mut x2638, x2636, x2580, x2577); + let mut x2639: u32 = 0; + let mut x2640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2639, &mut x2640, 0x0, x2543, x2607); + let mut x2641: u32 = 0; + let mut x2642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2641, &mut x2642, x2640, x2545, x2609); + let mut x2643: u32 = 0; + let mut x2644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2643, &mut x2644, x2642, x2547, x2611); + let mut x2645: u32 = 0; + let mut x2646: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2645, &mut x2646, x2644, x2549, x2613); + let mut x2647: u32 = 0; + let mut x2648: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2647, &mut x2648, x2646, x2551, x2615); + let mut x2649: u32 = 0; + let mut x2650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2649, &mut x2650, x2648, x2553, x2617); + let mut x2651: u32 = 0; + let mut x2652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2651, &mut x2652, x2650, x2555, x2619); + let mut x2653: u32 = 0; + let mut x2654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2653, &mut x2654, x2652, x2557, x2621); + let mut x2655: u32 = 0; + let mut x2656: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2655, &mut x2656, x2654, x2559, x2623); + let mut x2657: u32 = 0; + let mut x2658: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2657, &mut x2658, x2656, x2561, x2625); + let mut x2659: u32 = 0; + let mut x2660: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2659, &mut x2660, x2658, x2563, x2627); + let mut x2661: u32 = 0; + let mut x2662: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2661, &mut x2662, x2660, x2565, x2629); + let mut x2663: u32 = 0; + let mut x2664: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2663, &mut x2664, x2662, x2567, x2631); + let mut x2665: u32 = 0; + let mut x2666: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2665, &mut x2666, x2664, x2569, x2633); + let mut x2667: u32 = 0; + let mut x2668: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2667, &mut x2668, x2666, x2571, x2635); + let mut x2669: u32 = 0; + let mut x2670: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2669, &mut x2670, x2668, x2573, x2637); + let mut x2671: u32 = 0; + let mut x2672: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x2671, + &mut x2672, + x2670, + (((x2574 as u32) + (x2480 as u32)) + ((x2542 as u32) + x2482)), + ((x2638 as u32) + x2578), + ); + let mut x2673: u32 = 0; + let mut x2674: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2673, &mut x2674, x14, 0xa794586a); + let mut x2675: u32 = 0; + let mut x2676: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2675, &mut x2676, x14, 0x718407b0); + let mut x2677: u32 = 0; + let mut x2678: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2677, &mut x2678, x14, 0x95df1b4c); + let mut x2679: u32 = 0; + let mut x2680: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2679, &mut x2680, x14, 0x194b2e56); + let mut x2681: u32 = 0; + let mut x2682: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2681, &mut x2682, x14, 0x723c37a2); + let mut x2683: u32 = 0; + let mut x2684: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2683, &mut x2684, x14, 0x2f16bbdf); + let mut x2685: u32 = 0; + let mut x2686: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2685, &mut x2686, x14, 0xd7f9cc26); + let mut x2687: u32 = 0; + let mut x2688: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2687, &mut x2688, x14, 0x3b790de3); + let mut x2689: u32 = 0; + let mut x2690: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2689, &mut x2690, x14, 0xa6f230c7); + let mut x2691: u32 = 0; + let mut x2692: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2691, &mut x2692, x14, 0x2f0207e8); + let mut x2693: u32 = 0; + let mut x2694: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2693, &mut x2694, x14, 0x3ec64bd0); + let mut x2695: u32 = 0; + let mut x2696: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2695, &mut x2696, x14, 0x33b7627f); + let mut x2697: u32 = 0; + let mut x2698: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2697, &mut x2698, x14, 0x886b758); + let mut x2699: u32 = 0; + let mut x2700: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2699, &mut x2700, x14, 0x95283ddd); + let mut x2701: u32 = 0; + let mut x2702: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2701, &mut x2702, x14, 0xd2a3681e); + let mut x2703: u32 = 0; + let mut x2704: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2703, &mut x2704, x14, 0xcda81671); + let mut x2705: u32 = 0; + let mut x2706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2705, &mut x2706, 0x0, x2704, x2701); + let mut x2707: u32 = 0; + let mut x2708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2707, &mut x2708, x2706, x2702, x2699); + let mut x2709: u32 = 0; + let mut x2710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2709, &mut x2710, x2708, x2700, x2697); + let mut x2711: u32 = 0; + let mut x2712: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2711, &mut x2712, x2710, x2698, x2695); + let mut x2713: u32 = 0; + let mut x2714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2713, &mut x2714, x2712, x2696, x2693); + let mut x2715: u32 = 0; + let mut x2716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2715, &mut x2716, x2714, x2694, x2691); + let mut x2717: u32 = 0; + let mut x2718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2717, &mut x2718, x2716, x2692, x2689); + let mut x2719: u32 = 0; + let mut x2720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2719, &mut x2720, x2718, x2690, x2687); + let mut x2721: u32 = 0; + let mut x2722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2721, &mut x2722, x2720, x2688, x2685); + let mut x2723: u32 = 0; + let mut x2724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2723, &mut x2724, x2722, x2686, x2683); + let mut x2725: u32 = 0; + let mut x2726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2725, &mut x2726, x2724, x2684, x2681); + let mut x2727: u32 = 0; + let mut x2728: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2727, &mut x2728, x2726, x2682, x2679); + let mut x2729: u32 = 0; + let mut x2730: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2729, &mut x2730, x2728, x2680, x2677); + let mut x2731: u32 = 0; + let mut x2732: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2731, &mut x2732, x2730, x2678, x2675); + let mut x2733: u32 = 0; + let mut x2734: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2733, &mut x2734, x2732, x2676, x2673); + let mut x2735: u32 = 0; + let mut x2736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2735, &mut x2736, 0x0, x2641, x2703); + let mut x2737: u32 = 0; + let mut x2738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2737, &mut x2738, x2736, x2643, x2705); + let mut x2739: u32 = 0; + let mut x2740: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2739, &mut x2740, x2738, x2645, x2707); + let mut x2741: u32 = 0; + let mut x2742: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2741, &mut x2742, x2740, x2647, x2709); + let mut x2743: u32 = 0; + let mut x2744: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2743, &mut x2744, x2742, x2649, x2711); + let mut x2745: u32 = 0; + let mut x2746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2745, &mut x2746, x2744, x2651, x2713); + let mut x2747: u32 = 0; + let mut x2748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2747, &mut x2748, x2746, x2653, x2715); + let mut x2749: u32 = 0; + let mut x2750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2749, &mut x2750, x2748, x2655, x2717); + let mut x2751: u32 = 0; + let mut x2752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2751, &mut x2752, x2750, x2657, x2719); + let mut x2753: u32 = 0; + let mut x2754: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2753, &mut x2754, x2752, x2659, x2721); + let mut x2755: u32 = 0; + let mut x2756: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2755, &mut x2756, x2754, x2661, x2723); + let mut x2757: u32 = 0; + let mut x2758: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2757, &mut x2758, x2756, x2663, x2725); + let mut x2759: u32 = 0; + let mut x2760: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2759, &mut x2760, x2758, x2665, x2727); + let mut x2761: u32 = 0; + let mut x2762: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2761, &mut x2762, x2760, x2667, x2729); + let mut x2763: u32 = 0; + let mut x2764: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2763, &mut x2764, x2762, x2669, x2731); + let mut x2765: u32 = 0; + let mut x2766: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2765, &mut x2766, x2764, x2671, x2733); + let mut x2767: u32 = 0; + let mut x2768: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2767, &mut x2768, x2735, 0xf1b7027); + let mut x2769: u32 = 0; + let mut x2770: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2769, &mut x2770, x2767, 0xaadd9db8); + let mut x2771: u32 = 0; + let mut x2772: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2771, &mut x2772, x2767, 0xdbe9c48b); + let mut x2773: u32 = 0; + let mut x2774: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2773, &mut x2774, x2767, 0x3fd4e6ae); + let mut x2775: u32 = 0; + let mut x2776: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2775, &mut x2776, x2767, 0x33c9fc07); + let mut x2777: u32 = 0; + let mut x2778: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2777, &mut x2778, x2767, 0xcb308db3); + let mut x2779: u32 = 0; + let mut x2780: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2779, &mut x2780, x2767, 0xb3c9d20e); + let mut x2781: u32 = 0; + let mut x2782: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2781, &mut x2782, x2767, 0xd6639cca); + let mut x2783: u32 = 0; + let mut x2784: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2783, &mut x2784, x2767, 0x70330870); + let mut x2785: u32 = 0; + let mut x2786: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2785, &mut x2786, x2767, 0x553e5c41); + let mut x2787: u32 = 0; + let mut x2788: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2787, &mut x2788, x2767, 0x4ca92619); + let mut x2789: u32 = 0; + let mut x2790: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2789, &mut x2790, x2767, 0x41866119); + let mut x2791: u32 = 0; + let mut x2792: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2791, &mut x2792, x2767, 0x7fac1047); + let mut x2793: u32 = 0; + let mut x2794: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2793, &mut x2794, x2767, 0x1db1d381); + let mut x2795: u32 = 0; + let mut x2796: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2795, &mut x2796, x2767, 0x85ddadd); + let mut x2797: u32 = 0; + let mut x2798: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2797, &mut x2798, x2767, 0xb5879682); + let mut x2799: u32 = 0; + let mut x2800: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2799, &mut x2800, x2767, 0x9ca90069); + let mut x2801: u32 = 0; + let mut x2802: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2801, &mut x2802, 0x0, x2800, x2797); + let mut x2803: u32 = 0; + let mut x2804: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2803, &mut x2804, x2802, x2798, x2795); + let mut x2805: u32 = 0; + let mut x2806: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2805, &mut x2806, x2804, x2796, x2793); + let mut x2807: u32 = 0; + let mut x2808: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2807, &mut x2808, x2806, x2794, x2791); + let mut x2809: u32 = 0; + let mut x2810: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2809, &mut x2810, x2808, x2792, x2789); + let mut x2811: u32 = 0; + let mut x2812: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2811, &mut x2812, x2810, x2790, x2787); + let mut x2813: u32 = 0; + let mut x2814: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2813, &mut x2814, x2812, x2788, x2785); + let mut x2815: u32 = 0; + let mut x2816: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2815, &mut x2816, x2814, x2786, x2783); + let mut x2817: u32 = 0; + let mut x2818: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2817, &mut x2818, x2816, x2784, x2781); + let mut x2819: u32 = 0; + let mut x2820: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2819, &mut x2820, x2818, x2782, x2779); + let mut x2821: u32 = 0; + let mut x2822: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2821, &mut x2822, x2820, x2780, x2777); + let mut x2823: u32 = 0; + let mut x2824: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2823, &mut x2824, x2822, x2778, x2775); + let mut x2825: u32 = 0; + let mut x2826: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2825, &mut x2826, x2824, x2776, x2773); + let mut x2827: u32 = 0; + let mut x2828: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2827, &mut x2828, x2826, x2774, x2771); + let mut x2829: u32 = 0; + let mut x2830: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2829, &mut x2830, x2828, x2772, x2769); + let mut x2831: u32 = 0; + let mut x2832: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2831, &mut x2832, 0x0, x2735, x2799); + let mut x2833: u32 = 0; + let mut x2834: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2833, &mut x2834, x2832, x2737, x2801); + let mut x2835: u32 = 0; + let mut x2836: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2835, &mut x2836, x2834, x2739, x2803); + let mut x2837: u32 = 0; + let mut x2838: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2837, &mut x2838, x2836, x2741, x2805); + let mut x2839: u32 = 0; + let mut x2840: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2839, &mut x2840, x2838, x2743, x2807); + let mut x2841: u32 = 0; + let mut x2842: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2841, &mut x2842, x2840, x2745, x2809); + let mut x2843: u32 = 0; + let mut x2844: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2843, &mut x2844, x2842, x2747, x2811); + let mut x2845: u32 = 0; + let mut x2846: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2845, &mut x2846, x2844, x2749, x2813); + let mut x2847: u32 = 0; + let mut x2848: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2847, &mut x2848, x2846, x2751, x2815); + let mut x2849: u32 = 0; + let mut x2850: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2849, &mut x2850, x2848, x2753, x2817); + let mut x2851: u32 = 0; + let mut x2852: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2851, &mut x2852, x2850, x2755, x2819); + let mut x2853: u32 = 0; + let mut x2854: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2853, &mut x2854, x2852, x2757, x2821); + let mut x2855: u32 = 0; + let mut x2856: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2855, &mut x2856, x2854, x2759, x2823); + let mut x2857: u32 = 0; + let mut x2858: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2857, &mut x2858, x2856, x2761, x2825); + let mut x2859: u32 = 0; + let mut x2860: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2859, &mut x2860, x2858, x2763, x2827); + let mut x2861: u32 = 0; + let mut x2862: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2861, &mut x2862, x2860, x2765, x2829); + let mut x2863: u32 = 0; + let mut x2864: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x2863, + &mut x2864, + x2862, + (((x2766 as u32) + (x2672 as u32)) + ((x2734 as u32) + x2674)), + ((x2830 as u32) + x2770), + ); + let mut x2865: u32 = 0; + let mut x2866: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2865, &mut x2866, x15, 0xa794586a); + let mut x2867: u32 = 0; + let mut x2868: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2867, &mut x2868, x15, 0x718407b0); + let mut x2869: u32 = 0; + let mut x2870: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2869, &mut x2870, x15, 0x95df1b4c); + let mut x2871: u32 = 0; + let mut x2872: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2871, &mut x2872, x15, 0x194b2e56); + let mut x2873: u32 = 0; + let mut x2874: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2873, &mut x2874, x15, 0x723c37a2); + let mut x2875: u32 = 0; + let mut x2876: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2875, &mut x2876, x15, 0x2f16bbdf); + let mut x2877: u32 = 0; + let mut x2878: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2877, &mut x2878, x15, 0xd7f9cc26); + let mut x2879: u32 = 0; + let mut x2880: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2879, &mut x2880, x15, 0x3b790de3); + let mut x2881: u32 = 0; + let mut x2882: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2881, &mut x2882, x15, 0xa6f230c7); + let mut x2883: u32 = 0; + let mut x2884: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2883, &mut x2884, x15, 0x2f0207e8); + let mut x2885: u32 = 0; + let mut x2886: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2885, &mut x2886, x15, 0x3ec64bd0); + let mut x2887: u32 = 0; + let mut x2888: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2887, &mut x2888, x15, 0x33b7627f); + let mut x2889: u32 = 0; + let mut x2890: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2889, &mut x2890, x15, 0x886b758); + let mut x2891: u32 = 0; + let mut x2892: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2891, &mut x2892, x15, 0x95283ddd); + let mut x2893: u32 = 0; + let mut x2894: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2893, &mut x2894, x15, 0xd2a3681e); + let mut x2895: u32 = 0; + let mut x2896: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2895, &mut x2896, x15, 0xcda81671); + let mut x2897: u32 = 0; + let mut x2898: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2897, &mut x2898, 0x0, x2896, x2893); + let mut x2899: u32 = 0; + let mut x2900: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2899, &mut x2900, x2898, x2894, x2891); + let mut x2901: u32 = 0; + let mut x2902: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2901, &mut x2902, x2900, x2892, x2889); + let mut x2903: u32 = 0; + let mut x2904: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2903, &mut x2904, x2902, x2890, x2887); + let mut x2905: u32 = 0; + let mut x2906: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2905, &mut x2906, x2904, x2888, x2885); + let mut x2907: u32 = 0; + let mut x2908: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2907, &mut x2908, x2906, x2886, x2883); + let mut x2909: u32 = 0; + let mut x2910: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2909, &mut x2910, x2908, x2884, x2881); + let mut x2911: u32 = 0; + let mut x2912: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2911, &mut x2912, x2910, x2882, x2879); + let mut x2913: u32 = 0; + let mut x2914: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2913, &mut x2914, x2912, x2880, x2877); + let mut x2915: u32 = 0; + let mut x2916: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2915, &mut x2916, x2914, x2878, x2875); + let mut x2917: u32 = 0; + let mut x2918: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2917, &mut x2918, x2916, x2876, x2873); + let mut x2919: u32 = 0; + let mut x2920: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2919, &mut x2920, x2918, x2874, x2871); + let mut x2921: u32 = 0; + let mut x2922: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2921, &mut x2922, x2920, x2872, x2869); + let mut x2923: u32 = 0; + let mut x2924: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2923, &mut x2924, x2922, x2870, x2867); + let mut x2925: u32 = 0; + let mut x2926: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2925, &mut x2926, x2924, x2868, x2865); + let mut x2927: u32 = 0; + let mut x2928: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2927, &mut x2928, 0x0, x2833, x2895); + let mut x2929: u32 = 0; + let mut x2930: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2929, &mut x2930, x2928, x2835, x2897); + let mut x2931: u32 = 0; + let mut x2932: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2931, &mut x2932, x2930, x2837, x2899); + let mut x2933: u32 = 0; + let mut x2934: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2933, &mut x2934, x2932, x2839, x2901); + let mut x2935: u32 = 0; + let mut x2936: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2935, &mut x2936, x2934, x2841, x2903); + let mut x2937: u32 = 0; + let mut x2938: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2937, &mut x2938, x2936, x2843, x2905); + let mut x2939: u32 = 0; + let mut x2940: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2939, &mut x2940, x2938, x2845, x2907); + let mut x2941: u32 = 0; + let mut x2942: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2941, &mut x2942, x2940, x2847, x2909); + let mut x2943: u32 = 0; + let mut x2944: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2943, &mut x2944, x2942, x2849, x2911); + let mut x2945: u32 = 0; + let mut x2946: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2945, &mut x2946, x2944, x2851, x2913); + let mut x2947: u32 = 0; + let mut x2948: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2947, &mut x2948, x2946, x2853, x2915); + let mut x2949: u32 = 0; + let mut x2950: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2949, &mut x2950, x2948, x2855, x2917); + let mut x2951: u32 = 0; + let mut x2952: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2951, &mut x2952, x2950, x2857, x2919); + let mut x2953: u32 = 0; + let mut x2954: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2953, &mut x2954, x2952, x2859, x2921); + let mut x2955: u32 = 0; + let mut x2956: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2955, &mut x2956, x2954, x2861, x2923); + let mut x2957: u32 = 0; + let mut x2958: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2957, &mut x2958, x2956, x2863, x2925); + let mut x2959: u32 = 0; + let mut x2960: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2959, &mut x2960, x2927, 0xf1b7027); + let mut x2961: u32 = 0; + let mut x2962: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2961, &mut x2962, x2959, 0xaadd9db8); + let mut x2963: u32 = 0; + let mut x2964: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2963, &mut x2964, x2959, 0xdbe9c48b); + let mut x2965: u32 = 0; + let mut x2966: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2965, &mut x2966, x2959, 0x3fd4e6ae); + let mut x2967: u32 = 0; + let mut x2968: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2967, &mut x2968, x2959, 0x33c9fc07); + let mut x2969: u32 = 0; + let mut x2970: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2969, &mut x2970, x2959, 0xcb308db3); + let mut x2971: u32 = 0; + let mut x2972: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2971, &mut x2972, x2959, 0xb3c9d20e); + let mut x2973: u32 = 0; + let mut x2974: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2973, &mut x2974, x2959, 0xd6639cca); + let mut x2975: u32 = 0; + let mut x2976: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2975, &mut x2976, x2959, 0x70330870); + let mut x2977: u32 = 0; + let mut x2978: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2977, &mut x2978, x2959, 0x553e5c41); + let mut x2979: u32 = 0; + let mut x2980: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2979, &mut x2980, x2959, 0x4ca92619); + let mut x2981: u32 = 0; + let mut x2982: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2981, &mut x2982, x2959, 0x41866119); + let mut x2983: u32 = 0; + let mut x2984: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2983, &mut x2984, x2959, 0x7fac1047); + let mut x2985: u32 = 0; + let mut x2986: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2985, &mut x2986, x2959, 0x1db1d381); + let mut x2987: u32 = 0; + let mut x2988: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2987, &mut x2988, x2959, 0x85ddadd); + let mut x2989: u32 = 0; + let mut x2990: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2989, &mut x2990, x2959, 0xb5879682); + let mut x2991: u32 = 0; + let mut x2992: u32 = 0; + fiat_bp512_scalar_mulx_u32(&mut x2991, &mut x2992, x2959, 0x9ca90069); + let mut x2993: u32 = 0; + let mut x2994: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2993, &mut x2994, 0x0, x2992, x2989); + let mut x2995: u32 = 0; + let mut x2996: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2995, &mut x2996, x2994, x2990, x2987); + let mut x2997: u32 = 0; + let mut x2998: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2997, &mut x2998, x2996, x2988, x2985); + let mut x2999: u32 = 0; + let mut x3000: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x2999, &mut x3000, x2998, x2986, x2983); + let mut x3001: u32 = 0; + let mut x3002: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3001, &mut x3002, x3000, x2984, x2981); + let mut x3003: u32 = 0; + let mut x3004: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3003, &mut x3004, x3002, x2982, x2979); + let mut x3005: u32 = 0; + let mut x3006: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3005, &mut x3006, x3004, x2980, x2977); + let mut x3007: u32 = 0; + let mut x3008: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3007, &mut x3008, x3006, x2978, x2975); + let mut x3009: u32 = 0; + let mut x3010: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3009, &mut x3010, x3008, x2976, x2973); + let mut x3011: u32 = 0; + let mut x3012: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3011, &mut x3012, x3010, x2974, x2971); + let mut x3013: u32 = 0; + let mut x3014: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3013, &mut x3014, x3012, x2972, x2969); + let mut x3015: u32 = 0; + let mut x3016: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3015, &mut x3016, x3014, x2970, x2967); + let mut x3017: u32 = 0; + let mut x3018: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3017, &mut x3018, x3016, x2968, x2965); + let mut x3019: u32 = 0; + let mut x3020: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3019, &mut x3020, x3018, x2966, x2963); + let mut x3021: u32 = 0; + let mut x3022: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3021, &mut x3022, x3020, x2964, x2961); + let mut x3023: u32 = 0; + let mut x3024: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3023, &mut x3024, 0x0, x2927, x2991); + let mut x3025: u32 = 0; + let mut x3026: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3025, &mut x3026, x3024, x2929, x2993); + let mut x3027: u32 = 0; + let mut x3028: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3027, &mut x3028, x3026, x2931, x2995); + let mut x3029: u32 = 0; + let mut x3030: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3029, &mut x3030, x3028, x2933, x2997); + let mut x3031: u32 = 0; + let mut x3032: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3031, &mut x3032, x3030, x2935, x2999); + let mut x3033: u32 = 0; + let mut x3034: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3033, &mut x3034, x3032, x2937, x3001); + let mut x3035: u32 = 0; + let mut x3036: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3035, &mut x3036, x3034, x2939, x3003); + let mut x3037: u32 = 0; + let mut x3038: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3037, &mut x3038, x3036, x2941, x3005); + let mut x3039: u32 = 0; + let mut x3040: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3039, &mut x3040, x3038, x2943, x3007); + let mut x3041: u32 = 0; + let mut x3042: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3041, &mut x3042, x3040, x2945, x3009); + let mut x3043: u32 = 0; + let mut x3044: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3043, &mut x3044, x3042, x2947, x3011); + let mut x3045: u32 = 0; + let mut x3046: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3045, &mut x3046, x3044, x2949, x3013); + let mut x3047: u32 = 0; + let mut x3048: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3047, &mut x3048, x3046, x2951, x3015); + let mut x3049: u32 = 0; + let mut x3050: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3049, &mut x3050, x3048, x2953, x3017); + let mut x3051: u32 = 0; + let mut x3052: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3051, &mut x3052, x3050, x2955, x3019); + let mut x3053: u32 = 0; + let mut x3054: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x3053, &mut x3054, x3052, x2957, x3021); + let mut x3055: u32 = 0; + let mut x3056: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32( + &mut x3055, + &mut x3056, + x3054, + (((x2958 as u32) + (x2864 as u32)) + ((x2926 as u32) + x2866)), + ((x3022 as u32) + x2962), + ); + let mut x3057: u32 = 0; + let mut x3058: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3057, &mut x3058, 0x0, x3025, 0x9ca90069); + let mut x3059: u32 = 0; + let mut x3060: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3059, &mut x3060, x3058, x3027, 0xb5879682); + let mut x3061: u32 = 0; + let mut x3062: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3061, &mut x3062, x3060, x3029, 0x85ddadd); + let mut x3063: u32 = 0; + let mut x3064: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3063, &mut x3064, x3062, x3031, 0x1db1d381); + let mut x3065: u32 = 0; + let mut x3066: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3065, &mut x3066, x3064, x3033, 0x7fac1047); + let mut x3067: u32 = 0; + let mut x3068: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3067, &mut x3068, x3066, x3035, 0x41866119); + let mut x3069: u32 = 0; + let mut x3070: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3069, &mut x3070, x3068, x3037, 0x4ca92619); + let mut x3071: u32 = 0; + let mut x3072: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3071, &mut x3072, x3070, x3039, 0x553e5c41); + let mut x3073: u32 = 0; + let mut x3074: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3073, &mut x3074, x3072, x3041, 0x70330870); + let mut x3075: u32 = 0; + let mut x3076: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3075, &mut x3076, x3074, x3043, 0xd6639cca); + let mut x3077: u32 = 0; + let mut x3078: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3077, &mut x3078, x3076, x3045, 0xb3c9d20e); + let mut x3079: u32 = 0; + let mut x3080: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3079, &mut x3080, x3078, x3047, 0xcb308db3); + let mut x3081: u32 = 0; + let mut x3082: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3081, &mut x3082, x3080, x3049, 0x33c9fc07); + let mut x3083: u32 = 0; + let mut x3084: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3083, &mut x3084, x3082, x3051, 0x3fd4e6ae); + let mut x3085: u32 = 0; + let mut x3086: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3085, &mut x3086, x3084, x3053, 0xdbe9c48b); + let mut x3087: u32 = 0; + let mut x3088: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3087, &mut x3088, x3086, x3055, 0xaadd9db8); + let mut x3089: u32 = 0; + let mut x3090: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x3089, &mut x3090, x3088, (x3056 as u32), (0x0 as u32)); + let mut x3091: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3091, x3090, x3057, x3025); + let mut x3092: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3092, x3090, x3059, x3027); + let mut x3093: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3093, x3090, x3061, x3029); + let mut x3094: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3094, x3090, x3063, x3031); + let mut x3095: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3095, x3090, x3065, x3033); + let mut x3096: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3096, x3090, x3067, x3035); + let mut x3097: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3097, x3090, x3069, x3037); + let mut x3098: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3098, x3090, x3071, x3039); + let mut x3099: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3099, x3090, x3073, x3041); + let mut x3100: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3100, x3090, x3075, x3043); + let mut x3101: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3101, x3090, x3077, x3045); + let mut x3102: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3102, x3090, x3079, x3047); + let mut x3103: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3103, x3090, x3081, x3049); + let mut x3104: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3104, x3090, x3083, x3051); + let mut x3105: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3105, x3090, x3085, x3053); + let mut x3106: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3106, x3090, x3087, x3055); + out1[0] = x3091; + out1[1] = x3092; + out1[2] = x3093; + out1[3] = x3094; + out1[4] = x3095; + out1[5] = x3096; + out1[6] = x3097; + out1[7] = x3098; + out1[8] = x3099; + out1[9] = x3100; + out1[10] = x3101; + out1[11] = x3102; + out1[12] = x3103; + out1[13] = x3104; + out1[14] = x3105; + out1[15] = x3106; +} + +/// The function fiat_bp512_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +#[inline] +pub fn fiat_bp512_scalar_nonzero(out1: &mut u32, arg1: &[u32; 16]) { + let x1: u32 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) + | ((arg1[3]) + | ((arg1[4]) + | ((arg1[5]) + | ((arg1[6]) + | ((arg1[7]) + | ((arg1[8]) + | ((arg1[9]) + | ((arg1[10]) + | ((arg1[11]) + | ((arg1[12]) + | ((arg1[13]) + | ((arg1[14]) + | (arg1[15])))))))))))))))); + *out1 = x1; +} + +/// The function fiat_bp512_scalar_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_scalar_selectznz( + out1: &mut [u32; 16], + arg1: fiat_bp512_scalar_u1, + arg2: &[u32; 16], + arg3: &[u32; 16], +) { + let mut x1: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x8, arg1, (arg2[7]), (arg3[7])); + let mut x9: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x9, arg1, (arg2[8]), (arg3[8])); + let mut x10: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x10, arg1, (arg2[9]), (arg3[9])); + let mut x11: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x11, arg1, (arg2[10]), (arg3[10])); + let mut x12: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x12, arg1, (arg2[11]), (arg3[11])); + let mut x13: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x13, arg1, (arg2[12]), (arg3[12])); + let mut x14: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x14, arg1, (arg2[13]), (arg3[13])); + let mut x15: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x15, arg1, (arg2[14]), (arg3[14])); + let mut x16: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x16, arg1, (arg2[15]), (arg3[15])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; + out1[8] = x9; + out1[9] = x10; + out1[10] = x11; + out1[11] = x12; + out1[12] = x13; + out1[13] = x14; + out1[14] = x15; + out1[15] = x16; +} + +/// The function fiat_bp512_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { + let x1: u32 = (arg1[15]); + let x2: u32 = (arg1[14]); + let x3: u32 = (arg1[13]); + let x4: u32 = (arg1[12]); + let x5: u32 = (arg1[11]); + let x6: u32 = (arg1[10]); + let x7: u32 = (arg1[9]); + let x8: u32 = (arg1[8]); + let x9: u32 = (arg1[7]); + let x10: u32 = (arg1[6]); + let x11: u32 = (arg1[5]); + let x12: u32 = (arg1[4]); + let x13: u32 = (arg1[3]); + let x14: u32 = (arg1[2]); + let x15: u32 = (arg1[1]); + let x16: u32 = (arg1[0]); + let x17: u8 = ((x16 & (0xff as u32)) as u8); + let x18: u32 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u32)) as u8); + let x20: u32 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u32)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x15 & (0xff as u32)) as u8); + let x24: u32 = (x15 >> 8); + let x25: u8 = ((x24 & (0xff as u32)) as u8); + let x26: u32 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u32)) as u8); + let x28: u8 = ((x26 >> 8) as u8); + let x29: u8 = ((x14 & (0xff as u32)) as u8); + let x30: u32 = (x14 >> 8); + let x31: u8 = ((x30 & (0xff as u32)) as u8); + let x32: u32 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u32)) as u8); + let x34: u8 = ((x32 >> 8) as u8); + let x35: u8 = ((x13 & (0xff as u32)) as u8); + let x36: u32 = (x13 >> 8); + let x37: u8 = ((x36 & (0xff as u32)) as u8); + let x38: u32 = (x36 >> 8); + let x39: u8 = ((x38 & (0xff as u32)) as u8); + let x40: u8 = ((x38 >> 8) as u8); + let x41: u8 = ((x12 & (0xff as u32)) as u8); + let x42: u32 = (x12 >> 8); + let x43: u8 = ((x42 & (0xff as u32)) as u8); + let x44: u32 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u32)) as u8); + let x46: u8 = ((x44 >> 8) as u8); + let x47: u8 = ((x11 & (0xff as u32)) as u8); + let x48: u32 = (x11 >> 8); + let x49: u8 = ((x48 & (0xff as u32)) as u8); + let x50: u32 = (x48 >> 8); + let x51: u8 = ((x50 & (0xff as u32)) as u8); + let x52: u8 = ((x50 >> 8) as u8); + let x53: u8 = ((x10 & (0xff as u32)) as u8); + let x54: u32 = (x10 >> 8); + let x55: u8 = ((x54 & (0xff as u32)) as u8); + let x56: u32 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u32)) as u8); + let x58: u8 = ((x56 >> 8) as u8); + let x59: u8 = ((x9 & (0xff as u32)) as u8); + let x60: u32 = (x9 >> 8); + let x61: u8 = ((x60 & (0xff as u32)) as u8); + let x62: u32 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u32)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x8 & (0xff as u32)) as u8); + let x66: u32 = (x8 >> 8); + let x67: u8 = ((x66 & (0xff as u32)) as u8); + let x68: u32 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u32)) as u8); + let x70: u8 = ((x68 >> 8) as u8); + let x71: u8 = ((x7 & (0xff as u32)) as u8); + let x72: u32 = (x7 >> 8); + let x73: u8 = ((x72 & (0xff as u32)) as u8); + let x74: u32 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u32)) as u8); + let x76: u8 = ((x74 >> 8) as u8); + let x77: u8 = ((x6 & (0xff as u32)) as u8); + let x78: u32 = (x6 >> 8); + let x79: u8 = ((x78 & (0xff as u32)) as u8); + let x80: u32 = (x78 >> 8); + let x81: u8 = ((x80 & (0xff as u32)) as u8); + let x82: u8 = ((x80 >> 8) as u8); + let x83: u8 = ((x5 & (0xff as u32)) as u8); + let x84: u32 = (x5 >> 8); + let x85: u8 = ((x84 & (0xff as u32)) as u8); + let x86: u32 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u32)) as u8); + let x88: u8 = ((x86 >> 8) as u8); + let x89: u8 = ((x4 & (0xff as u32)) as u8); + let x90: u32 = (x4 >> 8); + let x91: u8 = ((x90 & (0xff as u32)) as u8); + let x92: u32 = (x90 >> 8); + let x93: u8 = ((x92 & (0xff as u32)) as u8); + let x94: u8 = ((x92 >> 8) as u8); + let x95: u8 = ((x3 & (0xff as u32)) as u8); + let x96: u32 = (x3 >> 8); + let x97: u8 = ((x96 & (0xff as u32)) as u8); + let x98: u32 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u32)) as u8); + let x100: u8 = ((x98 >> 8) as u8); + let x101: u8 = ((x2 & (0xff as u32)) as u8); + let x102: u32 = (x2 >> 8); + let x103: u8 = ((x102 & (0xff as u32)) as u8); + let x104: u32 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u32)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u32)) as u8); + let x108: u32 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u32)) as u8); + let x110: u32 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u32)) as u8); + let x112: u8 = ((x110 >> 8) as u8); + out1[0] = x17; + out1[1] = x19; + out1[2] = x21; + out1[3] = x22; + out1[4] = x23; + out1[5] = x25; + out1[6] = x27; + out1[7] = x28; + out1[8] = x29; + out1[9] = x31; + out1[10] = x33; + out1[11] = x34; + out1[12] = x35; + out1[13] = x37; + out1[14] = x39; + out1[15] = x40; + out1[16] = x41; + out1[17] = x43; + out1[18] = x45; + out1[19] = x46; + out1[20] = x47; + out1[21] = x49; + out1[22] = x51; + out1[23] = x52; + out1[24] = x53; + out1[25] = x55; + out1[26] = x57; + out1[27] = x58; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x70; + out1[36] = x71; + out1[37] = x73; + out1[38] = x75; + out1[39] = x76; + out1[40] = x77; + out1[41] = x79; + out1[42] = x81; + out1[43] = x82; + out1[44] = x83; + out1[45] = x85; + out1[46] = x87; + out1[47] = x88; + out1[48] = x89; + out1[49] = x91; + out1[50] = x93; + out1[51] = x94; + out1[52] = x95; + out1[53] = x97; + out1[54] = x99; + out1[55] = x100; + out1[56] = x101; + out1[57] = x103; + out1[58] = x105; + out1[59] = x106; + out1[60] = x107; + out1[61] = x109; + out1[62] = x111; + out1[63] = x112; +} + +/// The function fiat_bp512_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { + let x1: u32 = (((arg1[63]) as u32) << 24); + let x2: u32 = (((arg1[62]) as u32) << 16); + let x3: u32 = (((arg1[61]) as u32) << 8); + let x4: u8 = (arg1[60]); + let x5: u32 = (((arg1[59]) as u32) << 24); + let x6: u32 = (((arg1[58]) as u32) << 16); + let x7: u32 = (((arg1[57]) as u32) << 8); + let x8: u8 = (arg1[56]); + let x9: u32 = (((arg1[55]) as u32) << 24); + let x10: u32 = (((arg1[54]) as u32) << 16); + let x11: u32 = (((arg1[53]) as u32) << 8); + let x12: u8 = (arg1[52]); + let x13: u32 = (((arg1[51]) as u32) << 24); + let x14: u32 = (((arg1[50]) as u32) << 16); + let x15: u32 = (((arg1[49]) as u32) << 8); + let x16: u8 = (arg1[48]); + let x17: u32 = (((arg1[47]) as u32) << 24); + let x18: u32 = (((arg1[46]) as u32) << 16); + let x19: u32 = (((arg1[45]) as u32) << 8); + let x20: u8 = (arg1[44]); + let x21: u32 = (((arg1[43]) as u32) << 24); + let x22: u32 = (((arg1[42]) as u32) << 16); + let x23: u32 = (((arg1[41]) as u32) << 8); + let x24: u8 = (arg1[40]); + let x25: u32 = (((arg1[39]) as u32) << 24); + let x26: u32 = (((arg1[38]) as u32) << 16); + let x27: u32 = (((arg1[37]) as u32) << 8); + let x28: u8 = (arg1[36]); + let x29: u32 = (((arg1[35]) as u32) << 24); + let x30: u32 = (((arg1[34]) as u32) << 16); + let x31: u32 = (((arg1[33]) as u32) << 8); + let x32: u8 = (arg1[32]); + let x33: u32 = (((arg1[31]) as u32) << 24); + let x34: u32 = (((arg1[30]) as u32) << 16); + let x35: u32 = (((arg1[29]) as u32) << 8); + let x36: u8 = (arg1[28]); + let x37: u32 = (((arg1[27]) as u32) << 24); + let x38: u32 = (((arg1[26]) as u32) << 16); + let x39: u32 = (((arg1[25]) as u32) << 8); + let x40: u8 = (arg1[24]); + let x41: u32 = (((arg1[23]) as u32) << 24); + let x42: u32 = (((arg1[22]) as u32) << 16); + let x43: u32 = (((arg1[21]) as u32) << 8); + let x44: u8 = (arg1[20]); + let x45: u32 = (((arg1[19]) as u32) << 24); + let x46: u32 = (((arg1[18]) as u32) << 16); + let x47: u32 = (((arg1[17]) as u32) << 8); + let x48: u8 = (arg1[16]); + let x49: u32 = (((arg1[15]) as u32) << 24); + let x50: u32 = (((arg1[14]) as u32) << 16); + let x51: u32 = (((arg1[13]) as u32) << 8); + let x52: u8 = (arg1[12]); + let x53: u32 = (((arg1[11]) as u32) << 24); + let x54: u32 = (((arg1[10]) as u32) << 16); + let x55: u32 = (((arg1[9]) as u32) << 8); + let x56: u8 = (arg1[8]); + let x57: u32 = (((arg1[7]) as u32) << 24); + let x58: u32 = (((arg1[6]) as u32) << 16); + let x59: u32 = (((arg1[5]) as u32) << 8); + let x60: u8 = (arg1[4]); + let x61: u32 = (((arg1[3]) as u32) << 24); + let x62: u32 = (((arg1[2]) as u32) << 16); + let x63: u32 = (((arg1[1]) as u32) << 8); + let x64: u8 = (arg1[0]); + let x65: u32 = (x63 + (x64 as u32)); + let x66: u32 = (x62 + x65); + let x67: u32 = (x61 + x66); + let x68: u32 = (x59 + (x60 as u32)); + let x69: u32 = (x58 + x68); + let x70: u32 = (x57 + x69); + let x71: u32 = (x55 + (x56 as u32)); + let x72: u32 = (x54 + x71); + let x73: u32 = (x53 + x72); + let x74: u32 = (x51 + (x52 as u32)); + let x75: u32 = (x50 + x74); + let x76: u32 = (x49 + x75); + let x77: u32 = (x47 + (x48 as u32)); + let x78: u32 = (x46 + x77); + let x79: u32 = (x45 + x78); + let x80: u32 = (x43 + (x44 as u32)); + let x81: u32 = (x42 + x80); + let x82: u32 = (x41 + x81); + let x83: u32 = (x39 + (x40 as u32)); + let x84: u32 = (x38 + x83); + let x85: u32 = (x37 + x84); + let x86: u32 = (x35 + (x36 as u32)); + let x87: u32 = (x34 + x86); + let x88: u32 = (x33 + x87); + let x89: u32 = (x31 + (x32 as u32)); + let x90: u32 = (x30 + x89); + let x91: u32 = (x29 + x90); + let x92: u32 = (x27 + (x28 as u32)); + let x93: u32 = (x26 + x92); + let x94: u32 = (x25 + x93); + let x95: u32 = (x23 + (x24 as u32)); + let x96: u32 = (x22 + x95); + let x97: u32 = (x21 + x96); + let x98: u32 = (x19 + (x20 as u32)); + let x99: u32 = (x18 + x98); + let x100: u32 = (x17 + x99); + let x101: u32 = (x15 + (x16 as u32)); + let x102: u32 = (x14 + x101); + let x103: u32 = (x13 + x102); + let x104: u32 = (x11 + (x12 as u32)); + let x105: u32 = (x10 + x104); + let x106: u32 = (x9 + x105); + let x107: u32 = (x7 + (x8 as u32)); + let x108: u32 = (x6 + x107); + let x109: u32 = (x5 + x108); + let x110: u32 = (x3 + (x4 as u32)); + let x111: u32 = (x2 + x110); + let x112: u32 = (x1 + x111); + out1[0] = x67; + out1[1] = x70; + out1[2] = x73; + out1[3] = x76; + out1[4] = x79; + out1[5] = x82; + out1[6] = x85; + out1[7] = x88; + out1[8] = x91; + out1[9] = x94; + out1[10] = x97; + out1[11] = x100; + out1[12] = x103; + out1[13] = x106; + out1[14] = x109; + out1[15] = x112; +} + +/// The function fiat_bp512_scalar_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_field_element) { + out1[0] = 0x6356ff97; + out1[1] = 0x4a78697d; + out1[2] = 0xf7a22522; + out1[3] = 0xe24e2c7e; + out1[4] = 0x8053efb8; + out1[5] = 0xbe799ee6; + out1[6] = 0xb356d9e6; + out1[7] = 0xaac1a3be; + out1[8] = 0x8fccf78f; + out1[9] = 0x299c6335; + out1[10] = 0x4c362df1; + out1[11] = 0x34cf724c; + out1[12] = 0xcc3603f8; + out1[13] = 0xc02b1951; + out1[14] = 0x24163b74; + out1[15] = 0x55226247; +} + +/// The function fiat_bp512_scalar_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_scalar_msat(out1: &mut [u32; 17]) { + out1[0] = 0x9ca90069; + out1[1] = 0xb5879682; + out1[2] = 0x85ddadd; + out1[3] = 0x1db1d381; + out1[4] = 0x7fac1047; + out1[5] = 0x41866119; + out1[6] = 0x4ca92619; + out1[7] = 0x553e5c41; + out1[8] = 0x70330870; + out1[9] = 0xd6639cca; + out1[10] = 0xb3c9d20e; + out1[11] = 0xcb308db3; + out1[12] = 0x33c9fc07; + out1[13] = 0x3fd4e6ae; + out1[14] = 0xdbe9c48b; + out1[15] = 0xaadd9db8; + out1[16] = (0x0 as u32); +} + +/// The function fiat_bp512_scalar_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffff] +/// arg2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// arg5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffff] +/// out2: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out3: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +/// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_scalar_divstep( + out1: &mut u32, + out2: &mut [u32; 17], + out3: &mut [u32; 17], + out4: &mut [u32; 16], + out5: &mut [u32; 16], + arg1: u32, + arg2: &[u32; 17], + arg3: &[u32; 17], + arg4: &[u32; 16], + arg5: &[u32; 16], +) { + let mut x1: u32 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u32)); + let x3: fiat_bp512_scalar_u1 = (((x1 >> 31) as fiat_bp512_scalar_u1) + & (((arg3[0]) & (0x1 as u32)) as fiat_bp512_scalar_u1)); + let mut x4: u32 = 0; + let mut x5: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u32)); + let mut x6: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x6, x3, arg1, x4); + let mut x7: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x16, x3, (arg2[9]), (arg3[9])); + let mut x17: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x17, x3, (arg2[10]), (arg3[10])); + let mut x18: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x18, x3, (arg2[11]), (arg3[11])); + let mut x19: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x19, x3, (arg2[12]), (arg3[12])); + let mut x20: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x20, x3, (arg2[13]), (arg3[13])); + let mut x21: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x21, x3, (arg2[14]), (arg3[14])); + let mut x22: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x22, x3, (arg2[15]), (arg3[15])); + let mut x23: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x23, x3, (arg2[16]), (arg3[16])); + let mut x24: u32 = 0; + let mut x25: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x24, &mut x25, 0x0, (0x1 as u32), (!(arg2[0]))); + let mut x26: u32 = 0; + let mut x27: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x26, &mut x27, x25, (0x0 as u32), (!(arg2[1]))); + let mut x28: u32 = 0; + let mut x29: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x28, &mut x29, x27, (0x0 as u32), (!(arg2[2]))); + let mut x30: u32 = 0; + let mut x31: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x30, &mut x31, x29, (0x0 as u32), (!(arg2[3]))); + let mut x32: u32 = 0; + let mut x33: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x32, &mut x33, x31, (0x0 as u32), (!(arg2[4]))); + let mut x34: u32 = 0; + let mut x35: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x34, &mut x35, x33, (0x0 as u32), (!(arg2[5]))); + let mut x36: u32 = 0; + let mut x37: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x36, &mut x37, x35, (0x0 as u32), (!(arg2[6]))); + let mut x38: u32 = 0; + let mut x39: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x38, &mut x39, x37, (0x0 as u32), (!(arg2[7]))); + let mut x40: u32 = 0; + let mut x41: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x40, &mut x41, x39, (0x0 as u32), (!(arg2[8]))); + let mut x42: u32 = 0; + let mut x43: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x42, &mut x43, x41, (0x0 as u32), (!(arg2[9]))); + let mut x44: u32 = 0; + let mut x45: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x44, &mut x45, x43, (0x0 as u32), (!(arg2[10]))); + let mut x46: u32 = 0; + let mut x47: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x46, &mut x47, x45, (0x0 as u32), (!(arg2[11]))); + let mut x48: u32 = 0; + let mut x49: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x48, &mut x49, x47, (0x0 as u32), (!(arg2[12]))); + let mut x50: u32 = 0; + let mut x51: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x50, &mut x51, x49, (0x0 as u32), (!(arg2[13]))); + let mut x52: u32 = 0; + let mut x53: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x52, &mut x53, x51, (0x0 as u32), (!(arg2[14]))); + let mut x54: u32 = 0; + let mut x55: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x54, &mut x55, x53, (0x0 as u32), (!(arg2[15]))); + let mut x56: u32 = 0; + let mut x57: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x56, &mut x57, x55, (0x0 as u32), (!(arg2[16]))); + let mut x58: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x58, x3, (arg3[0]), x24); + let mut x59: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x59, x3, (arg3[1]), x26); + let mut x60: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x60, x3, (arg3[2]), x28); + let mut x61: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x61, x3, (arg3[3]), x30); + let mut x62: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x62, x3, (arg3[4]), x32); + let mut x63: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x63, x3, (arg3[5]), x34); + let mut x64: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x64, x3, (arg3[6]), x36); + let mut x65: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x65, x3, (arg3[7]), x38); + let mut x66: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x66, x3, (arg3[8]), x40); + let mut x67: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x67, x3, (arg3[9]), x42); + let mut x68: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x68, x3, (arg3[10]), x44); + let mut x69: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x69, x3, (arg3[11]), x46); + let mut x70: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x70, x3, (arg3[12]), x48); + let mut x71: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x71, x3, (arg3[13]), x50); + let mut x72: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x72, x3, (arg3[14]), x52); + let mut x73: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x73, x3, (arg3[15]), x54); + let mut x74: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x74, x3, (arg3[16]), x56); + let mut x75: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x75, x3, (arg4[0]), (arg5[0])); + let mut x76: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x76, x3, (arg4[1]), (arg5[1])); + let mut x77: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x77, x3, (arg4[2]), (arg5[2])); + let mut x78: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x78, x3, (arg4[3]), (arg5[3])); + let mut x79: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x79, x3, (arg4[4]), (arg5[4])); + let mut x80: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x80, x3, (arg4[5]), (arg5[5])); + let mut x81: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x81, x3, (arg4[6]), (arg5[6])); + let mut x82: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x82, x3, (arg4[7]), (arg5[7])); + let mut x83: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x83, x3, (arg4[8]), (arg5[8])); + let mut x84: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x84, x3, (arg4[9]), (arg5[9])); + let mut x85: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x85, x3, (arg4[10]), (arg5[10])); + let mut x86: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x86, x3, (arg4[11]), (arg5[11])); + let mut x87: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x87, x3, (arg4[12]), (arg5[12])); + let mut x88: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x88, x3, (arg4[13]), (arg5[13])); + let mut x89: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x89, x3, (arg4[14]), (arg5[14])); + let mut x90: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x90, x3, (arg4[15]), (arg5[15])); + let mut x91: u32 = 0; + let mut x92: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x91, &mut x92, 0x0, x75, x75); + let mut x93: u32 = 0; + let mut x94: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x93, &mut x94, x92, x76, x76); + let mut x95: u32 = 0; + let mut x96: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x95, &mut x96, x94, x77, x77); + let mut x97: u32 = 0; + let mut x98: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x97, &mut x98, x96, x78, x78); + let mut x99: u32 = 0; + let mut x100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x99, &mut x100, x98, x79, x79); + let mut x101: u32 = 0; + let mut x102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x101, &mut x102, x100, x80, x80); + let mut x103: u32 = 0; + let mut x104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x103, &mut x104, x102, x81, x81); + let mut x105: u32 = 0; + let mut x106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x105, &mut x106, x104, x82, x82); + let mut x107: u32 = 0; + let mut x108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x107, &mut x108, x106, x83, x83); + let mut x109: u32 = 0; + let mut x110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x109, &mut x110, x108, x84, x84); + let mut x111: u32 = 0; + let mut x112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x111, &mut x112, x110, x85, x85); + let mut x113: u32 = 0; + let mut x114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x113, &mut x114, x112, x86, x86); + let mut x115: u32 = 0; + let mut x116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x115, &mut x116, x114, x87, x87); + let mut x117: u32 = 0; + let mut x118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x117, &mut x118, x116, x88, x88); + let mut x119: u32 = 0; + let mut x120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x119, &mut x120, x118, x89, x89); + let mut x121: u32 = 0; + let mut x122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x121, &mut x122, x120, x90, x90); + let mut x123: u32 = 0; + let mut x124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x123, &mut x124, 0x0, x91, 0x9ca90069); + let mut x125: u32 = 0; + let mut x126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x125, &mut x126, x124, x93, 0xb5879682); + let mut x127: u32 = 0; + let mut x128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x127, &mut x128, x126, x95, 0x85ddadd); + let mut x129: u32 = 0; + let mut x130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x129, &mut x130, x128, x97, 0x1db1d381); + let mut x131: u32 = 0; + let mut x132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x131, &mut x132, x130, x99, 0x7fac1047); + let mut x133: u32 = 0; + let mut x134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x133, &mut x134, x132, x101, 0x41866119); + let mut x135: u32 = 0; + let mut x136: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x135, &mut x136, x134, x103, 0x4ca92619); + let mut x137: u32 = 0; + let mut x138: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x137, &mut x138, x136, x105, 0x553e5c41); + let mut x139: u32 = 0; + let mut x140: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x139, &mut x140, x138, x107, 0x70330870); + let mut x141: u32 = 0; + let mut x142: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x141, &mut x142, x140, x109, 0xd6639cca); + let mut x143: u32 = 0; + let mut x144: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x143, &mut x144, x142, x111, 0xb3c9d20e); + let mut x145: u32 = 0; + let mut x146: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x145, &mut x146, x144, x113, 0xcb308db3); + let mut x147: u32 = 0; + let mut x148: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x147, &mut x148, x146, x115, 0x33c9fc07); + let mut x149: u32 = 0; + let mut x150: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x149, &mut x150, x148, x117, 0x3fd4e6ae); + let mut x151: u32 = 0; + let mut x152: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x151, &mut x152, x150, x119, 0xdbe9c48b); + let mut x153: u32 = 0; + let mut x154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x153, &mut x154, x152, x121, 0xaadd9db8); + let mut x155: u32 = 0; + let mut x156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x155, &mut x156, x154, (x122 as u32), (0x0 as u32)); + let x157: u32 = (arg4[15]); + let x158: u32 = (arg4[14]); + let x159: u32 = (arg4[13]); + let x160: u32 = (arg4[12]); + let x161: u32 = (arg4[11]); + let x162: u32 = (arg4[10]); + let x163: u32 = (arg4[9]); + let x164: u32 = (arg4[8]); + let x165: u32 = (arg4[7]); + let x166: u32 = (arg4[6]); + let x167: u32 = (arg4[5]); + let x168: u32 = (arg4[4]); + let x169: u32 = (arg4[3]); + let x170: u32 = (arg4[2]); + let x171: u32 = (arg4[1]); + let x172: u32 = (arg4[0]); + let mut x173: u32 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x173, &mut x174, 0x0, (0x0 as u32), x172); + let mut x175: u32 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x175, &mut x176, x174, (0x0 as u32), x171); + let mut x177: u32 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x177, &mut x178, x176, (0x0 as u32), x170); + let mut x179: u32 = 0; + let mut x180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x179, &mut x180, x178, (0x0 as u32), x169); + let mut x181: u32 = 0; + let mut x182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x181, &mut x182, x180, (0x0 as u32), x168); + let mut x183: u32 = 0; + let mut x184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x183, &mut x184, x182, (0x0 as u32), x167); + let mut x185: u32 = 0; + let mut x186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x185, &mut x186, x184, (0x0 as u32), x166); + let mut x187: u32 = 0; + let mut x188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x187, &mut x188, x186, (0x0 as u32), x165); + let mut x189: u32 = 0; + let mut x190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x189, &mut x190, x188, (0x0 as u32), x164); + let mut x191: u32 = 0; + let mut x192: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x191, &mut x192, x190, (0x0 as u32), x163); + let mut x193: u32 = 0; + let mut x194: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x193, &mut x194, x192, (0x0 as u32), x162); + let mut x195: u32 = 0; + let mut x196: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x195, &mut x196, x194, (0x0 as u32), x161); + let mut x197: u32 = 0; + let mut x198: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x197, &mut x198, x196, (0x0 as u32), x160); + let mut x199: u32 = 0; + let mut x200: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x199, &mut x200, x198, (0x0 as u32), x159); + let mut x201: u32 = 0; + let mut x202: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x201, &mut x202, x200, (0x0 as u32), x158); + let mut x203: u32 = 0; + let mut x204: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x203, &mut x204, x202, (0x0 as u32), x157); + let mut x205: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x205, x204, (0x0 as u32), 0xffffffff); + let mut x206: u32 = 0; + let mut x207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x206, &mut x207, 0x0, x173, (x205 & 0x9ca90069)); + let mut x208: u32 = 0; + let mut x209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x208, &mut x209, x207, x175, (x205 & 0xb5879682)); + let mut x210: u32 = 0; + let mut x211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x210, &mut x211, x209, x177, (x205 & 0x85ddadd)); + let mut x212: u32 = 0; + let mut x213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x212, &mut x213, x211, x179, (x205 & 0x1db1d381)); + let mut x214: u32 = 0; + let mut x215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x214, &mut x215, x213, x181, (x205 & 0x7fac1047)); + let mut x216: u32 = 0; + let mut x217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x216, &mut x217, x215, x183, (x205 & 0x41866119)); + let mut x218: u32 = 0; + let mut x219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x218, &mut x219, x217, x185, (x205 & 0x4ca92619)); + let mut x220: u32 = 0; + let mut x221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x220, &mut x221, x219, x187, (x205 & 0x553e5c41)); + let mut x222: u32 = 0; + let mut x223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x222, &mut x223, x221, x189, (x205 & 0x70330870)); + let mut x224: u32 = 0; + let mut x225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x224, &mut x225, x223, x191, (x205 & 0xd6639cca)); + let mut x226: u32 = 0; + let mut x227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x226, &mut x227, x225, x193, (x205 & 0xb3c9d20e)); + let mut x228: u32 = 0; + let mut x229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x228, &mut x229, x227, x195, (x205 & 0xcb308db3)); + let mut x230: u32 = 0; + let mut x231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x230, &mut x231, x229, x197, (x205 & 0x33c9fc07)); + let mut x232: u32 = 0; + let mut x233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x232, &mut x233, x231, x199, (x205 & 0x3fd4e6ae)); + let mut x234: u32 = 0; + let mut x235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x234, &mut x235, x233, x201, (x205 & 0xdbe9c48b)); + let mut x236: u32 = 0; + let mut x237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x236, &mut x237, x235, x203, (x205 & 0xaadd9db8)); + let mut x238: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x238, x3, (arg5[0]), x206); + let mut x239: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x239, x3, (arg5[1]), x208); + let mut x240: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x240, x3, (arg5[2]), x210); + let mut x241: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x241, x3, (arg5[3]), x212); + let mut x242: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x242, x3, (arg5[4]), x214); + let mut x243: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x243, x3, (arg5[5]), x216); + let mut x244: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x244, x3, (arg5[6]), x218); + let mut x245: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x245, x3, (arg5[7]), x220); + let mut x246: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x246, x3, (arg5[8]), x222); + let mut x247: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x247, x3, (arg5[9]), x224); + let mut x248: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x248, x3, (arg5[10]), x226); + let mut x249: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x249, x3, (arg5[11]), x228); + let mut x250: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x250, x3, (arg5[12]), x230); + let mut x251: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x251, x3, (arg5[13]), x232); + let mut x252: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x252, x3, (arg5[14]), x234); + let mut x253: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x253, x3, (arg5[15]), x236); + let x254: fiat_bp512_scalar_u1 = ((x58 & (0x1 as u32)) as fiat_bp512_scalar_u1); + let mut x255: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x255, x254, (0x0 as u32), x7); + let mut x256: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x256, x254, (0x0 as u32), x8); + let mut x257: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x257, x254, (0x0 as u32), x9); + let mut x258: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x258, x254, (0x0 as u32), x10); + let mut x259: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x259, x254, (0x0 as u32), x11); + let mut x260: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x260, x254, (0x0 as u32), x12); + let mut x261: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x261, x254, (0x0 as u32), x13); + let mut x262: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x262, x254, (0x0 as u32), x14); + let mut x263: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x263, x254, (0x0 as u32), x15); + let mut x264: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x264, x254, (0x0 as u32), x16); + let mut x265: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x265, x254, (0x0 as u32), x17); + let mut x266: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x266, x254, (0x0 as u32), x18); + let mut x267: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x267, x254, (0x0 as u32), x19); + let mut x268: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x268, x254, (0x0 as u32), x20); + let mut x269: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x269, x254, (0x0 as u32), x21); + let mut x270: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x270, x254, (0x0 as u32), x22); + let mut x271: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x271, x254, (0x0 as u32), x23); + let mut x272: u32 = 0; + let mut x273: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x272, &mut x273, 0x0, x58, x255); + let mut x274: u32 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x274, &mut x275, x273, x59, x256); + let mut x276: u32 = 0; + let mut x277: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x276, &mut x277, x275, x60, x257); + let mut x278: u32 = 0; + let mut x279: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x278, &mut x279, x277, x61, x258); + let mut x280: u32 = 0; + let mut x281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x280, &mut x281, x279, x62, x259); + let mut x282: u32 = 0; + let mut x283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x282, &mut x283, x281, x63, x260); + let mut x284: u32 = 0; + let mut x285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x284, &mut x285, x283, x64, x261); + let mut x286: u32 = 0; + let mut x287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x286, &mut x287, x285, x65, x262); + let mut x288: u32 = 0; + let mut x289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x288, &mut x289, x287, x66, x263); + let mut x290: u32 = 0; + let mut x291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x290, &mut x291, x289, x67, x264); + let mut x292: u32 = 0; + let mut x293: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x292, &mut x293, x291, x68, x265); + let mut x294: u32 = 0; + let mut x295: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x294, &mut x295, x293, x69, x266); + let mut x296: u32 = 0; + let mut x297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x296, &mut x297, x295, x70, x267); + let mut x298: u32 = 0; + let mut x299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x298, &mut x299, x297, x71, x268); + let mut x300: u32 = 0; + let mut x301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x300, &mut x301, x299, x72, x269); + let mut x302: u32 = 0; + let mut x303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x302, &mut x303, x301, x73, x270); + let mut x304: u32 = 0; + let mut x305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x304, &mut x305, x303, x74, x271); + let mut x306: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x306, x254, (0x0 as u32), x75); + let mut x307: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x307, x254, (0x0 as u32), x76); + let mut x308: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x308, x254, (0x0 as u32), x77); + let mut x309: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x309, x254, (0x0 as u32), x78); + let mut x310: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x310, x254, (0x0 as u32), x79); + let mut x311: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x311, x254, (0x0 as u32), x80); + let mut x312: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x312, x254, (0x0 as u32), x81); + let mut x313: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x313, x254, (0x0 as u32), x82); + let mut x314: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x314, x254, (0x0 as u32), x83); + let mut x315: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x315, x254, (0x0 as u32), x84); + let mut x316: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x316, x254, (0x0 as u32), x85); + let mut x317: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x317, x254, (0x0 as u32), x86); + let mut x318: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x318, x254, (0x0 as u32), x87); + let mut x319: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x319, x254, (0x0 as u32), x88); + let mut x320: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x320, x254, (0x0 as u32), x89); + let mut x321: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x321, x254, (0x0 as u32), x90); + let mut x322: u32 = 0; + let mut x323: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x322, &mut x323, 0x0, x238, x306); + let mut x324: u32 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x324, &mut x325, x323, x239, x307); + let mut x326: u32 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x326, &mut x327, x325, x240, x308); + let mut x328: u32 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x328, &mut x329, x327, x241, x309); + let mut x330: u32 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x330, &mut x331, x329, x242, x310); + let mut x332: u32 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x332, &mut x333, x331, x243, x311); + let mut x334: u32 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x334, &mut x335, x333, x244, x312); + let mut x336: u32 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x336, &mut x337, x335, x245, x313); + let mut x338: u32 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x338, &mut x339, x337, x246, x314); + let mut x340: u32 = 0; + let mut x341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x340, &mut x341, x339, x247, x315); + let mut x342: u32 = 0; + let mut x343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x342, &mut x343, x341, x248, x316); + let mut x344: u32 = 0; + let mut x345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x344, &mut x345, x343, x249, x317); + let mut x346: u32 = 0; + let mut x347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x346, &mut x347, x345, x250, x318); + let mut x348: u32 = 0; + let mut x349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x348, &mut x349, x347, x251, x319); + let mut x350: u32 = 0; + let mut x351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x350, &mut x351, x349, x252, x320); + let mut x352: u32 = 0; + let mut x353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x352, &mut x353, x351, x253, x321); + let mut x354: u32 = 0; + let mut x355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x354, &mut x355, 0x0, x322, 0x9ca90069); + let mut x356: u32 = 0; + let mut x357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x356, &mut x357, x355, x324, 0xb5879682); + let mut x358: u32 = 0; + let mut x359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x358, &mut x359, x357, x326, 0x85ddadd); + let mut x360: u32 = 0; + let mut x361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x360, &mut x361, x359, x328, 0x1db1d381); + let mut x362: u32 = 0; + let mut x363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x362, &mut x363, x361, x330, 0x7fac1047); + let mut x364: u32 = 0; + let mut x365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x364, &mut x365, x363, x332, 0x41866119); + let mut x366: u32 = 0; + let mut x367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x366, &mut x367, x365, x334, 0x4ca92619); + let mut x368: u32 = 0; + let mut x369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x368, &mut x369, x367, x336, 0x553e5c41); + let mut x370: u32 = 0; + let mut x371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x370, &mut x371, x369, x338, 0x70330870); + let mut x372: u32 = 0; + let mut x373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x372, &mut x373, x371, x340, 0xd6639cca); + let mut x374: u32 = 0; + let mut x375: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x374, &mut x375, x373, x342, 0xb3c9d20e); + let mut x376: u32 = 0; + let mut x377: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x376, &mut x377, x375, x344, 0xcb308db3); + let mut x378: u32 = 0; + let mut x379: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x378, &mut x379, x377, x346, 0x33c9fc07); + let mut x380: u32 = 0; + let mut x381: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x380, &mut x381, x379, x348, 0x3fd4e6ae); + let mut x382: u32 = 0; + let mut x383: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x382, &mut x383, x381, x350, 0xdbe9c48b); + let mut x384: u32 = 0; + let mut x385: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x384, &mut x385, x383, x352, 0xaadd9db8); + let mut x386: u32 = 0; + let mut x387: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u32(&mut x386, &mut x387, x385, (x353 as u32), (0x0 as u32)); + let mut x388: u32 = 0; + let mut x389: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u32(&mut x388, &mut x389, 0x0, x6, (0x1 as u32)); + let x390: u32 = ((x272 >> 1) | ((x274 << 31) & 0xffffffff)); + let x391: u32 = ((x274 >> 1) | ((x276 << 31) & 0xffffffff)); + let x392: u32 = ((x276 >> 1) | ((x278 << 31) & 0xffffffff)); + let x393: u32 = ((x278 >> 1) | ((x280 << 31) & 0xffffffff)); + let x394: u32 = ((x280 >> 1) | ((x282 << 31) & 0xffffffff)); + let x395: u32 = ((x282 >> 1) | ((x284 << 31) & 0xffffffff)); + let x396: u32 = ((x284 >> 1) | ((x286 << 31) & 0xffffffff)); + let x397: u32 = ((x286 >> 1) | ((x288 << 31) & 0xffffffff)); + let x398: u32 = ((x288 >> 1) | ((x290 << 31) & 0xffffffff)); + let x399: u32 = ((x290 >> 1) | ((x292 << 31) & 0xffffffff)); + let x400: u32 = ((x292 >> 1) | ((x294 << 31) & 0xffffffff)); + let x401: u32 = ((x294 >> 1) | ((x296 << 31) & 0xffffffff)); + let x402: u32 = ((x296 >> 1) | ((x298 << 31) & 0xffffffff)); + let x403: u32 = ((x298 >> 1) | ((x300 << 31) & 0xffffffff)); + let x404: u32 = ((x300 >> 1) | ((x302 << 31) & 0xffffffff)); + let x405: u32 = ((x302 >> 1) | ((x304 << 31) & 0xffffffff)); + let x406: u32 = ((x304 & 0x80000000) | (x304 >> 1)); + let mut x407: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x407, x156, x123, x91); + let mut x408: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x408, x156, x125, x93); + let mut x409: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x409, x156, x127, x95); + let mut x410: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x410, x156, x129, x97); + let mut x411: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x411, x156, x131, x99); + let mut x412: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x412, x156, x133, x101); + let mut x413: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x413, x156, x135, x103); + let mut x414: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x414, x156, x137, x105); + let mut x415: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x415, x156, x139, x107); + let mut x416: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x416, x156, x141, x109); + let mut x417: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x417, x156, x143, x111); + let mut x418: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x418, x156, x145, x113); + let mut x419: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x419, x156, x147, x115); + let mut x420: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x420, x156, x149, x117); + let mut x421: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x421, x156, x151, x119); + let mut x422: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x422, x156, x153, x121); + let mut x423: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x423, x387, x354, x322); + let mut x424: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x424, x387, x356, x324); + let mut x425: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x425, x387, x358, x326); + let mut x426: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x426, x387, x360, x328); + let mut x427: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x427, x387, x362, x330); + let mut x428: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x428, x387, x364, x332); + let mut x429: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x429, x387, x366, x334); + let mut x430: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x430, x387, x368, x336); + let mut x431: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x431, x387, x370, x338); + let mut x432: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x432, x387, x372, x340); + let mut x433: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x433, x387, x374, x342); + let mut x434: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x434, x387, x376, x344); + let mut x435: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x435, x387, x378, x346); + let mut x436: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x436, x387, x380, x348); + let mut x437: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x437, x387, x382, x350); + let mut x438: u32 = 0; + fiat_bp512_scalar_cmovznz_u32(&mut x438, x387, x384, x352); + *out1 = x388; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out2[9] = x16; + out2[10] = x17; + out2[11] = x18; + out2[12] = x19; + out2[13] = x20; + out2[14] = x21; + out2[15] = x22; + out2[16] = x23; + out3[0] = x390; + out3[1] = x391; + out3[2] = x392; + out3[3] = x393; + out3[4] = x394; + out3[5] = x395; + out3[6] = x396; + out3[7] = x397; + out3[8] = x398; + out3[9] = x399; + out3[10] = x400; + out3[11] = x401; + out3[12] = x402; + out3[13] = x403; + out3[14] = x404; + out3[15] = x405; + out3[16] = x406; + out4[0] = x407; + out4[1] = x408; + out4[2] = x409; + out4[3] = x410; + out4[4] = x411; + out4[5] = x412; + out4[6] = x413; + out4[7] = x414; + out4[8] = x415; + out4[9] = x416; + out4[10] = x417; + out4[11] = x418; + out4[12] = x419; + out4[13] = x420; + out4[14] = x421; + out4[15] = x422; + out5[0] = x423; + out5[1] = x424; + out5[2] = x425; + out5[3] = x426; + out5[4] = x427; + out5[5] = x428; + out5[6] = x429; + out5[7] = x430; + out5[8] = x431; + out5[9] = x432; + out5[10] = x433; + out5[11] = x434; + out5[12] = x435; + out5[13] = x436; + out5[14] = x437; + out5[15] = x438; +} + +/// The function fiat_bp512_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[inline] +pub fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u32; 16]) { + out1[0] = 0x2c366d57; + out1[1] = 0x4277e35f; + out1[2] = 0xb0e8321e; + out1[3] = 0x82388037; + out1[4] = 0x89f5b0c3; + out1[5] = 0x730f5cd6; + out1[6] = 0xd8c2ab0c; + out1[7] = 0xa4e60b8a; + out1[8] = 0x1615df0e; + out1[9] = 0x528b92e6; + out1[10] = 0x255b13d9; + out1[11] = 0x182049df; + out1[12] = 0xb8efb40e; + out1[13] = 0x46934422; + out1[14] = 0x847fd30b; + out1[15] = 0x1a016275; +} diff --git a/bp512/src/arithmetic/scalar/bp512_scalar_64.rs b/bp512/src/arithmetic/scalar/bp512_scalar_64.rs new file mode 100644 index 000000000..082c03b5c --- /dev/null +++ b/bp512/src/arithmetic/scalar/bp512_scalar_64.rs @@ -0,0 +1,5929 @@ +//! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512_scalar 64 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp +//! curve description: bp512_scalar +//! machine_wordsize = 64 (from "64") +//! requested operations: mul, square, add, sub, opp, from_montgomery, to_montgomery, nonzero, selectznz, to_bytes, from_bytes, one, msat, divstep, divstep_precomp +//! m = 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 (from "0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069") +//! +//! NOTE: In addition to the bounds specified above each function, all +//! functions synthesized for this Montgomery arithmetic require the +//! input to be strictly less than the prime modulus (m), and also +//! require the input to be in the unique saturated representation. +//! All functions also ensure that these two properties are true of +//! return values. +//! +//! Computed values: +//! eval z = z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) +//! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) +//! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) in +//! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 + +#![allow(unused_parens)] +#![allow(non_camel_case_types)] + +/** fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_scalar_u1 = u8; +/** fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. */ +pub type fiat_bp512_scalar_i1 = i8; +/** fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_scalar_u2 = u8; +/** fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. */ +pub type fiat_bp512_scalar_i2 = i8; + +/** The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_scalar_montgomery_domain_field_element(pub [u64; 8]); + +impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_scalar_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/** The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ +/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ +#[derive(Clone, Copy)] +pub struct fiat_bp512_scalar_non_montgomery_domain_field_element(pub [u64; 8]); + +impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_element { + type Output = u64; + #[inline] + fn index(&self, index: usize) -> &Self::Output { + &self.0[index] + } +} + +impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_field_element { + #[inline] + fn index_mut(&mut self, index: usize) -> &mut Self::Output { + &mut self.0[index] + } +} + +/// The function fiat_bp512_scalar_addcarryx_u64 is an addition with carry. +/// +/// Postconditions: +/// out1 = (arg1 + arg2 + arg3) mod 2^64 +/// out2 = ⌊(arg1 + arg2 + arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_scalar_addcarryx_u64( + out1: &mut u64, + out2: &mut fiat_bp512_scalar_u1, + arg1: fiat_bp512_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: u128 = (((arg1 as u128) + (arg2 as u128)) + (arg3 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: fiat_bp512_scalar_u1 = ((x1 >> 64) as fiat_bp512_scalar_u1); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_scalar_subborrowx_u64 is a subtraction with borrow. +/// +/// Postconditions: +/// out1 = (-arg1 + arg2 + -arg3) mod 2^64 +/// out2 = -⌊(-arg1 + arg2 + -arg3) / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0x1] +#[inline] +pub fn fiat_bp512_scalar_subborrowx_u64( + out1: &mut u64, + out2: &mut fiat_bp512_scalar_u1, + arg1: fiat_bp512_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: i128 = (((arg2 as i128) - (arg1 as i128)) - (arg3 as i128)); + let x2: fiat_bp512_scalar_i1 = ((x1 >> 64) as fiat_bp512_scalar_i1); + let x3: u64 = ((x1 & (0xffffffffffffffff as i128)) as u64); + *out1 = x3; + *out2 = + (((0x0 as fiat_bp512_scalar_i2) - (x2 as fiat_bp512_scalar_i2)) as fiat_bp512_scalar_u1); +} + +/// The function fiat_bp512_scalar_mulx_u64 is a multiplication, returning the full double-width result. +/// +/// Postconditions: +/// out1 = (arg1 * arg2) mod 2^64 +/// out2 = ⌊arg1 * arg2 / 2^64⌋ +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_scalar_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { + let x1: u128 = ((arg1 as u128) * (arg2 as u128)); + let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); + let x3: u64 = ((x1 >> 64) as u64); + *out1 = x2; + *out2 = x3; +} + +/// The function fiat_bp512_scalar_cmovznz_u64 is a single-word conditional move. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [0x0 ~> 0xffffffffffffffff] +/// arg3: [0x0 ~> 0xffffffffffffffff] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_scalar_cmovznz_u64( + out1: &mut u64, + arg1: fiat_bp512_scalar_u1, + arg2: u64, + arg3: u64, +) { + let x1: fiat_bp512_scalar_u1 = (!(!arg1)); + let x2: u64 = ((((((0x0 as fiat_bp512_scalar_i2) - (x1 as fiat_bp512_scalar_i2)) + as fiat_bp512_scalar_i1) as i128) + & (0xffffffffffffffff as i128)) as u64); + let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); + *out1 = x3; +} + +/// The function fiat_bp512_scalar_mul multiplies two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_mul( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x9, &mut x10, x8, (arg2[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x11, &mut x12, x8, (arg2[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x13, &mut x14, x8, (arg2[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x15, &mut x16, x8, (arg2[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x17, &mut x18, x8, (arg2[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x19, &mut x20, x8, (arg2[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x21, &mut x22, x8, (arg2[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x23, &mut x24, x8, (arg2[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x40, &mut x41, x23, 0xad49541f0f1b7027); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330870); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x50, &mut x51, x40, 0x553e5c414ca92619); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x52, &mut x53, x40, 0x418661197fac1047); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x54, &mut x55, x40, 0x1db1d381085ddadd); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x56, &mut x57, x40, 0xb58796829ca90069); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x91, &mut x92, x1, (arg2[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x93, &mut x94, x1, (arg2[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x95, &mut x96, x1, (arg2[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x97, &mut x98, x1, (arg2[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x99, &mut x100, x1, (arg2[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x101, &mut x102, x1, (arg2[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x103, &mut x104, x1, (arg2[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x105, &mut x106, x1, (arg2[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x140, &mut x141, x122, 0xad49541f0f1b7027); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330870); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x150, &mut x151, x140, 0x553e5c414ca92619); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x152, &mut x153, x140, 0x418661197fac1047); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x154, &mut x155, x140, 0x1db1d381085ddadd); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x156, &mut x157, x140, 0xb58796829ca90069); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x192, &mut x193, x2, (arg2[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x194, &mut x195, x2, (arg2[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x196, &mut x197, x2, (arg2[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x198, &mut x199, x2, (arg2[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x200, &mut x201, x2, (arg2[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x202, &mut x203, x2, (arg2[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x204, &mut x205, x2, (arg2[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x206, &mut x207, x2, (arg2[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x241, &mut x242, x223, 0xad49541f0f1b7027); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330870); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x251, &mut x252, x241, 0x553e5c414ca92619); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x253, &mut x254, x241, 0x418661197fac1047); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x255, &mut x256, x241, 0x1db1d381085ddadd); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x257, &mut x258, x241, 0xb58796829ca90069); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x293, &mut x294, x3, (arg2[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x295, &mut x296, x3, (arg2[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x297, &mut x298, x3, (arg2[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x299, &mut x300, x3, (arg2[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x301, &mut x302, x3, (arg2[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x303, &mut x304, x3, (arg2[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x305, &mut x306, x3, (arg2[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x307, &mut x308, x3, (arg2[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x342, &mut x343, x324, 0xad49541f0f1b7027); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330870); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x352, &mut x353, x342, 0x553e5c414ca92619); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x354, &mut x355, x342, 0x418661197fac1047); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x356, &mut x357, x342, 0x1db1d381085ddadd); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x358, &mut x359, x342, 0xb58796829ca90069); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x394, &mut x395, x4, (arg2[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x396, &mut x397, x4, (arg2[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x398, &mut x399, x4, (arg2[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x400, &mut x401, x4, (arg2[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x402, &mut x403, x4, (arg2[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x404, &mut x405, x4, (arg2[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x406, &mut x407, x4, (arg2[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x408, &mut x409, x4, (arg2[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x443, &mut x444, x425, 0xad49541f0f1b7027); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330870); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x453, &mut x454, x443, 0x553e5c414ca92619); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x455, &mut x456, x443, 0x418661197fac1047); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x457, &mut x458, x443, 0x1db1d381085ddadd); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x459, &mut x460, x443, 0xb58796829ca90069); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x495, &mut x496, x5, (arg2[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x497, &mut x498, x5, (arg2[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x499, &mut x500, x5, (arg2[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x501, &mut x502, x5, (arg2[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x503, &mut x504, x5, (arg2[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x505, &mut x506, x5, (arg2[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x507, &mut x508, x5, (arg2[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x509, &mut x510, x5, (arg2[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x544, &mut x545, x526, 0xad49541f0f1b7027); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330870); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x554, &mut x555, x544, 0x553e5c414ca92619); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x556, &mut x557, x544, 0x418661197fac1047); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x558, &mut x559, x544, 0x1db1d381085ddadd); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x560, &mut x561, x544, 0xb58796829ca90069); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x596, &mut x597, x6, (arg2[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x598, &mut x599, x6, (arg2[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x600, &mut x601, x6, (arg2[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x602, &mut x603, x6, (arg2[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x604, &mut x605, x6, (arg2[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x606, &mut x607, x6, (arg2[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x608, &mut x609, x6, (arg2[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x610, &mut x611, x6, (arg2[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x645, &mut x646, x627, 0xad49541f0f1b7027); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330870); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x655, &mut x656, x645, 0x553e5c414ca92619); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x657, &mut x658, x645, 0x418661197fac1047); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x659, &mut x660, x645, 0x1db1d381085ddadd); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x661, &mut x662, x645, 0xb58796829ca90069); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x697, &mut x698, x7, (arg2[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x699, &mut x700, x7, (arg2[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x701, &mut x702, x7, (arg2[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x703, &mut x704, x7, (arg2[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x705, &mut x706, x7, (arg2[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x707, &mut x708, x7, (arg2[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x709, &mut x710, x7, (arg2[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x711, &mut x712, x7, (arg2[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x746, &mut x747, x728, 0xad49541f0f1b7027); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330870); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x756, &mut x757, x746, 0x553e5c414ca92619); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x758, &mut x759, x746, 0x418661197fac1047); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x760, &mut x761, x746, 0x1db1d381085ddadd); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x762, &mut x763, x746, 0xb58796829ca90069); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0xb58796829ca90069); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x1db1d381085ddadd); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0x418661197fac1047); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x553e5c414ca92619); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330870); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; +} + +/// The function fiat_bp512_scalar_square squares a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_square( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x9, &mut x10, x8, (arg1[7])); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x11, &mut x12, x8, (arg1[6])); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x13, &mut x14, x8, (arg1[5])); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x15, &mut x16, x8, (arg1[4])); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x17, &mut x18, x8, (arg1[3])); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x19, &mut x20, x8, (arg1[2])); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x21, &mut x22, x8, (arg1[1])); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x23, &mut x24, x8, (arg1[0])); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let x39: u64 = ((x38 as u64) + x10); + let mut x40: u64 = 0; + let mut x41: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x40, &mut x41, x23, 0xad49541f0f1b7027); + let mut x42: u64 = 0; + let mut x43: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x42, &mut x43, x40, 0xaadd9db8dbe9c48b); + let mut x44: u64 = 0; + let mut x45: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x44, &mut x45, x40, 0x3fd4e6ae33c9fc07); + let mut x46: u64 = 0; + let mut x47: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x46, &mut x47, x40, 0xcb308db3b3c9d20e); + let mut x48: u64 = 0; + let mut x49: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x48, &mut x49, x40, 0xd6639cca70330870); + let mut x50: u64 = 0; + let mut x51: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x50, &mut x51, x40, 0x553e5c414ca92619); + let mut x52: u64 = 0; + let mut x53: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x52, &mut x53, x40, 0x418661197fac1047); + let mut x54: u64 = 0; + let mut x55: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x54, &mut x55, x40, 0x1db1d381085ddadd); + let mut x56: u64 = 0; + let mut x57: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x56, &mut x57, x40, 0xb58796829ca90069); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x58, &mut x59, 0x0, x57, x54); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x60, &mut x61, x59, x55, x52); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x62, &mut x63, x61, x53, x50); + let mut x64: u64 = 0; + let mut x65: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x64, &mut x65, x63, x51, x48); + let mut x66: u64 = 0; + let mut x67: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x66, &mut x67, x65, x49, x46); + let mut x68: u64 = 0; + let mut x69: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x68, &mut x69, x67, x47, x44); + let mut x70: u64 = 0; + let mut x71: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x70, &mut x71, x69, x45, x42); + let x72: u64 = ((x71 as u64) + x43); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x73, &mut x74, 0x0, x23, x56); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x75, &mut x76, x74, x25, x58); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x77, &mut x78, x76, x27, x60); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x79, &mut x80, x78, x29, x62); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x81, &mut x82, x80, x31, x64); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x33, x66); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x35, x68); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x87, &mut x88, x86, x37, x70); + let mut x89: u64 = 0; + let mut x90: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x89, &mut x90, x88, x39, x72); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x91, &mut x92, x1, (arg1[7])); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x93, &mut x94, x1, (arg1[6])); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x95, &mut x96, x1, (arg1[5])); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x97, &mut x98, x1, (arg1[4])); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x99, &mut x100, x1, (arg1[3])); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x101, &mut x102, x1, (arg1[2])); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x103, &mut x104, x1, (arg1[1])); + let mut x105: u64 = 0; + let mut x106: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x105, &mut x106, x1, (arg1[0])); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x107, &mut x108, 0x0, x106, x103); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x109, &mut x110, x108, x104, x101); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x111, &mut x112, x110, x102, x99); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x113, &mut x114, x112, x100, x97); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x115, &mut x116, x114, x98, x95); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x117, &mut x118, x116, x96, x93); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x119, &mut x120, x118, x94, x91); + let x121: u64 = ((x120 as u64) + x92); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x122, &mut x123, 0x0, x75, x105); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x77, x107); + let mut x126: u64 = 0; + let mut x127: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x126, &mut x127, x125, x79, x109); + let mut x128: u64 = 0; + let mut x129: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x128, &mut x129, x127, x81, x111); + let mut x130: u64 = 0; + let mut x131: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x130, &mut x131, x129, x83, x113); + let mut x132: u64 = 0; + let mut x133: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x132, &mut x133, x131, x85, x115); + let mut x134: u64 = 0; + let mut x135: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x134, &mut x135, x133, x87, x117); + let mut x136: u64 = 0; + let mut x137: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x136, &mut x137, x135, x89, x119); + let mut x138: u64 = 0; + let mut x139: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x138, &mut x139, x137, (x90 as u64), x121); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x140, &mut x141, x122, 0xad49541f0f1b7027); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x142, &mut x143, x140, 0xaadd9db8dbe9c48b); + let mut x144: u64 = 0; + let mut x145: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x144, &mut x145, x140, 0x3fd4e6ae33c9fc07); + let mut x146: u64 = 0; + let mut x147: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x146, &mut x147, x140, 0xcb308db3b3c9d20e); + let mut x148: u64 = 0; + let mut x149: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x148, &mut x149, x140, 0xd6639cca70330870); + let mut x150: u64 = 0; + let mut x151: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x150, &mut x151, x140, 0x553e5c414ca92619); + let mut x152: u64 = 0; + let mut x153: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x152, &mut x153, x140, 0x418661197fac1047); + let mut x154: u64 = 0; + let mut x155: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x154, &mut x155, x140, 0x1db1d381085ddadd); + let mut x156: u64 = 0; + let mut x157: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x156, &mut x157, x140, 0xb58796829ca90069); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x157, x154); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x155, x152); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x153, x150); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x164, &mut x165, x163, x151, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x149, x146); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x168, &mut x169, x167, x147, x144); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x170, &mut x171, x169, x145, x142); + let x172: u64 = ((x171 as u64) + x143); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x173, &mut x174, 0x0, x122, x156); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x175, &mut x176, x174, x124, x158); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x177, &mut x178, x176, x126, x160); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x179, &mut x180, x178, x128, x162); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x181, &mut x182, x180, x130, x164); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x183, &mut x184, x182, x132, x166); + let mut x185: u64 = 0; + let mut x186: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x185, &mut x186, x184, x134, x168); + let mut x187: u64 = 0; + let mut x188: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x187, &mut x188, x186, x136, x170); + let mut x189: u64 = 0; + let mut x190: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x189, &mut x190, x188, x138, x172); + let x191: u64 = ((x190 as u64) + (x139 as u64)); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x192, &mut x193, x2, (arg1[7])); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x194, &mut x195, x2, (arg1[6])); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x196, &mut x197, x2, (arg1[5])); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x198, &mut x199, x2, (arg1[4])); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x200, &mut x201, x2, (arg1[3])); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x202, &mut x203, x2, (arg1[2])); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x204, &mut x205, x2, (arg1[1])); + let mut x206: u64 = 0; + let mut x207: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x206, &mut x207, x2, (arg1[0])); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x208, &mut x209, 0x0, x207, x204); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x210, &mut x211, x209, x205, x202); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x203, x200); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x201, x198); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x199, x196); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x197, x194); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x220, &mut x221, x219, x195, x192); + let x222: u64 = ((x221 as u64) + x193); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x223, &mut x224, 0x0, x175, x206); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x225, &mut x226, x224, x177, x208); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x227, &mut x228, x226, x179, x210); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x229, &mut x230, x228, x181, x212); + let mut x231: u64 = 0; + let mut x232: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x231, &mut x232, x230, x183, x214); + let mut x233: u64 = 0; + let mut x234: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x233, &mut x234, x232, x185, x216); + let mut x235: u64 = 0; + let mut x236: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x235, &mut x236, x234, x187, x218); + let mut x237: u64 = 0; + let mut x238: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x237, &mut x238, x236, x189, x220); + let mut x239: u64 = 0; + let mut x240: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x239, &mut x240, x238, x191, x222); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x241, &mut x242, x223, 0xad49541f0f1b7027); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x243, &mut x244, x241, 0xaadd9db8dbe9c48b); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x245, &mut x246, x241, 0x3fd4e6ae33c9fc07); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x247, &mut x248, x241, 0xcb308db3b3c9d20e); + let mut x249: u64 = 0; + let mut x250: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x249, &mut x250, x241, 0xd6639cca70330870); + let mut x251: u64 = 0; + let mut x252: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x251, &mut x252, x241, 0x553e5c414ca92619); + let mut x253: u64 = 0; + let mut x254: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x253, &mut x254, x241, 0x418661197fac1047); + let mut x255: u64 = 0; + let mut x256: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x255, &mut x256, x241, 0x1db1d381085ddadd); + let mut x257: u64 = 0; + let mut x258: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x257, &mut x258, x241, 0xb58796829ca90069); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x259, &mut x260, 0x0, x258, x255); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x261, &mut x262, x260, x256, x253); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x263, &mut x264, x262, x254, x251); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x265, &mut x266, x264, x252, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x267, &mut x268, x266, x250, x247); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x269, &mut x270, x268, x248, x245); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x271, &mut x272, x270, x246, x243); + let x273: u64 = ((x272 as u64) + x244); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x274, &mut x275, 0x0, x223, x257); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x276, &mut x277, x275, x225, x259); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x278, &mut x279, x277, x227, x261); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x280, &mut x281, x279, x229, x263); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x282, &mut x283, x281, x231, x265); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x284, &mut x285, x283, x233, x267); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x286, &mut x287, x285, x235, x269); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x288, &mut x289, x287, x237, x271); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x290, &mut x291, x289, x239, x273); + let x292: u64 = ((x291 as u64) + (x240 as u64)); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x293, &mut x294, x3, (arg1[7])); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x295, &mut x296, x3, (arg1[6])); + let mut x297: u64 = 0; + let mut x298: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x297, &mut x298, x3, (arg1[5])); + let mut x299: u64 = 0; + let mut x300: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x299, &mut x300, x3, (arg1[4])); + let mut x301: u64 = 0; + let mut x302: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x301, &mut x302, x3, (arg1[3])); + let mut x303: u64 = 0; + let mut x304: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x303, &mut x304, x3, (arg1[2])); + let mut x305: u64 = 0; + let mut x306: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x305, &mut x306, x3, (arg1[1])); + let mut x307: u64 = 0; + let mut x308: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x307, &mut x308, x3, (arg1[0])); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x309, &mut x310, 0x0, x308, x305); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x311, &mut x312, x310, x306, x303); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x313, &mut x314, x312, x304, x301); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x315, &mut x316, x314, x302, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x317, &mut x318, x316, x300, x297); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x319, &mut x320, x318, x298, x295); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x321, &mut x322, x320, x296, x293); + let x323: u64 = ((x322 as u64) + x294); + let mut x324: u64 = 0; + let mut x325: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x324, &mut x325, 0x0, x276, x307); + let mut x326: u64 = 0; + let mut x327: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x326, &mut x327, x325, x278, x309); + let mut x328: u64 = 0; + let mut x329: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x328, &mut x329, x327, x280, x311); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x330, &mut x331, x329, x282, x313); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x332, &mut x333, x331, x284, x315); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x334, &mut x335, x333, x286, x317); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x336, &mut x337, x335, x288, x319); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x338, &mut x339, x337, x290, x321); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x340, &mut x341, x339, x292, x323); + let mut x342: u64 = 0; + let mut x343: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x342, &mut x343, x324, 0xad49541f0f1b7027); + let mut x344: u64 = 0; + let mut x345: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x344, &mut x345, x342, 0xaadd9db8dbe9c48b); + let mut x346: u64 = 0; + let mut x347: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x346, &mut x347, x342, 0x3fd4e6ae33c9fc07); + let mut x348: u64 = 0; + let mut x349: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x348, &mut x349, x342, 0xcb308db3b3c9d20e); + let mut x350: u64 = 0; + let mut x351: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x350, &mut x351, x342, 0xd6639cca70330870); + let mut x352: u64 = 0; + let mut x353: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x352, &mut x353, x342, 0x553e5c414ca92619); + let mut x354: u64 = 0; + let mut x355: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x354, &mut x355, x342, 0x418661197fac1047); + let mut x356: u64 = 0; + let mut x357: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x356, &mut x357, x342, 0x1db1d381085ddadd); + let mut x358: u64 = 0; + let mut x359: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x358, &mut x359, x342, 0xb58796829ca90069); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x360, &mut x361, 0x0, x359, x356); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x362, &mut x363, x361, x357, x354); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x364, &mut x365, x363, x355, x352); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x366, &mut x367, x365, x353, x350); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x368, &mut x369, x367, x351, x348); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x370, &mut x371, x369, x349, x346); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x372, &mut x373, x371, x347, x344); + let x374: u64 = ((x373 as u64) + x345); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x375, &mut x376, 0x0, x324, x358); + let mut x377: u64 = 0; + let mut x378: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x377, &mut x378, x376, x326, x360); + let mut x379: u64 = 0; + let mut x380: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x379, &mut x380, x378, x328, x362); + let mut x381: u64 = 0; + let mut x382: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x381, &mut x382, x380, x330, x364); + let mut x383: u64 = 0; + let mut x384: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x383, &mut x384, x382, x332, x366); + let mut x385: u64 = 0; + let mut x386: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x385, &mut x386, x384, x334, x368); + let mut x387: u64 = 0; + let mut x388: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x387, &mut x388, x386, x336, x370); + let mut x389: u64 = 0; + let mut x390: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x389, &mut x390, x388, x338, x372); + let mut x391: u64 = 0; + let mut x392: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x391, &mut x392, x390, x340, x374); + let x393: u64 = ((x392 as u64) + (x341 as u64)); + let mut x394: u64 = 0; + let mut x395: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x394, &mut x395, x4, (arg1[7])); + let mut x396: u64 = 0; + let mut x397: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x396, &mut x397, x4, (arg1[6])); + let mut x398: u64 = 0; + let mut x399: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x398, &mut x399, x4, (arg1[5])); + let mut x400: u64 = 0; + let mut x401: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x400, &mut x401, x4, (arg1[4])); + let mut x402: u64 = 0; + let mut x403: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x402, &mut x403, x4, (arg1[3])); + let mut x404: u64 = 0; + let mut x405: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x404, &mut x405, x4, (arg1[2])); + let mut x406: u64 = 0; + let mut x407: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x406, &mut x407, x4, (arg1[1])); + let mut x408: u64 = 0; + let mut x409: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x408, &mut x409, x4, (arg1[0])); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x410, &mut x411, 0x0, x409, x406); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x412, &mut x413, x411, x407, x404); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x414, &mut x415, x413, x405, x402); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x416, &mut x417, x415, x403, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x418, &mut x419, x417, x401, x398); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x420, &mut x421, x419, x399, x396); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x422, &mut x423, x421, x397, x394); + let x424: u64 = ((x423 as u64) + x395); + let mut x425: u64 = 0; + let mut x426: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x425, &mut x426, 0x0, x377, x408); + let mut x427: u64 = 0; + let mut x428: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x427, &mut x428, x426, x379, x410); + let mut x429: u64 = 0; + let mut x430: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x429, &mut x430, x428, x381, x412); + let mut x431: u64 = 0; + let mut x432: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x431, &mut x432, x430, x383, x414); + let mut x433: u64 = 0; + let mut x434: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x433, &mut x434, x432, x385, x416); + let mut x435: u64 = 0; + let mut x436: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x435, &mut x436, x434, x387, x418); + let mut x437: u64 = 0; + let mut x438: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x437, &mut x438, x436, x389, x420); + let mut x439: u64 = 0; + let mut x440: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x439, &mut x440, x438, x391, x422); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x441, &mut x442, x440, x393, x424); + let mut x443: u64 = 0; + let mut x444: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x443, &mut x444, x425, 0xad49541f0f1b7027); + let mut x445: u64 = 0; + let mut x446: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x445, &mut x446, x443, 0xaadd9db8dbe9c48b); + let mut x447: u64 = 0; + let mut x448: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x447, &mut x448, x443, 0x3fd4e6ae33c9fc07); + let mut x449: u64 = 0; + let mut x450: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x449, &mut x450, x443, 0xcb308db3b3c9d20e); + let mut x451: u64 = 0; + let mut x452: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x451, &mut x452, x443, 0xd6639cca70330870); + let mut x453: u64 = 0; + let mut x454: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x453, &mut x454, x443, 0x553e5c414ca92619); + let mut x455: u64 = 0; + let mut x456: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x455, &mut x456, x443, 0x418661197fac1047); + let mut x457: u64 = 0; + let mut x458: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x457, &mut x458, x443, 0x1db1d381085ddadd); + let mut x459: u64 = 0; + let mut x460: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x459, &mut x460, x443, 0xb58796829ca90069); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x461, &mut x462, 0x0, x460, x457); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x463, &mut x464, x462, x458, x455); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x465, &mut x466, x464, x456, x453); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x467, &mut x468, x466, x454, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x469, &mut x470, x468, x452, x449); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x471, &mut x472, x470, x450, x447); + let mut x473: u64 = 0; + let mut x474: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x473, &mut x474, x472, x448, x445); + let x475: u64 = ((x474 as u64) + x446); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x476, &mut x477, 0x0, x425, x459); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x478, &mut x479, x477, x427, x461); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x480, &mut x481, x479, x429, x463); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x482, &mut x483, x481, x431, x465); + let mut x484: u64 = 0; + let mut x485: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x484, &mut x485, x483, x433, x467); + let mut x486: u64 = 0; + let mut x487: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x486, &mut x487, x485, x435, x469); + let mut x488: u64 = 0; + let mut x489: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x488, &mut x489, x487, x437, x471); + let mut x490: u64 = 0; + let mut x491: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x490, &mut x491, x489, x439, x473); + let mut x492: u64 = 0; + let mut x493: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x492, &mut x493, x491, x441, x475); + let x494: u64 = ((x493 as u64) + (x442 as u64)); + let mut x495: u64 = 0; + let mut x496: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x495, &mut x496, x5, (arg1[7])); + let mut x497: u64 = 0; + let mut x498: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x497, &mut x498, x5, (arg1[6])); + let mut x499: u64 = 0; + let mut x500: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x499, &mut x500, x5, (arg1[5])); + let mut x501: u64 = 0; + let mut x502: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x501, &mut x502, x5, (arg1[4])); + let mut x503: u64 = 0; + let mut x504: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x503, &mut x504, x5, (arg1[3])); + let mut x505: u64 = 0; + let mut x506: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x505, &mut x506, x5, (arg1[2])); + let mut x507: u64 = 0; + let mut x508: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x507, &mut x508, x5, (arg1[1])); + let mut x509: u64 = 0; + let mut x510: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x509, &mut x510, x5, (arg1[0])); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x511, &mut x512, 0x0, x510, x507); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x513, &mut x514, x512, x508, x505); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x515, &mut x516, x514, x506, x503); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x517, &mut x518, x516, x504, x501); + let mut x519: u64 = 0; + let mut x520: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x519, &mut x520, x518, x502, x499); + let mut x521: u64 = 0; + let mut x522: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x521, &mut x522, x520, x500, x497); + let mut x523: u64 = 0; + let mut x524: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x523, &mut x524, x522, x498, x495); + let x525: u64 = ((x524 as u64) + x496); + let mut x526: u64 = 0; + let mut x527: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x526, &mut x527, 0x0, x478, x509); + let mut x528: u64 = 0; + let mut x529: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x528, &mut x529, x527, x480, x511); + let mut x530: u64 = 0; + let mut x531: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x530, &mut x531, x529, x482, x513); + let mut x532: u64 = 0; + let mut x533: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x532, &mut x533, x531, x484, x515); + let mut x534: u64 = 0; + let mut x535: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x534, &mut x535, x533, x486, x517); + let mut x536: u64 = 0; + let mut x537: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x536, &mut x537, x535, x488, x519); + let mut x538: u64 = 0; + let mut x539: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x538, &mut x539, x537, x490, x521); + let mut x540: u64 = 0; + let mut x541: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x540, &mut x541, x539, x492, x523); + let mut x542: u64 = 0; + let mut x543: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x542, &mut x543, x541, x494, x525); + let mut x544: u64 = 0; + let mut x545: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x544, &mut x545, x526, 0xad49541f0f1b7027); + let mut x546: u64 = 0; + let mut x547: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x546, &mut x547, x544, 0xaadd9db8dbe9c48b); + let mut x548: u64 = 0; + let mut x549: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x548, &mut x549, x544, 0x3fd4e6ae33c9fc07); + let mut x550: u64 = 0; + let mut x551: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x550, &mut x551, x544, 0xcb308db3b3c9d20e); + let mut x552: u64 = 0; + let mut x553: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x552, &mut x553, x544, 0xd6639cca70330870); + let mut x554: u64 = 0; + let mut x555: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x554, &mut x555, x544, 0x553e5c414ca92619); + let mut x556: u64 = 0; + let mut x557: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x556, &mut x557, x544, 0x418661197fac1047); + let mut x558: u64 = 0; + let mut x559: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x558, &mut x559, x544, 0x1db1d381085ddadd); + let mut x560: u64 = 0; + let mut x561: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x560, &mut x561, x544, 0xb58796829ca90069); + let mut x562: u64 = 0; + let mut x563: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x562, &mut x563, 0x0, x561, x558); + let mut x564: u64 = 0; + let mut x565: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x564, &mut x565, x563, x559, x556); + let mut x566: u64 = 0; + let mut x567: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x566, &mut x567, x565, x557, x554); + let mut x568: u64 = 0; + let mut x569: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x568, &mut x569, x567, x555, x552); + let mut x570: u64 = 0; + let mut x571: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x570, &mut x571, x569, x553, x550); + let mut x572: u64 = 0; + let mut x573: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x572, &mut x573, x571, x551, x548); + let mut x574: u64 = 0; + let mut x575: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x574, &mut x575, x573, x549, x546); + let x576: u64 = ((x575 as u64) + x547); + let mut x577: u64 = 0; + let mut x578: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x577, &mut x578, 0x0, x526, x560); + let mut x579: u64 = 0; + let mut x580: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x579, &mut x580, x578, x528, x562); + let mut x581: u64 = 0; + let mut x582: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x581, &mut x582, x580, x530, x564); + let mut x583: u64 = 0; + let mut x584: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x583, &mut x584, x582, x532, x566); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x585, &mut x586, x584, x534, x568); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x587, &mut x588, x586, x536, x570); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x589, &mut x590, x588, x538, x572); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x591, &mut x592, x590, x540, x574); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x593, &mut x594, x592, x542, x576); + let x595: u64 = ((x594 as u64) + (x543 as u64)); + let mut x596: u64 = 0; + let mut x597: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x596, &mut x597, x6, (arg1[7])); + let mut x598: u64 = 0; + let mut x599: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x598, &mut x599, x6, (arg1[6])); + let mut x600: u64 = 0; + let mut x601: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x600, &mut x601, x6, (arg1[5])); + let mut x602: u64 = 0; + let mut x603: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x602, &mut x603, x6, (arg1[4])); + let mut x604: u64 = 0; + let mut x605: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x604, &mut x605, x6, (arg1[3])); + let mut x606: u64 = 0; + let mut x607: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x606, &mut x607, x6, (arg1[2])); + let mut x608: u64 = 0; + let mut x609: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x608, &mut x609, x6, (arg1[1])); + let mut x610: u64 = 0; + let mut x611: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x610, &mut x611, x6, (arg1[0])); + let mut x612: u64 = 0; + let mut x613: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x612, &mut x613, 0x0, x611, x608); + let mut x614: u64 = 0; + let mut x615: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x614, &mut x615, x613, x609, x606); + let mut x616: u64 = 0; + let mut x617: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x616, &mut x617, x615, x607, x604); + let mut x618: u64 = 0; + let mut x619: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x618, &mut x619, x617, x605, x602); + let mut x620: u64 = 0; + let mut x621: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x620, &mut x621, x619, x603, x600); + let mut x622: u64 = 0; + let mut x623: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x622, &mut x623, x621, x601, x598); + let mut x624: u64 = 0; + let mut x625: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x624, &mut x625, x623, x599, x596); + let x626: u64 = ((x625 as u64) + x597); + let mut x627: u64 = 0; + let mut x628: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x627, &mut x628, 0x0, x579, x610); + let mut x629: u64 = 0; + let mut x630: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x629, &mut x630, x628, x581, x612); + let mut x631: u64 = 0; + let mut x632: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x631, &mut x632, x630, x583, x614); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x633, &mut x634, x632, x585, x616); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x635, &mut x636, x634, x587, x618); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x637, &mut x638, x636, x589, x620); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x639, &mut x640, x638, x591, x622); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x641, &mut x642, x640, x593, x624); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x643, &mut x644, x642, x595, x626); + let mut x645: u64 = 0; + let mut x646: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x645, &mut x646, x627, 0xad49541f0f1b7027); + let mut x647: u64 = 0; + let mut x648: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x647, &mut x648, x645, 0xaadd9db8dbe9c48b); + let mut x649: u64 = 0; + let mut x650: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x649, &mut x650, x645, 0x3fd4e6ae33c9fc07); + let mut x651: u64 = 0; + let mut x652: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x651, &mut x652, x645, 0xcb308db3b3c9d20e); + let mut x653: u64 = 0; + let mut x654: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x653, &mut x654, x645, 0xd6639cca70330870); + let mut x655: u64 = 0; + let mut x656: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x655, &mut x656, x645, 0x553e5c414ca92619); + let mut x657: u64 = 0; + let mut x658: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x657, &mut x658, x645, 0x418661197fac1047); + let mut x659: u64 = 0; + let mut x660: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x659, &mut x660, x645, 0x1db1d381085ddadd); + let mut x661: u64 = 0; + let mut x662: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x661, &mut x662, x645, 0xb58796829ca90069); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x663, &mut x664, 0x0, x662, x659); + let mut x665: u64 = 0; + let mut x666: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x665, &mut x666, x664, x660, x657); + let mut x667: u64 = 0; + let mut x668: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x667, &mut x668, x666, x658, x655); + let mut x669: u64 = 0; + let mut x670: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x669, &mut x670, x668, x656, x653); + let mut x671: u64 = 0; + let mut x672: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x671, &mut x672, x670, x654, x651); + let mut x673: u64 = 0; + let mut x674: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x673, &mut x674, x672, x652, x649); + let mut x675: u64 = 0; + let mut x676: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x675, &mut x676, x674, x650, x647); + let x677: u64 = ((x676 as u64) + x648); + let mut x678: u64 = 0; + let mut x679: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x678, &mut x679, 0x0, x627, x661); + let mut x680: u64 = 0; + let mut x681: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x680, &mut x681, x679, x629, x663); + let mut x682: u64 = 0; + let mut x683: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x682, &mut x683, x681, x631, x665); + let mut x684: u64 = 0; + let mut x685: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x684, &mut x685, x683, x633, x667); + let mut x686: u64 = 0; + let mut x687: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x686, &mut x687, x685, x635, x669); + let mut x688: u64 = 0; + let mut x689: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x688, &mut x689, x687, x637, x671); + let mut x690: u64 = 0; + let mut x691: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x690, &mut x691, x689, x639, x673); + let mut x692: u64 = 0; + let mut x693: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x692, &mut x693, x691, x641, x675); + let mut x694: u64 = 0; + let mut x695: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x694, &mut x695, x693, x643, x677); + let x696: u64 = ((x695 as u64) + (x644 as u64)); + let mut x697: u64 = 0; + let mut x698: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x697, &mut x698, x7, (arg1[7])); + let mut x699: u64 = 0; + let mut x700: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x699, &mut x700, x7, (arg1[6])); + let mut x701: u64 = 0; + let mut x702: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x701, &mut x702, x7, (arg1[5])); + let mut x703: u64 = 0; + let mut x704: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x703, &mut x704, x7, (arg1[4])); + let mut x705: u64 = 0; + let mut x706: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x705, &mut x706, x7, (arg1[3])); + let mut x707: u64 = 0; + let mut x708: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x707, &mut x708, x7, (arg1[2])); + let mut x709: u64 = 0; + let mut x710: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x709, &mut x710, x7, (arg1[1])); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x711, &mut x712, x7, (arg1[0])); + let mut x713: u64 = 0; + let mut x714: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x713, &mut x714, 0x0, x712, x709); + let mut x715: u64 = 0; + let mut x716: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x715, &mut x716, x714, x710, x707); + let mut x717: u64 = 0; + let mut x718: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x717, &mut x718, x716, x708, x705); + let mut x719: u64 = 0; + let mut x720: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x719, &mut x720, x718, x706, x703); + let mut x721: u64 = 0; + let mut x722: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x721, &mut x722, x720, x704, x701); + let mut x723: u64 = 0; + let mut x724: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x723, &mut x724, x722, x702, x699); + let mut x725: u64 = 0; + let mut x726: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x725, &mut x726, x724, x700, x697); + let x727: u64 = ((x726 as u64) + x698); + let mut x728: u64 = 0; + let mut x729: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x728, &mut x729, 0x0, x680, x711); + let mut x730: u64 = 0; + let mut x731: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x730, &mut x731, x729, x682, x713); + let mut x732: u64 = 0; + let mut x733: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x732, &mut x733, x731, x684, x715); + let mut x734: u64 = 0; + let mut x735: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x734, &mut x735, x733, x686, x717); + let mut x736: u64 = 0; + let mut x737: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x736, &mut x737, x735, x688, x719); + let mut x738: u64 = 0; + let mut x739: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x738, &mut x739, x737, x690, x721); + let mut x740: u64 = 0; + let mut x741: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x740, &mut x741, x739, x692, x723); + let mut x742: u64 = 0; + let mut x743: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x742, &mut x743, x741, x694, x725); + let mut x744: u64 = 0; + let mut x745: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x744, &mut x745, x743, x696, x727); + let mut x746: u64 = 0; + let mut x747: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x746, &mut x747, x728, 0xad49541f0f1b7027); + let mut x748: u64 = 0; + let mut x749: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x748, &mut x749, x746, 0xaadd9db8dbe9c48b); + let mut x750: u64 = 0; + let mut x751: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x750, &mut x751, x746, 0x3fd4e6ae33c9fc07); + let mut x752: u64 = 0; + let mut x753: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x752, &mut x753, x746, 0xcb308db3b3c9d20e); + let mut x754: u64 = 0; + let mut x755: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x754, &mut x755, x746, 0xd6639cca70330870); + let mut x756: u64 = 0; + let mut x757: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x756, &mut x757, x746, 0x553e5c414ca92619); + let mut x758: u64 = 0; + let mut x759: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x758, &mut x759, x746, 0x418661197fac1047); + let mut x760: u64 = 0; + let mut x761: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x760, &mut x761, x746, 0x1db1d381085ddadd); + let mut x762: u64 = 0; + let mut x763: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x762, &mut x763, x746, 0xb58796829ca90069); + let mut x764: u64 = 0; + let mut x765: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x764, &mut x765, 0x0, x763, x760); + let mut x766: u64 = 0; + let mut x767: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x766, &mut x767, x765, x761, x758); + let mut x768: u64 = 0; + let mut x769: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x768, &mut x769, x767, x759, x756); + let mut x770: u64 = 0; + let mut x771: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x770, &mut x771, x769, x757, x754); + let mut x772: u64 = 0; + let mut x773: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x772, &mut x773, x771, x755, x752); + let mut x774: u64 = 0; + let mut x775: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x774, &mut x775, x773, x753, x750); + let mut x776: u64 = 0; + let mut x777: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x776, &mut x777, x775, x751, x748); + let x778: u64 = ((x777 as u64) + x749); + let mut x779: u64 = 0; + let mut x780: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x779, &mut x780, 0x0, x728, x762); + let mut x781: u64 = 0; + let mut x782: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x781, &mut x782, x780, x730, x764); + let mut x783: u64 = 0; + let mut x784: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x783, &mut x784, x782, x732, x766); + let mut x785: u64 = 0; + let mut x786: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x785, &mut x786, x784, x734, x768); + let mut x787: u64 = 0; + let mut x788: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x787, &mut x788, x786, x736, x770); + let mut x789: u64 = 0; + let mut x790: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x789, &mut x790, x788, x738, x772); + let mut x791: u64 = 0; + let mut x792: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x791, &mut x792, x790, x740, x774); + let mut x793: u64 = 0; + let mut x794: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x793, &mut x794, x792, x742, x776); + let mut x795: u64 = 0; + let mut x796: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x795, &mut x796, x794, x744, x778); + let x797: u64 = ((x796 as u64) + (x745 as u64)); + let mut x798: u64 = 0; + let mut x799: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x798, &mut x799, 0x0, x781, 0xb58796829ca90069); + let mut x800: u64 = 0; + let mut x801: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x800, &mut x801, x799, x783, 0x1db1d381085ddadd); + let mut x802: u64 = 0; + let mut x803: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x802, &mut x803, x801, x785, 0x418661197fac1047); + let mut x804: u64 = 0; + let mut x805: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x804, &mut x805, x803, x787, 0x553e5c414ca92619); + let mut x806: u64 = 0; + let mut x807: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x806, &mut x807, x805, x789, 0xd6639cca70330870); + let mut x808: u64 = 0; + let mut x809: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x808, &mut x809, x807, x791, 0xcb308db3b3c9d20e); + let mut x810: u64 = 0; + let mut x811: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x810, &mut x811, x809, x793, 0x3fd4e6ae33c9fc07); + let mut x812: u64 = 0; + let mut x813: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x812, &mut x813, x811, x795, 0xaadd9db8dbe9c48b); + let mut x814: u64 = 0; + let mut x815: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x814, &mut x815, x813, x797, (0x0 as u64)); + let mut x816: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x816, x815, x798, x781); + let mut x817: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x817, x815, x800, x783); + let mut x818: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x818, x815, x802, x785); + let mut x819: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x819, x815, x804, x787); + let mut x820: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x820, x815, x806, x789); + let mut x821: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x821, x815, x808, x791); + let mut x822: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x822, x815, x810, x793); + let mut x823: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x823, x815, x812, x795); + out1[0] = x816; + out1[1] = x817; + out1[2] = x818; + out1[3] = x819; + out1[4] = x820; + out1[5] = x821; + out1[6] = x822; + out1[7] = x823; +} + +/// The function fiat_bp512_scalar_add adds two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_add( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + let mut x18: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x17, &mut x18, 0x0, x1, 0xb58796829ca90069); + let mut x19: u64 = 0; + let mut x20: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x19, &mut x20, x18, x3, 0x1db1d381085ddadd); + let mut x21: u64 = 0; + let mut x22: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x21, &mut x22, x20, x5, 0x418661197fac1047); + let mut x23: u64 = 0; + let mut x24: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x23, &mut x24, x22, x7, 0x553e5c414ca92619); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x25, &mut x26, x24, x9, 0xd6639cca70330870); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x27, &mut x28, x26, x11, 0xcb308db3b3c9d20e); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x29, &mut x30, x28, x13, 0x3fd4e6ae33c9fc07); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x31, &mut x32, x30, x15, 0xaadd9db8dbe9c48b); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x33, &mut x34, x32, (x16 as u64), (0x0 as u64)); + let mut x35: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x35, x34, x17, x1); + let mut x36: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x36, x34, x19, x3); + let mut x37: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x37, x34, x21, x5); + let mut x38: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x38, x34, x23, x7); + let mut x39: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x39, x34, x25, x9); + let mut x40: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x40, x34, x27, x11); + let mut x41: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x41, x34, x29, x13); + let mut x42: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x42, x34, x31, x15); + out1[0] = x35; + out1[1] = x36; + out1[2] = x37; + out1[3] = x38; + out1[4] = x39; + out1[5] = x40; + out1[6] = x41; + out1[7] = x42; +} + +/// The function fiat_bp512_scalar_sub subtracts two field elements in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// 0 ≤ eval arg2 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_sub( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, + arg2: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x3, &mut x4, x2, (arg1[1]), (arg2[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x5, &mut x6, x4, (arg1[2]), (arg2[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x7, &mut x8, x6, (arg1[3]), (arg2[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x9, &mut x10, x8, (arg1[4]), (arg2[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x11, &mut x12, x10, (arg1[5]), (arg2[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x13, &mut x14, x12, (arg1[6]), (arg2[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x15, &mut x16, x14, (arg1[7]), (arg2[7])); + let mut x17: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0xb58796829ca90069)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x1db1d381085ddadd)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0x418661197fac1047)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x553e5c414ca92619)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330870)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; +} + +/// The function fiat_bp512_scalar_opp negates a field element in the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_opp( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); + let mut x3: u64 = 0; + let mut x4: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x3, &mut x4, x2, (0x0 as u64), (arg1[1])); + let mut x5: u64 = 0; + let mut x6: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x5, &mut x6, x4, (0x0 as u64), (arg1[2])); + let mut x7: u64 = 0; + let mut x8: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x7, &mut x8, x6, (0x0 as u64), (arg1[3])); + let mut x9: u64 = 0; + let mut x10: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x9, &mut x10, x8, (0x0 as u64), (arg1[4])); + let mut x11: u64 = 0; + let mut x12: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x11, &mut x12, x10, (0x0 as u64), (arg1[5])); + let mut x13: u64 = 0; + let mut x14: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x13, &mut x14, x12, (0x0 as u64), (arg1[6])); + let mut x15: u64 = 0; + let mut x16: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x15, &mut x16, x14, (0x0 as u64), (arg1[7])); + let mut x17: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x17, x16, (0x0 as u64), 0xffffffffffffffff); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x18, &mut x19, 0x0, x1, (x17 & 0xb58796829ca90069)); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x20, &mut x21, x19, x3, (x17 & 0x1db1d381085ddadd)); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x5, (x17 & 0x418661197fac1047)); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x7, (x17 & 0x553e5c414ca92619)); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x26, &mut x27, x25, x9, (x17 & 0xd6639cca70330870)); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x28, &mut x29, x27, x11, (x17 & 0xcb308db3b3c9d20e)); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x30, &mut x31, x29, x13, (x17 & 0x3fd4e6ae33c9fc07)); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x32, &mut x33, x31, x15, (x17 & 0xaadd9db8dbe9c48b)); + out1[0] = x18; + out1[1] = x20; + out1[2] = x22; + out1[3] = x24; + out1[4] = x26; + out1[5] = x28; + out1[6] = x30; + out1[7] = x32; +} + +/// The function fiat_bp512_scalar_from_montgomery translates a field element out of the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval out1 mod m = (eval arg1 * ((2^64)⁻¹ mod m)^8) mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_from_montgomery( + out1: &mut fiat_bp512_scalar_non_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[0]); + let mut x2: u64 = 0; + let mut x3: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x2, &mut x3, x1, 0xad49541f0f1b7027); + let mut x4: u64 = 0; + let mut x5: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x4, &mut x5, x2, 0xaadd9db8dbe9c48b); + let mut x6: u64 = 0; + let mut x7: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x6, &mut x7, x2, 0x3fd4e6ae33c9fc07); + let mut x8: u64 = 0; + let mut x9: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x8, &mut x9, x2, 0xcb308db3b3c9d20e); + let mut x10: u64 = 0; + let mut x11: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x10, &mut x11, x2, 0xd6639cca70330870); + let mut x12: u64 = 0; + let mut x13: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x12, &mut x13, x2, 0x553e5c414ca92619); + let mut x14: u64 = 0; + let mut x15: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x14, &mut x15, x2, 0x418661197fac1047); + let mut x16: u64 = 0; + let mut x17: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x16, &mut x17, x2, 0x1db1d381085ddadd); + let mut x18: u64 = 0; + let mut x19: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x18, &mut x19, x2, 0xb58796829ca90069); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x20, &mut x21, 0x0, x19, x16); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x22, &mut x23, x21, x17, x14); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x24, &mut x25, x23, x15, x12); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x26, &mut x27, x25, x13, x10); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x28, &mut x29, x27, x11, x8); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x30, &mut x31, x29, x9, x6); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x32, &mut x33, x31, x7, x4); + let mut x34: u64 = 0; + let mut x35: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x34, &mut x35, 0x0, x1, x18); + let mut x36: u64 = 0; + let mut x37: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x36, &mut x37, x35, (0x0 as u64), x20); + let mut x38: u64 = 0; + let mut x39: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x38, &mut x39, x37, (0x0 as u64), x22); + let mut x40: u64 = 0; + let mut x41: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x40, &mut x41, x39, (0x0 as u64), x24); + let mut x42: u64 = 0; + let mut x43: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x42, &mut x43, x41, (0x0 as u64), x26); + let mut x44: u64 = 0; + let mut x45: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x44, &mut x45, x43, (0x0 as u64), x28); + let mut x46: u64 = 0; + let mut x47: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x46, &mut x47, x45, (0x0 as u64), x30); + let mut x48: u64 = 0; + let mut x49: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x48, &mut x49, x47, (0x0 as u64), x32); + let mut x50: u64 = 0; + let mut x51: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x50, &mut x51, 0x0, x36, (arg1[1])); + let mut x52: u64 = 0; + let mut x53: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x52, &mut x53, x51, x38, (0x0 as u64)); + let mut x54: u64 = 0; + let mut x55: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x54, &mut x55, x53, x40, (0x0 as u64)); + let mut x56: u64 = 0; + let mut x57: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x56, &mut x57, x55, x42, (0x0 as u64)); + let mut x58: u64 = 0; + let mut x59: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x58, &mut x59, x57, x44, (0x0 as u64)); + let mut x60: u64 = 0; + let mut x61: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x60, &mut x61, x59, x46, (0x0 as u64)); + let mut x62: u64 = 0; + let mut x63: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x62, &mut x63, x61, x48, (0x0 as u64)); + let mut x64: u64 = 0; + let mut x65: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x64, &mut x65, x50, 0xad49541f0f1b7027); + let mut x66: u64 = 0; + let mut x67: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x66, &mut x67, x64, 0xaadd9db8dbe9c48b); + let mut x68: u64 = 0; + let mut x69: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x68, &mut x69, x64, 0x3fd4e6ae33c9fc07); + let mut x70: u64 = 0; + let mut x71: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x70, &mut x71, x64, 0xcb308db3b3c9d20e); + let mut x72: u64 = 0; + let mut x73: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x72, &mut x73, x64, 0xd6639cca70330870); + let mut x74: u64 = 0; + let mut x75: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x74, &mut x75, x64, 0x553e5c414ca92619); + let mut x76: u64 = 0; + let mut x77: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x76, &mut x77, x64, 0x418661197fac1047); + let mut x78: u64 = 0; + let mut x79: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x78, &mut x79, x64, 0x1db1d381085ddadd); + let mut x80: u64 = 0; + let mut x81: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x80, &mut x81, x64, 0xb58796829ca90069); + let mut x82: u64 = 0; + let mut x83: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x82, &mut x83, 0x0, x81, x78); + let mut x84: u64 = 0; + let mut x85: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x84, &mut x85, x83, x79, x76); + let mut x86: u64 = 0; + let mut x87: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x86, &mut x87, x85, x77, x74); + let mut x88: u64 = 0; + let mut x89: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x88, &mut x89, x87, x75, x72); + let mut x90: u64 = 0; + let mut x91: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x90, &mut x91, x89, x73, x70); + let mut x92: u64 = 0; + let mut x93: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x92, &mut x93, x91, x71, x68); + let mut x94: u64 = 0; + let mut x95: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x94, &mut x95, x93, x69, x66); + let mut x96: u64 = 0; + let mut x97: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x96, &mut x97, 0x0, x50, x80); + let mut x98: u64 = 0; + let mut x99: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x98, &mut x99, x97, x52, x82); + let mut x100: u64 = 0; + let mut x101: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x100, &mut x101, x99, x54, x84); + let mut x102: u64 = 0; + let mut x103: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x102, &mut x103, x101, x56, x86); + let mut x104: u64 = 0; + let mut x105: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x104, &mut x105, x103, x58, x88); + let mut x106: u64 = 0; + let mut x107: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x106, &mut x107, x105, x60, x90); + let mut x108: u64 = 0; + let mut x109: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x108, &mut x109, x107, x62, x92); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x110, + &mut x111, + x109, + ((x63 as u64) + ((x49 as u64) + ((x33 as u64) + x5))), + x94, + ); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x112, &mut x113, 0x0, x98, (arg1[2])); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x114, &mut x115, x113, x100, (0x0 as u64)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x116, &mut x117, x115, x102, (0x0 as u64)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x118, &mut x119, x117, x104, (0x0 as u64)); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x120, &mut x121, x119, x106, (0x0 as u64)); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x122, &mut x123, x121, x108, (0x0 as u64)); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x124, &mut x125, x123, x110, (0x0 as u64)); + let mut x126: u64 = 0; + let mut x127: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x126, &mut x127, x112, 0xad49541f0f1b7027); + let mut x128: u64 = 0; + let mut x129: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x128, &mut x129, x126, 0xaadd9db8dbe9c48b); + let mut x130: u64 = 0; + let mut x131: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x130, &mut x131, x126, 0x3fd4e6ae33c9fc07); + let mut x132: u64 = 0; + let mut x133: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x132, &mut x133, x126, 0xcb308db3b3c9d20e); + let mut x134: u64 = 0; + let mut x135: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x134, &mut x135, x126, 0xd6639cca70330870); + let mut x136: u64 = 0; + let mut x137: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x136, &mut x137, x126, 0x553e5c414ca92619); + let mut x138: u64 = 0; + let mut x139: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x138, &mut x139, x126, 0x418661197fac1047); + let mut x140: u64 = 0; + let mut x141: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x140, &mut x141, x126, 0x1db1d381085ddadd); + let mut x142: u64 = 0; + let mut x143: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x142, &mut x143, x126, 0xb58796829ca90069); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x144, &mut x145, 0x0, x143, x140); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x146, &mut x147, x145, x141, x138); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x148, &mut x149, x147, x139, x136); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x150, &mut x151, x149, x137, x134); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x152, &mut x153, x151, x135, x132); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x154, &mut x155, x153, x133, x130); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x156, &mut x157, x155, x131, x128); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x158, &mut x159, 0x0, x112, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x114, x144); + let mut x162: u64 = 0; + let mut x163: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x162, &mut x163, x161, x116, x146); + let mut x164: u64 = 0; + let mut x165: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x164, &mut x165, x163, x118, x148); + let mut x166: u64 = 0; + let mut x167: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x166, &mut x167, x165, x120, x150); + let mut x168: u64 = 0; + let mut x169: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x168, &mut x169, x167, x122, x152); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x170, &mut x171, x169, x124, x154); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x172, + &mut x173, + x171, + ((x125 as u64) + ((x111 as u64) + ((x95 as u64) + x67))), + x156, + ); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x174, &mut x175, 0x0, x160, (arg1[3])); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x176, &mut x177, x175, x162, (0x0 as u64)); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x178, &mut x179, x177, x164, (0x0 as u64)); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x180, &mut x181, x179, x166, (0x0 as u64)); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x182, &mut x183, x181, x168, (0x0 as u64)); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x184, &mut x185, x183, x170, (0x0 as u64)); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x186, &mut x187, x185, x172, (0x0 as u64)); + let mut x188: u64 = 0; + let mut x189: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x188, &mut x189, x174, 0xad49541f0f1b7027); + let mut x190: u64 = 0; + let mut x191: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x190, &mut x191, x188, 0xaadd9db8dbe9c48b); + let mut x192: u64 = 0; + let mut x193: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x192, &mut x193, x188, 0x3fd4e6ae33c9fc07); + let mut x194: u64 = 0; + let mut x195: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x194, &mut x195, x188, 0xcb308db3b3c9d20e); + let mut x196: u64 = 0; + let mut x197: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x196, &mut x197, x188, 0xd6639cca70330870); + let mut x198: u64 = 0; + let mut x199: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x198, &mut x199, x188, 0x553e5c414ca92619); + let mut x200: u64 = 0; + let mut x201: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x200, &mut x201, x188, 0x418661197fac1047); + let mut x202: u64 = 0; + let mut x203: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x202, &mut x203, x188, 0x1db1d381085ddadd); + let mut x204: u64 = 0; + let mut x205: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x204, &mut x205, x188, 0xb58796829ca90069); + let mut x206: u64 = 0; + let mut x207: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x206, &mut x207, 0x0, x205, x202); + let mut x208: u64 = 0; + let mut x209: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x208, &mut x209, x207, x203, x200); + let mut x210: u64 = 0; + let mut x211: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x210, &mut x211, x209, x201, x198); + let mut x212: u64 = 0; + let mut x213: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x212, &mut x213, x211, x199, x196); + let mut x214: u64 = 0; + let mut x215: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x214, &mut x215, x213, x197, x194); + let mut x216: u64 = 0; + let mut x217: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x216, &mut x217, x215, x195, x192); + let mut x218: u64 = 0; + let mut x219: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x218, &mut x219, x217, x193, x190); + let mut x220: u64 = 0; + let mut x221: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x220, &mut x221, 0x0, x174, x204); + let mut x222: u64 = 0; + let mut x223: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x222, &mut x223, x221, x176, x206); + let mut x224: u64 = 0; + let mut x225: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x224, &mut x225, x223, x178, x208); + let mut x226: u64 = 0; + let mut x227: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x226, &mut x227, x225, x180, x210); + let mut x228: u64 = 0; + let mut x229: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x228, &mut x229, x227, x182, x212); + let mut x230: u64 = 0; + let mut x231: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x230, &mut x231, x229, x184, x214); + let mut x232: u64 = 0; + let mut x233: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x232, &mut x233, x231, x186, x216); + let mut x234: u64 = 0; + let mut x235: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x234, + &mut x235, + x233, + ((x187 as u64) + ((x173 as u64) + ((x157 as u64) + x129))), + x218, + ); + let mut x236: u64 = 0; + let mut x237: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x236, &mut x237, 0x0, x222, (arg1[4])); + let mut x238: u64 = 0; + let mut x239: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x238, &mut x239, x237, x224, (0x0 as u64)); + let mut x240: u64 = 0; + let mut x241: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x240, &mut x241, x239, x226, (0x0 as u64)); + let mut x242: u64 = 0; + let mut x243: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x242, &mut x243, x241, x228, (0x0 as u64)); + let mut x244: u64 = 0; + let mut x245: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x244, &mut x245, x243, x230, (0x0 as u64)); + let mut x246: u64 = 0; + let mut x247: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x246, &mut x247, x245, x232, (0x0 as u64)); + let mut x248: u64 = 0; + let mut x249: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x248, &mut x249, x247, x234, (0x0 as u64)); + let mut x250: u64 = 0; + let mut x251: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x250, &mut x251, x236, 0xad49541f0f1b7027); + let mut x252: u64 = 0; + let mut x253: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x252, &mut x253, x250, 0xaadd9db8dbe9c48b); + let mut x254: u64 = 0; + let mut x255: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x254, &mut x255, x250, 0x3fd4e6ae33c9fc07); + let mut x256: u64 = 0; + let mut x257: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x256, &mut x257, x250, 0xcb308db3b3c9d20e); + let mut x258: u64 = 0; + let mut x259: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x258, &mut x259, x250, 0xd6639cca70330870); + let mut x260: u64 = 0; + let mut x261: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x260, &mut x261, x250, 0x553e5c414ca92619); + let mut x262: u64 = 0; + let mut x263: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x262, &mut x263, x250, 0x418661197fac1047); + let mut x264: u64 = 0; + let mut x265: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x264, &mut x265, x250, 0x1db1d381085ddadd); + let mut x266: u64 = 0; + let mut x267: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x266, &mut x267, x250, 0xb58796829ca90069); + let mut x268: u64 = 0; + let mut x269: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x268, &mut x269, 0x0, x267, x264); + let mut x270: u64 = 0; + let mut x271: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x270, &mut x271, x269, x265, x262); + let mut x272: u64 = 0; + let mut x273: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x272, &mut x273, x271, x263, x260); + let mut x274: u64 = 0; + let mut x275: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x274, &mut x275, x273, x261, x258); + let mut x276: u64 = 0; + let mut x277: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x276, &mut x277, x275, x259, x256); + let mut x278: u64 = 0; + let mut x279: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x278, &mut x279, x277, x257, x254); + let mut x280: u64 = 0; + let mut x281: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x280, &mut x281, x279, x255, x252); + let mut x282: u64 = 0; + let mut x283: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x282, &mut x283, 0x0, x236, x266); + let mut x284: u64 = 0; + let mut x285: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x284, &mut x285, x283, x238, x268); + let mut x286: u64 = 0; + let mut x287: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x286, &mut x287, x285, x240, x270); + let mut x288: u64 = 0; + let mut x289: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x288, &mut x289, x287, x242, x272); + let mut x290: u64 = 0; + let mut x291: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x290, &mut x291, x289, x244, x274); + let mut x292: u64 = 0; + let mut x293: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x292, &mut x293, x291, x246, x276); + let mut x294: u64 = 0; + let mut x295: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x294, &mut x295, x293, x248, x278); + let mut x296: u64 = 0; + let mut x297: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x296, + &mut x297, + x295, + ((x249 as u64) + ((x235 as u64) + ((x219 as u64) + x191))), + x280, + ); + let mut x298: u64 = 0; + let mut x299: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x298, &mut x299, 0x0, x284, (arg1[5])); + let mut x300: u64 = 0; + let mut x301: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x300, &mut x301, x299, x286, (0x0 as u64)); + let mut x302: u64 = 0; + let mut x303: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x302, &mut x303, x301, x288, (0x0 as u64)); + let mut x304: u64 = 0; + let mut x305: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x304, &mut x305, x303, x290, (0x0 as u64)); + let mut x306: u64 = 0; + let mut x307: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x306, &mut x307, x305, x292, (0x0 as u64)); + let mut x308: u64 = 0; + let mut x309: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x308, &mut x309, x307, x294, (0x0 as u64)); + let mut x310: u64 = 0; + let mut x311: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x310, &mut x311, x309, x296, (0x0 as u64)); + let mut x312: u64 = 0; + let mut x313: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x312, &mut x313, x298, 0xad49541f0f1b7027); + let mut x314: u64 = 0; + let mut x315: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x314, &mut x315, x312, 0xaadd9db8dbe9c48b); + let mut x316: u64 = 0; + let mut x317: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x316, &mut x317, x312, 0x3fd4e6ae33c9fc07); + let mut x318: u64 = 0; + let mut x319: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x318, &mut x319, x312, 0xcb308db3b3c9d20e); + let mut x320: u64 = 0; + let mut x321: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x320, &mut x321, x312, 0xd6639cca70330870); + let mut x322: u64 = 0; + let mut x323: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x322, &mut x323, x312, 0x553e5c414ca92619); + let mut x324: u64 = 0; + let mut x325: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x324, &mut x325, x312, 0x418661197fac1047); + let mut x326: u64 = 0; + let mut x327: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x326, &mut x327, x312, 0x1db1d381085ddadd); + let mut x328: u64 = 0; + let mut x329: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x328, &mut x329, x312, 0xb58796829ca90069); + let mut x330: u64 = 0; + let mut x331: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x330, &mut x331, 0x0, x329, x326); + let mut x332: u64 = 0; + let mut x333: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x332, &mut x333, x331, x327, x324); + let mut x334: u64 = 0; + let mut x335: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x334, &mut x335, x333, x325, x322); + let mut x336: u64 = 0; + let mut x337: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x336, &mut x337, x335, x323, x320); + let mut x338: u64 = 0; + let mut x339: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x338, &mut x339, x337, x321, x318); + let mut x340: u64 = 0; + let mut x341: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x340, &mut x341, x339, x319, x316); + let mut x342: u64 = 0; + let mut x343: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x342, &mut x343, x341, x317, x314); + let mut x344: u64 = 0; + let mut x345: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x344, &mut x345, 0x0, x298, x328); + let mut x346: u64 = 0; + let mut x347: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x346, &mut x347, x345, x300, x330); + let mut x348: u64 = 0; + let mut x349: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x348, &mut x349, x347, x302, x332); + let mut x350: u64 = 0; + let mut x351: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x350, &mut x351, x349, x304, x334); + let mut x352: u64 = 0; + let mut x353: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x352, &mut x353, x351, x306, x336); + let mut x354: u64 = 0; + let mut x355: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x354, &mut x355, x353, x308, x338); + let mut x356: u64 = 0; + let mut x357: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x356, &mut x357, x355, x310, x340); + let mut x358: u64 = 0; + let mut x359: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x358, + &mut x359, + x357, + ((x311 as u64) + ((x297 as u64) + ((x281 as u64) + x253))), + x342, + ); + let mut x360: u64 = 0; + let mut x361: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x360, &mut x361, 0x0, x346, (arg1[6])); + let mut x362: u64 = 0; + let mut x363: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x362, &mut x363, x361, x348, (0x0 as u64)); + let mut x364: u64 = 0; + let mut x365: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x364, &mut x365, x363, x350, (0x0 as u64)); + let mut x366: u64 = 0; + let mut x367: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x366, &mut x367, x365, x352, (0x0 as u64)); + let mut x368: u64 = 0; + let mut x369: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x368, &mut x369, x367, x354, (0x0 as u64)); + let mut x370: u64 = 0; + let mut x371: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x370, &mut x371, x369, x356, (0x0 as u64)); + let mut x372: u64 = 0; + let mut x373: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x372, &mut x373, x371, x358, (0x0 as u64)); + let mut x374: u64 = 0; + let mut x375: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x374, &mut x375, x360, 0xad49541f0f1b7027); + let mut x376: u64 = 0; + let mut x377: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x376, &mut x377, x374, 0xaadd9db8dbe9c48b); + let mut x378: u64 = 0; + let mut x379: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x378, &mut x379, x374, 0x3fd4e6ae33c9fc07); + let mut x380: u64 = 0; + let mut x381: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x380, &mut x381, x374, 0xcb308db3b3c9d20e); + let mut x382: u64 = 0; + let mut x383: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x382, &mut x383, x374, 0xd6639cca70330870); + let mut x384: u64 = 0; + let mut x385: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x384, &mut x385, x374, 0x553e5c414ca92619); + let mut x386: u64 = 0; + let mut x387: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x386, &mut x387, x374, 0x418661197fac1047); + let mut x388: u64 = 0; + let mut x389: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x388, &mut x389, x374, 0x1db1d381085ddadd); + let mut x390: u64 = 0; + let mut x391: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x390, &mut x391, x374, 0xb58796829ca90069); + let mut x392: u64 = 0; + let mut x393: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x392, &mut x393, 0x0, x391, x388); + let mut x394: u64 = 0; + let mut x395: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x394, &mut x395, x393, x389, x386); + let mut x396: u64 = 0; + let mut x397: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x396, &mut x397, x395, x387, x384); + let mut x398: u64 = 0; + let mut x399: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x398, &mut x399, x397, x385, x382); + let mut x400: u64 = 0; + let mut x401: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x400, &mut x401, x399, x383, x380); + let mut x402: u64 = 0; + let mut x403: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x402, &mut x403, x401, x381, x378); + let mut x404: u64 = 0; + let mut x405: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x404, &mut x405, x403, x379, x376); + let mut x406: u64 = 0; + let mut x407: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x406, &mut x407, 0x0, x360, x390); + let mut x408: u64 = 0; + let mut x409: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x408, &mut x409, x407, x362, x392); + let mut x410: u64 = 0; + let mut x411: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x410, &mut x411, x409, x364, x394); + let mut x412: u64 = 0; + let mut x413: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x412, &mut x413, x411, x366, x396); + let mut x414: u64 = 0; + let mut x415: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x414, &mut x415, x413, x368, x398); + let mut x416: u64 = 0; + let mut x417: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x416, &mut x417, x415, x370, x400); + let mut x418: u64 = 0; + let mut x419: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x418, &mut x419, x417, x372, x402); + let mut x420: u64 = 0; + let mut x421: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x420, + &mut x421, + x419, + ((x373 as u64) + ((x359 as u64) + ((x343 as u64) + x315))), + x404, + ); + let mut x422: u64 = 0; + let mut x423: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x422, &mut x423, 0x0, x408, (arg1[7])); + let mut x424: u64 = 0; + let mut x425: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x424, &mut x425, x423, x410, (0x0 as u64)); + let mut x426: u64 = 0; + let mut x427: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x426, &mut x427, x425, x412, (0x0 as u64)); + let mut x428: u64 = 0; + let mut x429: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x428, &mut x429, x427, x414, (0x0 as u64)); + let mut x430: u64 = 0; + let mut x431: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x430, &mut x431, x429, x416, (0x0 as u64)); + let mut x432: u64 = 0; + let mut x433: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x432, &mut x433, x431, x418, (0x0 as u64)); + let mut x434: u64 = 0; + let mut x435: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x434, &mut x435, x433, x420, (0x0 as u64)); + let mut x436: u64 = 0; + let mut x437: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x436, &mut x437, x422, 0xad49541f0f1b7027); + let mut x438: u64 = 0; + let mut x439: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x438, &mut x439, x436, 0xaadd9db8dbe9c48b); + let mut x440: u64 = 0; + let mut x441: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x440, &mut x441, x436, 0x3fd4e6ae33c9fc07); + let mut x442: u64 = 0; + let mut x443: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x442, &mut x443, x436, 0xcb308db3b3c9d20e); + let mut x444: u64 = 0; + let mut x445: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x444, &mut x445, x436, 0xd6639cca70330870); + let mut x446: u64 = 0; + let mut x447: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x446, &mut x447, x436, 0x553e5c414ca92619); + let mut x448: u64 = 0; + let mut x449: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x448, &mut x449, x436, 0x418661197fac1047); + let mut x450: u64 = 0; + let mut x451: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x450, &mut x451, x436, 0x1db1d381085ddadd); + let mut x452: u64 = 0; + let mut x453: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x452, &mut x453, x436, 0xb58796829ca90069); + let mut x454: u64 = 0; + let mut x455: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x454, &mut x455, 0x0, x453, x450); + let mut x456: u64 = 0; + let mut x457: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x456, &mut x457, x455, x451, x448); + let mut x458: u64 = 0; + let mut x459: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x458, &mut x459, x457, x449, x446); + let mut x460: u64 = 0; + let mut x461: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x460, &mut x461, x459, x447, x444); + let mut x462: u64 = 0; + let mut x463: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x462, &mut x463, x461, x445, x442); + let mut x464: u64 = 0; + let mut x465: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x464, &mut x465, x463, x443, x440); + let mut x466: u64 = 0; + let mut x467: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x466, &mut x467, x465, x441, x438); + let mut x468: u64 = 0; + let mut x469: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x468, &mut x469, 0x0, x422, x452); + let mut x470: u64 = 0; + let mut x471: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x470, &mut x471, x469, x424, x454); + let mut x472: u64 = 0; + let mut x473: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x472, &mut x473, x471, x426, x456); + let mut x474: u64 = 0; + let mut x475: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x474, &mut x475, x473, x428, x458); + let mut x476: u64 = 0; + let mut x477: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x476, &mut x477, x475, x430, x460); + let mut x478: u64 = 0; + let mut x479: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x478, &mut x479, x477, x432, x462); + let mut x480: u64 = 0; + let mut x481: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x480, &mut x481, x479, x434, x464); + let mut x482: u64 = 0; + let mut x483: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x482, + &mut x483, + x481, + ((x435 as u64) + ((x421 as u64) + ((x405 as u64) + x377))), + x466, + ); + let x484: u64 = ((x483 as u64) + ((x467 as u64) + x439)); + let mut x485: u64 = 0; + let mut x486: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x485, &mut x486, 0x0, x470, 0xb58796829ca90069); + let mut x487: u64 = 0; + let mut x488: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x487, &mut x488, x486, x472, 0x1db1d381085ddadd); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x489, &mut x490, x488, x474, 0x418661197fac1047); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x491, &mut x492, x490, x476, 0x553e5c414ca92619); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x493, &mut x494, x492, x478, 0xd6639cca70330870); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x495, &mut x496, x494, x480, 0xcb308db3b3c9d20e); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x497, &mut x498, x496, x482, 0x3fd4e6ae33c9fc07); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x499, &mut x500, x498, x484, 0xaadd9db8dbe9c48b); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x501, &mut x502, x500, (0x0 as u64), (0x0 as u64)); + let mut x503: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x503, x502, x485, x470); + let mut x504: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x504, x502, x487, x472); + let mut x505: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x505, x502, x489, x474); + let mut x506: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x506, x502, x491, x476); + let mut x507: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x507, x502, x493, x478); + let mut x508: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x508, x502, x495, x480); + let mut x509: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x509, x502, x497, x482); + let mut x510: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x510, x502, x499, x484); + out1[0] = x503; + out1[1] = x504; + out1[2] = x505; + out1[3] = x506; + out1[4] = x507; + out1[5] = x508; + out1[6] = x509; + out1[7] = x510; +} + +/// The function fiat_bp512_scalar_to_montgomery translates a field element into the Montgomery domain. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// eval (from_montgomery out1) mod m = eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_to_montgomery( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, + arg1: &fiat_bp512_scalar_non_montgomery_domain_field_element, +) { + let x1: u64 = (arg1[1]); + let x2: u64 = (arg1[2]); + let x3: u64 = (arg1[3]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[5]); + let x6: u64 = (arg1[6]); + let x7: u64 = (arg1[7]); + let x8: u64 = (arg1[0]); + let mut x9: u64 = 0; + let mut x10: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x9, &mut x10, x8, 0xa794586a718407b0); + let mut x11: u64 = 0; + let mut x12: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x11, &mut x12, x8, 0x95df1b4c194b2e56); + let mut x13: u64 = 0; + let mut x14: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x13, &mut x14, x8, 0x723c37a22f16bbdf); + let mut x15: u64 = 0; + let mut x16: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x15, &mut x16, x8, 0xd7f9cc263b790de3); + let mut x17: u64 = 0; + let mut x18: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x17, &mut x18, x8, 0xa6f230c72f0207e8); + let mut x19: u64 = 0; + let mut x20: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x19, &mut x20, x8, 0x3ec64bd033b7627f); + let mut x21: u64 = 0; + let mut x22: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x21, &mut x22, x8, 0x886b75895283ddd); + let mut x23: u64 = 0; + let mut x24: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x23, &mut x24, x8, 0xd2a3681ecda81671); + let mut x25: u64 = 0; + let mut x26: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x25, &mut x26, 0x0, x24, x21); + let mut x27: u64 = 0; + let mut x28: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x27, &mut x28, x26, x22, x19); + let mut x29: u64 = 0; + let mut x30: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x29, &mut x30, x28, x20, x17); + let mut x31: u64 = 0; + let mut x32: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x31, &mut x32, x30, x18, x15); + let mut x33: u64 = 0; + let mut x34: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x33, &mut x34, x32, x16, x13); + let mut x35: u64 = 0; + let mut x36: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x35, &mut x36, x34, x14, x11); + let mut x37: u64 = 0; + let mut x38: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x37, &mut x38, x36, x12, x9); + let mut x39: u64 = 0; + let mut x40: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x39, &mut x40, x23, 0xad49541f0f1b7027); + let mut x41: u64 = 0; + let mut x42: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x41, &mut x42, x39, 0xaadd9db8dbe9c48b); + let mut x43: u64 = 0; + let mut x44: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x43, &mut x44, x39, 0x3fd4e6ae33c9fc07); + let mut x45: u64 = 0; + let mut x46: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x45, &mut x46, x39, 0xcb308db3b3c9d20e); + let mut x47: u64 = 0; + let mut x48: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x47, &mut x48, x39, 0xd6639cca70330870); + let mut x49: u64 = 0; + let mut x50: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x49, &mut x50, x39, 0x553e5c414ca92619); + let mut x51: u64 = 0; + let mut x52: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x51, &mut x52, x39, 0x418661197fac1047); + let mut x53: u64 = 0; + let mut x54: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x53, &mut x54, x39, 0x1db1d381085ddadd); + let mut x55: u64 = 0; + let mut x56: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x55, &mut x56, x39, 0xb58796829ca90069); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x57, &mut x58, 0x0, x56, x53); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x59, &mut x60, x58, x54, x51); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x61, &mut x62, x60, x52, x49); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x63, &mut x64, x62, x50, x47); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x65, &mut x66, x64, x48, x45); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x67, &mut x68, x66, x46, x43); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x69, &mut x70, x68, x44, x41); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x71, &mut x72, 0x0, x23, x55); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x73, &mut x74, x72, x25, x57); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x75, &mut x76, x74, x27, x59); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x77, &mut x78, x76, x29, x61); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x79, &mut x80, x78, x31, x63); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x81, &mut x82, x80, x33, x65); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x83, &mut x84, x82, x35, x67); + let mut x85: u64 = 0; + let mut x86: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x85, &mut x86, x84, x37, x69); + let mut x87: u64 = 0; + let mut x88: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x87, + &mut x88, + x86, + ((x38 as u64) + x10), + ((x70 as u64) + x42), + ); + let mut x89: u64 = 0; + let mut x90: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x89, &mut x90, x1, 0xa794586a718407b0); + let mut x91: u64 = 0; + let mut x92: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x91, &mut x92, x1, 0x95df1b4c194b2e56); + let mut x93: u64 = 0; + let mut x94: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x93, &mut x94, x1, 0x723c37a22f16bbdf); + let mut x95: u64 = 0; + let mut x96: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x95, &mut x96, x1, 0xd7f9cc263b790de3); + let mut x97: u64 = 0; + let mut x98: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x97, &mut x98, x1, 0xa6f230c72f0207e8); + let mut x99: u64 = 0; + let mut x100: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x99, &mut x100, x1, 0x3ec64bd033b7627f); + let mut x101: u64 = 0; + let mut x102: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x101, &mut x102, x1, 0x886b75895283ddd); + let mut x103: u64 = 0; + let mut x104: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x103, &mut x104, x1, 0xd2a3681ecda81671); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x105, &mut x106, 0x0, x104, x101); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x107, &mut x108, x106, x102, x99); + let mut x109: u64 = 0; + let mut x110: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x109, &mut x110, x108, x100, x97); + let mut x111: u64 = 0; + let mut x112: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x111, &mut x112, x110, x98, x95); + let mut x113: u64 = 0; + let mut x114: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x113, &mut x114, x112, x96, x93); + let mut x115: u64 = 0; + let mut x116: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x115, &mut x116, x114, x94, x91); + let mut x117: u64 = 0; + let mut x118: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x117, &mut x118, x116, x92, x89); + let mut x119: u64 = 0; + let mut x120: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x119, &mut x120, 0x0, x73, x103); + let mut x121: u64 = 0; + let mut x122: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x121, &mut x122, x120, x75, x105); + let mut x123: u64 = 0; + let mut x124: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x123, &mut x124, x122, x77, x107); + let mut x125: u64 = 0; + let mut x126: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x125, &mut x126, x124, x79, x109); + let mut x127: u64 = 0; + let mut x128: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x127, &mut x128, x126, x81, x111); + let mut x129: u64 = 0; + let mut x130: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x129, &mut x130, x128, x83, x113); + let mut x131: u64 = 0; + let mut x132: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x131, &mut x132, x130, x85, x115); + let mut x133: u64 = 0; + let mut x134: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x133, &mut x134, x132, x87, x117); + let mut x135: u64 = 0; + let mut x136: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x135, &mut x136, x119, 0xad49541f0f1b7027); + let mut x137: u64 = 0; + let mut x138: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x137, &mut x138, x135, 0xaadd9db8dbe9c48b); + let mut x139: u64 = 0; + let mut x140: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x139, &mut x140, x135, 0x3fd4e6ae33c9fc07); + let mut x141: u64 = 0; + let mut x142: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x141, &mut x142, x135, 0xcb308db3b3c9d20e); + let mut x143: u64 = 0; + let mut x144: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x143, &mut x144, x135, 0xd6639cca70330870); + let mut x145: u64 = 0; + let mut x146: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x145, &mut x146, x135, 0x553e5c414ca92619); + let mut x147: u64 = 0; + let mut x148: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x147, &mut x148, x135, 0x418661197fac1047); + let mut x149: u64 = 0; + let mut x150: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x149, &mut x150, x135, 0x1db1d381085ddadd); + let mut x151: u64 = 0; + let mut x152: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x151, &mut x152, x135, 0xb58796829ca90069); + let mut x153: u64 = 0; + let mut x154: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x153, &mut x154, 0x0, x152, x149); + let mut x155: u64 = 0; + let mut x156: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x155, &mut x156, x154, x150, x147); + let mut x157: u64 = 0; + let mut x158: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x157, &mut x158, x156, x148, x145); + let mut x159: u64 = 0; + let mut x160: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x159, &mut x160, x158, x146, x143); + let mut x161: u64 = 0; + let mut x162: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x161, &mut x162, x160, x144, x141); + let mut x163: u64 = 0; + let mut x164: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x163, &mut x164, x162, x142, x139); + let mut x165: u64 = 0; + let mut x166: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x165, &mut x166, x164, x140, x137); + let mut x167: u64 = 0; + let mut x168: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x167, &mut x168, 0x0, x119, x151); + let mut x169: u64 = 0; + let mut x170: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x169, &mut x170, x168, x121, x153); + let mut x171: u64 = 0; + let mut x172: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x171, &mut x172, x170, x123, x155); + let mut x173: u64 = 0; + let mut x174: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x173, &mut x174, x172, x125, x157); + let mut x175: u64 = 0; + let mut x176: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x175, &mut x176, x174, x127, x159); + let mut x177: u64 = 0; + let mut x178: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x177, &mut x178, x176, x129, x161); + let mut x179: u64 = 0; + let mut x180: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x179, &mut x180, x178, x131, x163); + let mut x181: u64 = 0; + let mut x182: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x181, &mut x182, x180, x133, x165); + let mut x183: u64 = 0; + let mut x184: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x183, + &mut x184, + x182, + (((x134 as u64) + (x88 as u64)) + ((x118 as u64) + x90)), + ((x166 as u64) + x138), + ); + let mut x185: u64 = 0; + let mut x186: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x185, &mut x186, x2, 0xa794586a718407b0); + let mut x187: u64 = 0; + let mut x188: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x187, &mut x188, x2, 0x95df1b4c194b2e56); + let mut x189: u64 = 0; + let mut x190: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x189, &mut x190, x2, 0x723c37a22f16bbdf); + let mut x191: u64 = 0; + let mut x192: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x191, &mut x192, x2, 0xd7f9cc263b790de3); + let mut x193: u64 = 0; + let mut x194: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x193, &mut x194, x2, 0xa6f230c72f0207e8); + let mut x195: u64 = 0; + let mut x196: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x195, &mut x196, x2, 0x3ec64bd033b7627f); + let mut x197: u64 = 0; + let mut x198: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x197, &mut x198, x2, 0x886b75895283ddd); + let mut x199: u64 = 0; + let mut x200: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x199, &mut x200, x2, 0xd2a3681ecda81671); + let mut x201: u64 = 0; + let mut x202: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x201, &mut x202, 0x0, x200, x197); + let mut x203: u64 = 0; + let mut x204: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x203, &mut x204, x202, x198, x195); + let mut x205: u64 = 0; + let mut x206: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x205, &mut x206, x204, x196, x193); + let mut x207: u64 = 0; + let mut x208: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x207, &mut x208, x206, x194, x191); + let mut x209: u64 = 0; + let mut x210: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x209, &mut x210, x208, x192, x189); + let mut x211: u64 = 0; + let mut x212: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x211, &mut x212, x210, x190, x187); + let mut x213: u64 = 0; + let mut x214: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x213, &mut x214, x212, x188, x185); + let mut x215: u64 = 0; + let mut x216: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x215, &mut x216, 0x0, x169, x199); + let mut x217: u64 = 0; + let mut x218: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x217, &mut x218, x216, x171, x201); + let mut x219: u64 = 0; + let mut x220: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x219, &mut x220, x218, x173, x203); + let mut x221: u64 = 0; + let mut x222: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x221, &mut x222, x220, x175, x205); + let mut x223: u64 = 0; + let mut x224: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x223, &mut x224, x222, x177, x207); + let mut x225: u64 = 0; + let mut x226: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x225, &mut x226, x224, x179, x209); + let mut x227: u64 = 0; + let mut x228: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x227, &mut x228, x226, x181, x211); + let mut x229: u64 = 0; + let mut x230: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x229, &mut x230, x228, x183, x213); + let mut x231: u64 = 0; + let mut x232: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x231, &mut x232, x215, 0xad49541f0f1b7027); + let mut x233: u64 = 0; + let mut x234: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x233, &mut x234, x231, 0xaadd9db8dbe9c48b); + let mut x235: u64 = 0; + let mut x236: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x235, &mut x236, x231, 0x3fd4e6ae33c9fc07); + let mut x237: u64 = 0; + let mut x238: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x237, &mut x238, x231, 0xcb308db3b3c9d20e); + let mut x239: u64 = 0; + let mut x240: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x239, &mut x240, x231, 0xd6639cca70330870); + let mut x241: u64 = 0; + let mut x242: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x241, &mut x242, x231, 0x553e5c414ca92619); + let mut x243: u64 = 0; + let mut x244: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x243, &mut x244, x231, 0x418661197fac1047); + let mut x245: u64 = 0; + let mut x246: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x245, &mut x246, x231, 0x1db1d381085ddadd); + let mut x247: u64 = 0; + let mut x248: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x247, &mut x248, x231, 0xb58796829ca90069); + let mut x249: u64 = 0; + let mut x250: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x249, &mut x250, 0x0, x248, x245); + let mut x251: u64 = 0; + let mut x252: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x251, &mut x252, x250, x246, x243); + let mut x253: u64 = 0; + let mut x254: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x253, &mut x254, x252, x244, x241); + let mut x255: u64 = 0; + let mut x256: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x255, &mut x256, x254, x242, x239); + let mut x257: u64 = 0; + let mut x258: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x257, &mut x258, x256, x240, x237); + let mut x259: u64 = 0; + let mut x260: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x259, &mut x260, x258, x238, x235); + let mut x261: u64 = 0; + let mut x262: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x261, &mut x262, x260, x236, x233); + let mut x263: u64 = 0; + let mut x264: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x263, &mut x264, 0x0, x215, x247); + let mut x265: u64 = 0; + let mut x266: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x265, &mut x266, x264, x217, x249); + let mut x267: u64 = 0; + let mut x268: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x267, &mut x268, x266, x219, x251); + let mut x269: u64 = 0; + let mut x270: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x269, &mut x270, x268, x221, x253); + let mut x271: u64 = 0; + let mut x272: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x271, &mut x272, x270, x223, x255); + let mut x273: u64 = 0; + let mut x274: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x273, &mut x274, x272, x225, x257); + let mut x275: u64 = 0; + let mut x276: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x275, &mut x276, x274, x227, x259); + let mut x277: u64 = 0; + let mut x278: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x277, &mut x278, x276, x229, x261); + let mut x279: u64 = 0; + let mut x280: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x279, + &mut x280, + x278, + (((x230 as u64) + (x184 as u64)) + ((x214 as u64) + x186)), + ((x262 as u64) + x234), + ); + let mut x281: u64 = 0; + let mut x282: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x281, &mut x282, x3, 0xa794586a718407b0); + let mut x283: u64 = 0; + let mut x284: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x283, &mut x284, x3, 0x95df1b4c194b2e56); + let mut x285: u64 = 0; + let mut x286: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x285, &mut x286, x3, 0x723c37a22f16bbdf); + let mut x287: u64 = 0; + let mut x288: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x287, &mut x288, x3, 0xd7f9cc263b790de3); + let mut x289: u64 = 0; + let mut x290: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x289, &mut x290, x3, 0xa6f230c72f0207e8); + let mut x291: u64 = 0; + let mut x292: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x291, &mut x292, x3, 0x3ec64bd033b7627f); + let mut x293: u64 = 0; + let mut x294: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x293, &mut x294, x3, 0x886b75895283ddd); + let mut x295: u64 = 0; + let mut x296: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x295, &mut x296, x3, 0xd2a3681ecda81671); + let mut x297: u64 = 0; + let mut x298: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x297, &mut x298, 0x0, x296, x293); + let mut x299: u64 = 0; + let mut x300: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x299, &mut x300, x298, x294, x291); + let mut x301: u64 = 0; + let mut x302: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x301, &mut x302, x300, x292, x289); + let mut x303: u64 = 0; + let mut x304: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x303, &mut x304, x302, x290, x287); + let mut x305: u64 = 0; + let mut x306: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x305, &mut x306, x304, x288, x285); + let mut x307: u64 = 0; + let mut x308: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x307, &mut x308, x306, x286, x283); + let mut x309: u64 = 0; + let mut x310: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x309, &mut x310, x308, x284, x281); + let mut x311: u64 = 0; + let mut x312: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x311, &mut x312, 0x0, x265, x295); + let mut x313: u64 = 0; + let mut x314: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x313, &mut x314, x312, x267, x297); + let mut x315: u64 = 0; + let mut x316: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x315, &mut x316, x314, x269, x299); + let mut x317: u64 = 0; + let mut x318: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x317, &mut x318, x316, x271, x301); + let mut x319: u64 = 0; + let mut x320: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x319, &mut x320, x318, x273, x303); + let mut x321: u64 = 0; + let mut x322: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x321, &mut x322, x320, x275, x305); + let mut x323: u64 = 0; + let mut x324: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x323, &mut x324, x322, x277, x307); + let mut x325: u64 = 0; + let mut x326: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x325, &mut x326, x324, x279, x309); + let mut x327: u64 = 0; + let mut x328: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x327, &mut x328, x311, 0xad49541f0f1b7027); + let mut x329: u64 = 0; + let mut x330: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x329, &mut x330, x327, 0xaadd9db8dbe9c48b); + let mut x331: u64 = 0; + let mut x332: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x331, &mut x332, x327, 0x3fd4e6ae33c9fc07); + let mut x333: u64 = 0; + let mut x334: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x333, &mut x334, x327, 0xcb308db3b3c9d20e); + let mut x335: u64 = 0; + let mut x336: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x335, &mut x336, x327, 0xd6639cca70330870); + let mut x337: u64 = 0; + let mut x338: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x337, &mut x338, x327, 0x553e5c414ca92619); + let mut x339: u64 = 0; + let mut x340: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x339, &mut x340, x327, 0x418661197fac1047); + let mut x341: u64 = 0; + let mut x342: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x341, &mut x342, x327, 0x1db1d381085ddadd); + let mut x343: u64 = 0; + let mut x344: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x343, &mut x344, x327, 0xb58796829ca90069); + let mut x345: u64 = 0; + let mut x346: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x345, &mut x346, 0x0, x344, x341); + let mut x347: u64 = 0; + let mut x348: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x347, &mut x348, x346, x342, x339); + let mut x349: u64 = 0; + let mut x350: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x349, &mut x350, x348, x340, x337); + let mut x351: u64 = 0; + let mut x352: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x351, &mut x352, x350, x338, x335); + let mut x353: u64 = 0; + let mut x354: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x353, &mut x354, x352, x336, x333); + let mut x355: u64 = 0; + let mut x356: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x355, &mut x356, x354, x334, x331); + let mut x357: u64 = 0; + let mut x358: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x357, &mut x358, x356, x332, x329); + let mut x359: u64 = 0; + let mut x360: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x359, &mut x360, 0x0, x311, x343); + let mut x361: u64 = 0; + let mut x362: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x361, &mut x362, x360, x313, x345); + let mut x363: u64 = 0; + let mut x364: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x363, &mut x364, x362, x315, x347); + let mut x365: u64 = 0; + let mut x366: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x365, &mut x366, x364, x317, x349); + let mut x367: u64 = 0; + let mut x368: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x367, &mut x368, x366, x319, x351); + let mut x369: u64 = 0; + let mut x370: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x369, &mut x370, x368, x321, x353); + let mut x371: u64 = 0; + let mut x372: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x371, &mut x372, x370, x323, x355); + let mut x373: u64 = 0; + let mut x374: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x373, &mut x374, x372, x325, x357); + let mut x375: u64 = 0; + let mut x376: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x375, + &mut x376, + x374, + (((x326 as u64) + (x280 as u64)) + ((x310 as u64) + x282)), + ((x358 as u64) + x330), + ); + let mut x377: u64 = 0; + let mut x378: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x377, &mut x378, x4, 0xa794586a718407b0); + let mut x379: u64 = 0; + let mut x380: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x379, &mut x380, x4, 0x95df1b4c194b2e56); + let mut x381: u64 = 0; + let mut x382: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x381, &mut x382, x4, 0x723c37a22f16bbdf); + let mut x383: u64 = 0; + let mut x384: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x383, &mut x384, x4, 0xd7f9cc263b790de3); + let mut x385: u64 = 0; + let mut x386: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x385, &mut x386, x4, 0xa6f230c72f0207e8); + let mut x387: u64 = 0; + let mut x388: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x387, &mut x388, x4, 0x3ec64bd033b7627f); + let mut x389: u64 = 0; + let mut x390: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x389, &mut x390, x4, 0x886b75895283ddd); + let mut x391: u64 = 0; + let mut x392: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x391, &mut x392, x4, 0xd2a3681ecda81671); + let mut x393: u64 = 0; + let mut x394: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x393, &mut x394, 0x0, x392, x389); + let mut x395: u64 = 0; + let mut x396: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x395, &mut x396, x394, x390, x387); + let mut x397: u64 = 0; + let mut x398: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x397, &mut x398, x396, x388, x385); + let mut x399: u64 = 0; + let mut x400: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x399, &mut x400, x398, x386, x383); + let mut x401: u64 = 0; + let mut x402: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x401, &mut x402, x400, x384, x381); + let mut x403: u64 = 0; + let mut x404: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x403, &mut x404, x402, x382, x379); + let mut x405: u64 = 0; + let mut x406: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x405, &mut x406, x404, x380, x377); + let mut x407: u64 = 0; + let mut x408: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x407, &mut x408, 0x0, x361, x391); + let mut x409: u64 = 0; + let mut x410: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x409, &mut x410, x408, x363, x393); + let mut x411: u64 = 0; + let mut x412: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x411, &mut x412, x410, x365, x395); + let mut x413: u64 = 0; + let mut x414: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x413, &mut x414, x412, x367, x397); + let mut x415: u64 = 0; + let mut x416: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x415, &mut x416, x414, x369, x399); + let mut x417: u64 = 0; + let mut x418: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x417, &mut x418, x416, x371, x401); + let mut x419: u64 = 0; + let mut x420: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x419, &mut x420, x418, x373, x403); + let mut x421: u64 = 0; + let mut x422: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x421, &mut x422, x420, x375, x405); + let mut x423: u64 = 0; + let mut x424: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x423, &mut x424, x407, 0xad49541f0f1b7027); + let mut x425: u64 = 0; + let mut x426: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x425, &mut x426, x423, 0xaadd9db8dbe9c48b); + let mut x427: u64 = 0; + let mut x428: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x427, &mut x428, x423, 0x3fd4e6ae33c9fc07); + let mut x429: u64 = 0; + let mut x430: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x429, &mut x430, x423, 0xcb308db3b3c9d20e); + let mut x431: u64 = 0; + let mut x432: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x431, &mut x432, x423, 0xd6639cca70330870); + let mut x433: u64 = 0; + let mut x434: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x433, &mut x434, x423, 0x553e5c414ca92619); + let mut x435: u64 = 0; + let mut x436: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x435, &mut x436, x423, 0x418661197fac1047); + let mut x437: u64 = 0; + let mut x438: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x437, &mut x438, x423, 0x1db1d381085ddadd); + let mut x439: u64 = 0; + let mut x440: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x439, &mut x440, x423, 0xb58796829ca90069); + let mut x441: u64 = 0; + let mut x442: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x441, &mut x442, 0x0, x440, x437); + let mut x443: u64 = 0; + let mut x444: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x443, &mut x444, x442, x438, x435); + let mut x445: u64 = 0; + let mut x446: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x445, &mut x446, x444, x436, x433); + let mut x447: u64 = 0; + let mut x448: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x447, &mut x448, x446, x434, x431); + let mut x449: u64 = 0; + let mut x450: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x449, &mut x450, x448, x432, x429); + let mut x451: u64 = 0; + let mut x452: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x451, &mut x452, x450, x430, x427); + let mut x453: u64 = 0; + let mut x454: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x453, &mut x454, x452, x428, x425); + let mut x455: u64 = 0; + let mut x456: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x455, &mut x456, 0x0, x407, x439); + let mut x457: u64 = 0; + let mut x458: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x457, &mut x458, x456, x409, x441); + let mut x459: u64 = 0; + let mut x460: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x459, &mut x460, x458, x411, x443); + let mut x461: u64 = 0; + let mut x462: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x461, &mut x462, x460, x413, x445); + let mut x463: u64 = 0; + let mut x464: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x463, &mut x464, x462, x415, x447); + let mut x465: u64 = 0; + let mut x466: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x465, &mut x466, x464, x417, x449); + let mut x467: u64 = 0; + let mut x468: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x467, &mut x468, x466, x419, x451); + let mut x469: u64 = 0; + let mut x470: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x469, &mut x470, x468, x421, x453); + let mut x471: u64 = 0; + let mut x472: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x471, + &mut x472, + x470, + (((x422 as u64) + (x376 as u64)) + ((x406 as u64) + x378)), + ((x454 as u64) + x426), + ); + let mut x473: u64 = 0; + let mut x474: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x473, &mut x474, x5, 0xa794586a718407b0); + let mut x475: u64 = 0; + let mut x476: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x475, &mut x476, x5, 0x95df1b4c194b2e56); + let mut x477: u64 = 0; + let mut x478: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x477, &mut x478, x5, 0x723c37a22f16bbdf); + let mut x479: u64 = 0; + let mut x480: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x479, &mut x480, x5, 0xd7f9cc263b790de3); + let mut x481: u64 = 0; + let mut x482: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x481, &mut x482, x5, 0xa6f230c72f0207e8); + let mut x483: u64 = 0; + let mut x484: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x483, &mut x484, x5, 0x3ec64bd033b7627f); + let mut x485: u64 = 0; + let mut x486: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x485, &mut x486, x5, 0x886b75895283ddd); + let mut x487: u64 = 0; + let mut x488: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x487, &mut x488, x5, 0xd2a3681ecda81671); + let mut x489: u64 = 0; + let mut x490: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x489, &mut x490, 0x0, x488, x485); + let mut x491: u64 = 0; + let mut x492: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x491, &mut x492, x490, x486, x483); + let mut x493: u64 = 0; + let mut x494: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x493, &mut x494, x492, x484, x481); + let mut x495: u64 = 0; + let mut x496: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x495, &mut x496, x494, x482, x479); + let mut x497: u64 = 0; + let mut x498: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x497, &mut x498, x496, x480, x477); + let mut x499: u64 = 0; + let mut x500: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x499, &mut x500, x498, x478, x475); + let mut x501: u64 = 0; + let mut x502: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x501, &mut x502, x500, x476, x473); + let mut x503: u64 = 0; + let mut x504: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x503, &mut x504, 0x0, x457, x487); + let mut x505: u64 = 0; + let mut x506: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x505, &mut x506, x504, x459, x489); + let mut x507: u64 = 0; + let mut x508: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x507, &mut x508, x506, x461, x491); + let mut x509: u64 = 0; + let mut x510: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x509, &mut x510, x508, x463, x493); + let mut x511: u64 = 0; + let mut x512: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x511, &mut x512, x510, x465, x495); + let mut x513: u64 = 0; + let mut x514: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x513, &mut x514, x512, x467, x497); + let mut x515: u64 = 0; + let mut x516: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x515, &mut x516, x514, x469, x499); + let mut x517: u64 = 0; + let mut x518: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x517, &mut x518, x516, x471, x501); + let mut x519: u64 = 0; + let mut x520: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x519, &mut x520, x503, 0xad49541f0f1b7027); + let mut x521: u64 = 0; + let mut x522: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x521, &mut x522, x519, 0xaadd9db8dbe9c48b); + let mut x523: u64 = 0; + let mut x524: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x523, &mut x524, x519, 0x3fd4e6ae33c9fc07); + let mut x525: u64 = 0; + let mut x526: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x525, &mut x526, x519, 0xcb308db3b3c9d20e); + let mut x527: u64 = 0; + let mut x528: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x527, &mut x528, x519, 0xd6639cca70330870); + let mut x529: u64 = 0; + let mut x530: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x529, &mut x530, x519, 0x553e5c414ca92619); + let mut x531: u64 = 0; + let mut x532: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x531, &mut x532, x519, 0x418661197fac1047); + let mut x533: u64 = 0; + let mut x534: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x533, &mut x534, x519, 0x1db1d381085ddadd); + let mut x535: u64 = 0; + let mut x536: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x535, &mut x536, x519, 0xb58796829ca90069); + let mut x537: u64 = 0; + let mut x538: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x537, &mut x538, 0x0, x536, x533); + let mut x539: u64 = 0; + let mut x540: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x539, &mut x540, x538, x534, x531); + let mut x541: u64 = 0; + let mut x542: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x541, &mut x542, x540, x532, x529); + let mut x543: u64 = 0; + let mut x544: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x543, &mut x544, x542, x530, x527); + let mut x545: u64 = 0; + let mut x546: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x545, &mut x546, x544, x528, x525); + let mut x547: u64 = 0; + let mut x548: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x547, &mut x548, x546, x526, x523); + let mut x549: u64 = 0; + let mut x550: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x549, &mut x550, x548, x524, x521); + let mut x551: u64 = 0; + let mut x552: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x551, &mut x552, 0x0, x503, x535); + let mut x553: u64 = 0; + let mut x554: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x553, &mut x554, x552, x505, x537); + let mut x555: u64 = 0; + let mut x556: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x555, &mut x556, x554, x507, x539); + let mut x557: u64 = 0; + let mut x558: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x557, &mut x558, x556, x509, x541); + let mut x559: u64 = 0; + let mut x560: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x559, &mut x560, x558, x511, x543); + let mut x561: u64 = 0; + let mut x562: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x561, &mut x562, x560, x513, x545); + let mut x563: u64 = 0; + let mut x564: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x563, &mut x564, x562, x515, x547); + let mut x565: u64 = 0; + let mut x566: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x565, &mut x566, x564, x517, x549); + let mut x567: u64 = 0; + let mut x568: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x567, + &mut x568, + x566, + (((x518 as u64) + (x472 as u64)) + ((x502 as u64) + x474)), + ((x550 as u64) + x522), + ); + let mut x569: u64 = 0; + let mut x570: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x569, &mut x570, x6, 0xa794586a718407b0); + let mut x571: u64 = 0; + let mut x572: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x571, &mut x572, x6, 0x95df1b4c194b2e56); + let mut x573: u64 = 0; + let mut x574: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x573, &mut x574, x6, 0x723c37a22f16bbdf); + let mut x575: u64 = 0; + let mut x576: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x575, &mut x576, x6, 0xd7f9cc263b790de3); + let mut x577: u64 = 0; + let mut x578: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x577, &mut x578, x6, 0xa6f230c72f0207e8); + let mut x579: u64 = 0; + let mut x580: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x579, &mut x580, x6, 0x3ec64bd033b7627f); + let mut x581: u64 = 0; + let mut x582: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x581, &mut x582, x6, 0x886b75895283ddd); + let mut x583: u64 = 0; + let mut x584: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x583, &mut x584, x6, 0xd2a3681ecda81671); + let mut x585: u64 = 0; + let mut x586: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x585, &mut x586, 0x0, x584, x581); + let mut x587: u64 = 0; + let mut x588: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x587, &mut x588, x586, x582, x579); + let mut x589: u64 = 0; + let mut x590: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x589, &mut x590, x588, x580, x577); + let mut x591: u64 = 0; + let mut x592: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x591, &mut x592, x590, x578, x575); + let mut x593: u64 = 0; + let mut x594: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x593, &mut x594, x592, x576, x573); + let mut x595: u64 = 0; + let mut x596: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x595, &mut x596, x594, x574, x571); + let mut x597: u64 = 0; + let mut x598: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x597, &mut x598, x596, x572, x569); + let mut x599: u64 = 0; + let mut x600: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x599, &mut x600, 0x0, x553, x583); + let mut x601: u64 = 0; + let mut x602: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x601, &mut x602, x600, x555, x585); + let mut x603: u64 = 0; + let mut x604: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x603, &mut x604, x602, x557, x587); + let mut x605: u64 = 0; + let mut x606: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x605, &mut x606, x604, x559, x589); + let mut x607: u64 = 0; + let mut x608: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x607, &mut x608, x606, x561, x591); + let mut x609: u64 = 0; + let mut x610: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x609, &mut x610, x608, x563, x593); + let mut x611: u64 = 0; + let mut x612: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x611, &mut x612, x610, x565, x595); + let mut x613: u64 = 0; + let mut x614: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x613, &mut x614, x612, x567, x597); + let mut x615: u64 = 0; + let mut x616: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x615, &mut x616, x599, 0xad49541f0f1b7027); + let mut x617: u64 = 0; + let mut x618: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x617, &mut x618, x615, 0xaadd9db8dbe9c48b); + let mut x619: u64 = 0; + let mut x620: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x619, &mut x620, x615, 0x3fd4e6ae33c9fc07); + let mut x621: u64 = 0; + let mut x622: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x621, &mut x622, x615, 0xcb308db3b3c9d20e); + let mut x623: u64 = 0; + let mut x624: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x623, &mut x624, x615, 0xd6639cca70330870); + let mut x625: u64 = 0; + let mut x626: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x625, &mut x626, x615, 0x553e5c414ca92619); + let mut x627: u64 = 0; + let mut x628: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x627, &mut x628, x615, 0x418661197fac1047); + let mut x629: u64 = 0; + let mut x630: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x629, &mut x630, x615, 0x1db1d381085ddadd); + let mut x631: u64 = 0; + let mut x632: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x631, &mut x632, x615, 0xb58796829ca90069); + let mut x633: u64 = 0; + let mut x634: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x633, &mut x634, 0x0, x632, x629); + let mut x635: u64 = 0; + let mut x636: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x635, &mut x636, x634, x630, x627); + let mut x637: u64 = 0; + let mut x638: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x637, &mut x638, x636, x628, x625); + let mut x639: u64 = 0; + let mut x640: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x639, &mut x640, x638, x626, x623); + let mut x641: u64 = 0; + let mut x642: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x641, &mut x642, x640, x624, x621); + let mut x643: u64 = 0; + let mut x644: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x643, &mut x644, x642, x622, x619); + let mut x645: u64 = 0; + let mut x646: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x645, &mut x646, x644, x620, x617); + let mut x647: u64 = 0; + let mut x648: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x647, &mut x648, 0x0, x599, x631); + let mut x649: u64 = 0; + let mut x650: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x649, &mut x650, x648, x601, x633); + let mut x651: u64 = 0; + let mut x652: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x651, &mut x652, x650, x603, x635); + let mut x653: u64 = 0; + let mut x654: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x653, &mut x654, x652, x605, x637); + let mut x655: u64 = 0; + let mut x656: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x655, &mut x656, x654, x607, x639); + let mut x657: u64 = 0; + let mut x658: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x657, &mut x658, x656, x609, x641); + let mut x659: u64 = 0; + let mut x660: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x659, &mut x660, x658, x611, x643); + let mut x661: u64 = 0; + let mut x662: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x661, &mut x662, x660, x613, x645); + let mut x663: u64 = 0; + let mut x664: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x663, + &mut x664, + x662, + (((x614 as u64) + (x568 as u64)) + ((x598 as u64) + x570)), + ((x646 as u64) + x618), + ); + let mut x665: u64 = 0; + let mut x666: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x665, &mut x666, x7, 0xa794586a718407b0); + let mut x667: u64 = 0; + let mut x668: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x667, &mut x668, x7, 0x95df1b4c194b2e56); + let mut x669: u64 = 0; + let mut x670: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x669, &mut x670, x7, 0x723c37a22f16bbdf); + let mut x671: u64 = 0; + let mut x672: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x671, &mut x672, x7, 0xd7f9cc263b790de3); + let mut x673: u64 = 0; + let mut x674: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x673, &mut x674, x7, 0xa6f230c72f0207e8); + let mut x675: u64 = 0; + let mut x676: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x675, &mut x676, x7, 0x3ec64bd033b7627f); + let mut x677: u64 = 0; + let mut x678: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x677, &mut x678, x7, 0x886b75895283ddd); + let mut x679: u64 = 0; + let mut x680: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x679, &mut x680, x7, 0xd2a3681ecda81671); + let mut x681: u64 = 0; + let mut x682: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x681, &mut x682, 0x0, x680, x677); + let mut x683: u64 = 0; + let mut x684: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x683, &mut x684, x682, x678, x675); + let mut x685: u64 = 0; + let mut x686: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x685, &mut x686, x684, x676, x673); + let mut x687: u64 = 0; + let mut x688: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x687, &mut x688, x686, x674, x671); + let mut x689: u64 = 0; + let mut x690: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x689, &mut x690, x688, x672, x669); + let mut x691: u64 = 0; + let mut x692: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x691, &mut x692, x690, x670, x667); + let mut x693: u64 = 0; + let mut x694: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x693, &mut x694, x692, x668, x665); + let mut x695: u64 = 0; + let mut x696: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x695, &mut x696, 0x0, x649, x679); + let mut x697: u64 = 0; + let mut x698: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x697, &mut x698, x696, x651, x681); + let mut x699: u64 = 0; + let mut x700: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x699, &mut x700, x698, x653, x683); + let mut x701: u64 = 0; + let mut x702: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x701, &mut x702, x700, x655, x685); + let mut x703: u64 = 0; + let mut x704: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x703, &mut x704, x702, x657, x687); + let mut x705: u64 = 0; + let mut x706: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x705, &mut x706, x704, x659, x689); + let mut x707: u64 = 0; + let mut x708: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x707, &mut x708, x706, x661, x691); + let mut x709: u64 = 0; + let mut x710: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x709, &mut x710, x708, x663, x693); + let mut x711: u64 = 0; + let mut x712: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x711, &mut x712, x695, 0xad49541f0f1b7027); + let mut x713: u64 = 0; + let mut x714: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x713, &mut x714, x711, 0xaadd9db8dbe9c48b); + let mut x715: u64 = 0; + let mut x716: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x715, &mut x716, x711, 0x3fd4e6ae33c9fc07); + let mut x717: u64 = 0; + let mut x718: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x717, &mut x718, x711, 0xcb308db3b3c9d20e); + let mut x719: u64 = 0; + let mut x720: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x719, &mut x720, x711, 0xd6639cca70330870); + let mut x721: u64 = 0; + let mut x722: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x721, &mut x722, x711, 0x553e5c414ca92619); + let mut x723: u64 = 0; + let mut x724: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x723, &mut x724, x711, 0x418661197fac1047); + let mut x725: u64 = 0; + let mut x726: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x725, &mut x726, x711, 0x1db1d381085ddadd); + let mut x727: u64 = 0; + let mut x728: u64 = 0; + fiat_bp512_scalar_mulx_u64(&mut x727, &mut x728, x711, 0xb58796829ca90069); + let mut x729: u64 = 0; + let mut x730: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x729, &mut x730, 0x0, x728, x725); + let mut x731: u64 = 0; + let mut x732: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x731, &mut x732, x730, x726, x723); + let mut x733: u64 = 0; + let mut x734: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x733, &mut x734, x732, x724, x721); + let mut x735: u64 = 0; + let mut x736: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x735, &mut x736, x734, x722, x719); + let mut x737: u64 = 0; + let mut x738: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x737, &mut x738, x736, x720, x717); + let mut x739: u64 = 0; + let mut x740: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x739, &mut x740, x738, x718, x715); + let mut x741: u64 = 0; + let mut x742: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x741, &mut x742, x740, x716, x713); + let mut x743: u64 = 0; + let mut x744: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x743, &mut x744, 0x0, x695, x727); + let mut x745: u64 = 0; + let mut x746: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x745, &mut x746, x744, x697, x729); + let mut x747: u64 = 0; + let mut x748: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x747, &mut x748, x746, x699, x731); + let mut x749: u64 = 0; + let mut x750: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x749, &mut x750, x748, x701, x733); + let mut x751: u64 = 0; + let mut x752: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x751, &mut x752, x750, x703, x735); + let mut x753: u64 = 0; + let mut x754: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x753, &mut x754, x752, x705, x737); + let mut x755: u64 = 0; + let mut x756: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x755, &mut x756, x754, x707, x739); + let mut x757: u64 = 0; + let mut x758: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x757, &mut x758, x756, x709, x741); + let mut x759: u64 = 0; + let mut x760: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x759, + &mut x760, + x758, + (((x710 as u64) + (x664 as u64)) + ((x694 as u64) + x666)), + ((x742 as u64) + x714), + ); + let mut x761: u64 = 0; + let mut x762: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x761, &mut x762, 0x0, x745, 0xb58796829ca90069); + let mut x763: u64 = 0; + let mut x764: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x763, &mut x764, x762, x747, 0x1db1d381085ddadd); + let mut x765: u64 = 0; + let mut x766: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x765, &mut x766, x764, x749, 0x418661197fac1047); + let mut x767: u64 = 0; + let mut x768: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x767, &mut x768, x766, x751, 0x553e5c414ca92619); + let mut x769: u64 = 0; + let mut x770: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x769, &mut x770, x768, x753, 0xd6639cca70330870); + let mut x771: u64 = 0; + let mut x772: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x771, &mut x772, x770, x755, 0xcb308db3b3c9d20e); + let mut x773: u64 = 0; + let mut x774: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x773, &mut x774, x772, x757, 0x3fd4e6ae33c9fc07); + let mut x775: u64 = 0; + let mut x776: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x775, &mut x776, x774, x759, 0xaadd9db8dbe9c48b); + let mut x777: u64 = 0; + let mut x778: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x777, &mut x778, x776, (x760 as u64), (0x0 as u64)); + let mut x779: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x779, x778, x761, x745); + let mut x780: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x780, x778, x763, x747); + let mut x781: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x781, x778, x765, x749); + let mut x782: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x782, x778, x767, x751); + let mut x783: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x783, x778, x769, x753); + let mut x784: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x784, x778, x771, x755); + let mut x785: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x785, x778, x773, x757); + let mut x786: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x786, x778, x775, x759); + out1[0] = x779; + out1[1] = x780; + out1[2] = x781; + out1[3] = x782; + out1[4] = x783; + out1[5] = x784; + out1[6] = x785; + out1[7] = x786; +} + +/// The function fiat_bp512_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +#[inline] +pub fn fiat_bp512_scalar_nonzero(out1: &mut u64, arg1: &[u64; 8]) { + let x1: u64 = ((arg1[0]) + | ((arg1[1]) + | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); + *out1 = x1; +} + +/// The function fiat_bp512_scalar_selectznz is a multi-limb conditional select. +/// +/// Postconditions: +/// out1 = (if arg1 = 0 then arg2 else arg3) +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0x1] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_scalar_selectznz( + out1: &mut [u64; 8], + arg1: fiat_bp512_scalar_u1, + arg2: &[u64; 8], + arg3: &[u64; 8], +) { + let mut x1: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x1, arg1, (arg2[0]), (arg3[0])); + let mut x2: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x2, arg1, (arg2[1]), (arg3[1])); + let mut x3: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x3, arg1, (arg2[2]), (arg3[2])); + let mut x4: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x4, arg1, (arg2[3]), (arg3[3])); + let mut x5: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x5, arg1, (arg2[4]), (arg3[4])); + let mut x6: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x6, arg1, (arg2[5]), (arg3[5])); + let mut x7: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x7, arg1, (arg2[6]), (arg3[6])); + let mut x8: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x8, arg1, (arg2[7]), (arg3[7])); + out1[0] = x1; + out1[1] = x2; + out1[2] = x3; + out1[3] = x4; + out1[4] = x5; + out1[5] = x6; + out1[6] = x7; + out1[7] = x8; +} + +/// The function fiat_bp512_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ eval arg1 < m +/// Postconditions: +/// out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..63] +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +#[inline] +pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { + let x1: u64 = (arg1[7]); + let x2: u64 = (arg1[6]); + let x3: u64 = (arg1[5]); + let x4: u64 = (arg1[4]); + let x5: u64 = (arg1[3]); + let x6: u64 = (arg1[2]); + let x7: u64 = (arg1[1]); + let x8: u64 = (arg1[0]); + let x9: u8 = ((x8 & (0xff as u64)) as u8); + let x10: u64 = (x8 >> 8); + let x11: u8 = ((x10 & (0xff as u64)) as u8); + let x12: u64 = (x10 >> 8); + let x13: u8 = ((x12 & (0xff as u64)) as u8); + let x14: u64 = (x12 >> 8); + let x15: u8 = ((x14 & (0xff as u64)) as u8); + let x16: u64 = (x14 >> 8); + let x17: u8 = ((x16 & (0xff as u64)) as u8); + let x18: u64 = (x16 >> 8); + let x19: u8 = ((x18 & (0xff as u64)) as u8); + let x20: u64 = (x18 >> 8); + let x21: u8 = ((x20 & (0xff as u64)) as u8); + let x22: u8 = ((x20 >> 8) as u8); + let x23: u8 = ((x7 & (0xff as u64)) as u8); + let x24: u64 = (x7 >> 8); + let x25: u8 = ((x24 & (0xff as u64)) as u8); + let x26: u64 = (x24 >> 8); + let x27: u8 = ((x26 & (0xff as u64)) as u8); + let x28: u64 = (x26 >> 8); + let x29: u8 = ((x28 & (0xff as u64)) as u8); + let x30: u64 = (x28 >> 8); + let x31: u8 = ((x30 & (0xff as u64)) as u8); + let x32: u64 = (x30 >> 8); + let x33: u8 = ((x32 & (0xff as u64)) as u8); + let x34: u64 = (x32 >> 8); + let x35: u8 = ((x34 & (0xff as u64)) as u8); + let x36: u8 = ((x34 >> 8) as u8); + let x37: u8 = ((x6 & (0xff as u64)) as u8); + let x38: u64 = (x6 >> 8); + let x39: u8 = ((x38 & (0xff as u64)) as u8); + let x40: u64 = (x38 >> 8); + let x41: u8 = ((x40 & (0xff as u64)) as u8); + let x42: u64 = (x40 >> 8); + let x43: u8 = ((x42 & (0xff as u64)) as u8); + let x44: u64 = (x42 >> 8); + let x45: u8 = ((x44 & (0xff as u64)) as u8); + let x46: u64 = (x44 >> 8); + let x47: u8 = ((x46 & (0xff as u64)) as u8); + let x48: u64 = (x46 >> 8); + let x49: u8 = ((x48 & (0xff as u64)) as u8); + let x50: u8 = ((x48 >> 8) as u8); + let x51: u8 = ((x5 & (0xff as u64)) as u8); + let x52: u64 = (x5 >> 8); + let x53: u8 = ((x52 & (0xff as u64)) as u8); + let x54: u64 = (x52 >> 8); + let x55: u8 = ((x54 & (0xff as u64)) as u8); + let x56: u64 = (x54 >> 8); + let x57: u8 = ((x56 & (0xff as u64)) as u8); + let x58: u64 = (x56 >> 8); + let x59: u8 = ((x58 & (0xff as u64)) as u8); + let x60: u64 = (x58 >> 8); + let x61: u8 = ((x60 & (0xff as u64)) as u8); + let x62: u64 = (x60 >> 8); + let x63: u8 = ((x62 & (0xff as u64)) as u8); + let x64: u8 = ((x62 >> 8) as u8); + let x65: u8 = ((x4 & (0xff as u64)) as u8); + let x66: u64 = (x4 >> 8); + let x67: u8 = ((x66 & (0xff as u64)) as u8); + let x68: u64 = (x66 >> 8); + let x69: u8 = ((x68 & (0xff as u64)) as u8); + let x70: u64 = (x68 >> 8); + let x71: u8 = ((x70 & (0xff as u64)) as u8); + let x72: u64 = (x70 >> 8); + let x73: u8 = ((x72 & (0xff as u64)) as u8); + let x74: u64 = (x72 >> 8); + let x75: u8 = ((x74 & (0xff as u64)) as u8); + let x76: u64 = (x74 >> 8); + let x77: u8 = ((x76 & (0xff as u64)) as u8); + let x78: u8 = ((x76 >> 8) as u8); + let x79: u8 = ((x3 & (0xff as u64)) as u8); + let x80: u64 = (x3 >> 8); + let x81: u8 = ((x80 & (0xff as u64)) as u8); + let x82: u64 = (x80 >> 8); + let x83: u8 = ((x82 & (0xff as u64)) as u8); + let x84: u64 = (x82 >> 8); + let x85: u8 = ((x84 & (0xff as u64)) as u8); + let x86: u64 = (x84 >> 8); + let x87: u8 = ((x86 & (0xff as u64)) as u8); + let x88: u64 = (x86 >> 8); + let x89: u8 = ((x88 & (0xff as u64)) as u8); + let x90: u64 = (x88 >> 8); + let x91: u8 = ((x90 & (0xff as u64)) as u8); + let x92: u8 = ((x90 >> 8) as u8); + let x93: u8 = ((x2 & (0xff as u64)) as u8); + let x94: u64 = (x2 >> 8); + let x95: u8 = ((x94 & (0xff as u64)) as u8); + let x96: u64 = (x94 >> 8); + let x97: u8 = ((x96 & (0xff as u64)) as u8); + let x98: u64 = (x96 >> 8); + let x99: u8 = ((x98 & (0xff as u64)) as u8); + let x100: u64 = (x98 >> 8); + let x101: u8 = ((x100 & (0xff as u64)) as u8); + let x102: u64 = (x100 >> 8); + let x103: u8 = ((x102 & (0xff as u64)) as u8); + let x104: u64 = (x102 >> 8); + let x105: u8 = ((x104 & (0xff as u64)) as u8); + let x106: u8 = ((x104 >> 8) as u8); + let x107: u8 = ((x1 & (0xff as u64)) as u8); + let x108: u64 = (x1 >> 8); + let x109: u8 = ((x108 & (0xff as u64)) as u8); + let x110: u64 = (x108 >> 8); + let x111: u8 = ((x110 & (0xff as u64)) as u8); + let x112: u64 = (x110 >> 8); + let x113: u8 = ((x112 & (0xff as u64)) as u8); + let x114: u64 = (x112 >> 8); + let x115: u8 = ((x114 & (0xff as u64)) as u8); + let x116: u64 = (x114 >> 8); + let x117: u8 = ((x116 & (0xff as u64)) as u8); + let x118: u64 = (x116 >> 8); + let x119: u8 = ((x118 & (0xff as u64)) as u8); + let x120: u8 = ((x118 >> 8) as u8); + out1[0] = x9; + out1[1] = x11; + out1[2] = x13; + out1[3] = x15; + out1[4] = x17; + out1[5] = x19; + out1[6] = x21; + out1[7] = x22; + out1[8] = x23; + out1[9] = x25; + out1[10] = x27; + out1[11] = x29; + out1[12] = x31; + out1[13] = x33; + out1[14] = x35; + out1[15] = x36; + out1[16] = x37; + out1[17] = x39; + out1[18] = x41; + out1[19] = x43; + out1[20] = x45; + out1[21] = x47; + out1[22] = x49; + out1[23] = x50; + out1[24] = x51; + out1[25] = x53; + out1[26] = x55; + out1[27] = x57; + out1[28] = x59; + out1[29] = x61; + out1[30] = x63; + out1[31] = x64; + out1[32] = x65; + out1[33] = x67; + out1[34] = x69; + out1[35] = x71; + out1[36] = x73; + out1[37] = x75; + out1[38] = x77; + out1[39] = x78; + out1[40] = x79; + out1[41] = x81; + out1[42] = x83; + out1[43] = x85; + out1[44] = x87; + out1[45] = x89; + out1[46] = x91; + out1[47] = x92; + out1[48] = x93; + out1[49] = x95; + out1[50] = x97; + out1[51] = x99; + out1[52] = x101; + out1[53] = x103; + out1[54] = x105; + out1[55] = x106; + out1[56] = x107; + out1[57] = x109; + out1[58] = x111; + out1[59] = x113; + out1[60] = x115; + out1[61] = x117; + out1[62] = x119; + out1[63] = x120; +} + +/// The function fiat_bp512_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. +/// +/// Preconditions: +/// 0 ≤ bytes_eval arg1 < m +/// Postconditions: +/// eval out1 mod m = bytes_eval arg1 mod m +/// 0 ≤ eval out1 < m +/// +/// Input Bounds: +/// arg1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { + let x1: u64 = (((arg1[63]) as u64) << 56); + let x2: u64 = (((arg1[62]) as u64) << 48); + let x3: u64 = (((arg1[61]) as u64) << 40); + let x4: u64 = (((arg1[60]) as u64) << 32); + let x5: u64 = (((arg1[59]) as u64) << 24); + let x6: u64 = (((arg1[58]) as u64) << 16); + let x7: u64 = (((arg1[57]) as u64) << 8); + let x8: u8 = (arg1[56]); + let x9: u64 = (((arg1[55]) as u64) << 56); + let x10: u64 = (((arg1[54]) as u64) << 48); + let x11: u64 = (((arg1[53]) as u64) << 40); + let x12: u64 = (((arg1[52]) as u64) << 32); + let x13: u64 = (((arg1[51]) as u64) << 24); + let x14: u64 = (((arg1[50]) as u64) << 16); + let x15: u64 = (((arg1[49]) as u64) << 8); + let x16: u8 = (arg1[48]); + let x17: u64 = (((arg1[47]) as u64) << 56); + let x18: u64 = (((arg1[46]) as u64) << 48); + let x19: u64 = (((arg1[45]) as u64) << 40); + let x20: u64 = (((arg1[44]) as u64) << 32); + let x21: u64 = (((arg1[43]) as u64) << 24); + let x22: u64 = (((arg1[42]) as u64) << 16); + let x23: u64 = (((arg1[41]) as u64) << 8); + let x24: u8 = (arg1[40]); + let x25: u64 = (((arg1[39]) as u64) << 56); + let x26: u64 = (((arg1[38]) as u64) << 48); + let x27: u64 = (((arg1[37]) as u64) << 40); + let x28: u64 = (((arg1[36]) as u64) << 32); + let x29: u64 = (((arg1[35]) as u64) << 24); + let x30: u64 = (((arg1[34]) as u64) << 16); + let x31: u64 = (((arg1[33]) as u64) << 8); + let x32: u8 = (arg1[32]); + let x33: u64 = (((arg1[31]) as u64) << 56); + let x34: u64 = (((arg1[30]) as u64) << 48); + let x35: u64 = (((arg1[29]) as u64) << 40); + let x36: u64 = (((arg1[28]) as u64) << 32); + let x37: u64 = (((arg1[27]) as u64) << 24); + let x38: u64 = (((arg1[26]) as u64) << 16); + let x39: u64 = (((arg1[25]) as u64) << 8); + let x40: u8 = (arg1[24]); + let x41: u64 = (((arg1[23]) as u64) << 56); + let x42: u64 = (((arg1[22]) as u64) << 48); + let x43: u64 = (((arg1[21]) as u64) << 40); + let x44: u64 = (((arg1[20]) as u64) << 32); + let x45: u64 = (((arg1[19]) as u64) << 24); + let x46: u64 = (((arg1[18]) as u64) << 16); + let x47: u64 = (((arg1[17]) as u64) << 8); + let x48: u8 = (arg1[16]); + let x49: u64 = (((arg1[15]) as u64) << 56); + let x50: u64 = (((arg1[14]) as u64) << 48); + let x51: u64 = (((arg1[13]) as u64) << 40); + let x52: u64 = (((arg1[12]) as u64) << 32); + let x53: u64 = (((arg1[11]) as u64) << 24); + let x54: u64 = (((arg1[10]) as u64) << 16); + let x55: u64 = (((arg1[9]) as u64) << 8); + let x56: u8 = (arg1[8]); + let x57: u64 = (((arg1[7]) as u64) << 56); + let x58: u64 = (((arg1[6]) as u64) << 48); + let x59: u64 = (((arg1[5]) as u64) << 40); + let x60: u64 = (((arg1[4]) as u64) << 32); + let x61: u64 = (((arg1[3]) as u64) << 24); + let x62: u64 = (((arg1[2]) as u64) << 16); + let x63: u64 = (((arg1[1]) as u64) << 8); + let x64: u8 = (arg1[0]); + let x65: u64 = (x63 + (x64 as u64)); + let x66: u64 = (x62 + x65); + let x67: u64 = (x61 + x66); + let x68: u64 = (x60 + x67); + let x69: u64 = (x59 + x68); + let x70: u64 = (x58 + x69); + let x71: u64 = (x57 + x70); + let x72: u64 = (x55 + (x56 as u64)); + let x73: u64 = (x54 + x72); + let x74: u64 = (x53 + x73); + let x75: u64 = (x52 + x74); + let x76: u64 = (x51 + x75); + let x77: u64 = (x50 + x76); + let x78: u64 = (x49 + x77); + let x79: u64 = (x47 + (x48 as u64)); + let x80: u64 = (x46 + x79); + let x81: u64 = (x45 + x80); + let x82: u64 = (x44 + x81); + let x83: u64 = (x43 + x82); + let x84: u64 = (x42 + x83); + let x85: u64 = (x41 + x84); + let x86: u64 = (x39 + (x40 as u64)); + let x87: u64 = (x38 + x86); + let x88: u64 = (x37 + x87); + let x89: u64 = (x36 + x88); + let x90: u64 = (x35 + x89); + let x91: u64 = (x34 + x90); + let x92: u64 = (x33 + x91); + let x93: u64 = (x31 + (x32 as u64)); + let x94: u64 = (x30 + x93); + let x95: u64 = (x29 + x94); + let x96: u64 = (x28 + x95); + let x97: u64 = (x27 + x96); + let x98: u64 = (x26 + x97); + let x99: u64 = (x25 + x98); + let x100: u64 = (x23 + (x24 as u64)); + let x101: u64 = (x22 + x100); + let x102: u64 = (x21 + x101); + let x103: u64 = (x20 + x102); + let x104: u64 = (x19 + x103); + let x105: u64 = (x18 + x104); + let x106: u64 = (x17 + x105); + let x107: u64 = (x15 + (x16 as u64)); + let x108: u64 = (x14 + x107); + let x109: u64 = (x13 + x108); + let x110: u64 = (x12 + x109); + let x111: u64 = (x11 + x110); + let x112: u64 = (x10 + x111); + let x113: u64 = (x9 + x112); + let x114: u64 = (x7 + (x8 as u64)); + let x115: u64 = (x6 + x114); + let x116: u64 = (x5 + x115); + let x117: u64 = (x4 + x116); + let x118: u64 = (x3 + x117); + let x119: u64 = (x2 + x118); + let x120: u64 = (x1 + x119); + out1[0] = x71; + out1[1] = x78; + out1[2] = x85; + out1[3] = x92; + out1[4] = x99; + out1[5] = x106; + out1[6] = x113; + out1[7] = x120; +} + +/// The function fiat_bp512_scalar_set_one returns the field element one in the Montgomery domain. +/// +/// Postconditions: +/// eval (from_montgomery out1) mod m = 1 mod m +/// 0 ≤ eval out1 < m +/// +#[inline] +pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_field_element) { + out1[0] = 0x4a78697d6356ff97; + out1[1] = 0xe24e2c7ef7a22522; + out1[2] = 0xbe799ee68053efb8; + out1[3] = 0xaac1a3beb356d9e6; + out1[4] = 0x299c63358fccf78f; + out1[5] = 0x34cf724c4c362df1; + out1[6] = 0xc02b1951cc3603f8; + out1[7] = 0x5522624724163b74; +} + +/// The function fiat_bp512_scalar_msat returns the saturated representation of the prime modulus. +/// +/// Postconditions: +/// twos_complement_eval out1 = m +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_scalar_msat(out1: &mut [u64; 9]) { + out1[0] = 0xb58796829ca90069; + out1[1] = 0x1db1d381085ddadd; + out1[2] = 0x418661197fac1047; + out1[3] = 0x553e5c414ca92619; + out1[4] = 0xd6639cca70330870; + out1[5] = 0xcb308db3b3c9d20e; + out1[6] = 0x3fd4e6ae33c9fc07; + out1[7] = 0xaadd9db8dbe9c48b; + out1[8] = (0x0 as u64); +} + +/// The function fiat_bp512_scalar_divstep computes a divstep. +/// +/// Preconditions: +/// 0 ≤ eval arg4 < m +/// 0 ≤ eval arg5 < m +/// Postconditions: +/// out1 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) +/// twos_complement_eval out2 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) +/// twos_complement_eval out3 = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then ⌊(twos_complement_eval arg3 - twos_complement_eval arg2) / 2⌋ else ⌊(twos_complement_eval arg3 + (twos_complement_eval arg3 mod 2) * twos_complement_eval arg2) / 2⌋) +/// eval (from_montgomery out4) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) +/// eval (from_montgomery out5) mod m = (if 0 < arg1 ∧ (twos_complement_eval arg3) is odd then (eval (from_montgomery arg4) - eval (from_montgomery arg4)) mod m else (eval (from_montgomery arg5) + (twos_complement_eval arg3 mod 2) * eval (from_montgomery arg4)) mod m) +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out5 < m +/// 0 ≤ eval out2 < m +/// 0 ≤ eval out3 < m +/// +/// Input Bounds: +/// arg1: [0x0 ~> 0xffffffffffffffff] +/// arg2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// arg5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// Output Bounds: +/// out1: [0x0 ~> 0xffffffffffffffff] +/// out2: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out3: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +/// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_scalar_divstep( + out1: &mut u64, + out2: &mut [u64; 9], + out3: &mut [u64; 9], + out4: &mut [u64; 8], + out5: &mut [u64; 8], + arg1: u64, + arg2: &[u64; 9], + arg3: &[u64; 9], + arg4: &[u64; 8], + arg5: &[u64; 8], +) { + let mut x1: u64 = 0; + let mut x2: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x1, &mut x2, 0x0, (!arg1), (0x1 as u64)); + let x3: fiat_bp512_scalar_u1 = (((x1 >> 63) as fiat_bp512_scalar_u1) + & (((arg3[0]) & (0x1 as u64)) as fiat_bp512_scalar_u1)); + let mut x4: u64 = 0; + let mut x5: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x4, &mut x5, 0x0, (!arg1), (0x1 as u64)); + let mut x6: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x6, x3, arg1, x4); + let mut x7: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x7, x3, (arg2[0]), (arg3[0])); + let mut x8: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x8, x3, (arg2[1]), (arg3[1])); + let mut x9: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x9, x3, (arg2[2]), (arg3[2])); + let mut x10: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x10, x3, (arg2[3]), (arg3[3])); + let mut x11: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x11, x3, (arg2[4]), (arg3[4])); + let mut x12: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x12, x3, (arg2[5]), (arg3[5])); + let mut x13: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x13, x3, (arg2[6]), (arg3[6])); + let mut x14: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x14, x3, (arg2[7]), (arg3[7])); + let mut x15: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x15, x3, (arg2[8]), (arg3[8])); + let mut x16: u64 = 0; + let mut x17: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x16, &mut x17, 0x0, (0x1 as u64), (!(arg2[0]))); + let mut x18: u64 = 0; + let mut x19: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x18, &mut x19, x17, (0x0 as u64), (!(arg2[1]))); + let mut x20: u64 = 0; + let mut x21: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x20, &mut x21, x19, (0x0 as u64), (!(arg2[2]))); + let mut x22: u64 = 0; + let mut x23: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x22, &mut x23, x21, (0x0 as u64), (!(arg2[3]))); + let mut x24: u64 = 0; + let mut x25: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x24, &mut x25, x23, (0x0 as u64), (!(arg2[4]))); + let mut x26: u64 = 0; + let mut x27: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x26, &mut x27, x25, (0x0 as u64), (!(arg2[5]))); + let mut x28: u64 = 0; + let mut x29: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x28, &mut x29, x27, (0x0 as u64), (!(arg2[6]))); + let mut x30: u64 = 0; + let mut x31: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x30, &mut x31, x29, (0x0 as u64), (!(arg2[7]))); + let mut x32: u64 = 0; + let mut x33: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x32, &mut x33, x31, (0x0 as u64), (!(arg2[8]))); + let mut x34: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x34, x3, (arg3[0]), x16); + let mut x35: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x35, x3, (arg3[1]), x18); + let mut x36: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x36, x3, (arg3[2]), x20); + let mut x37: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x37, x3, (arg3[3]), x22); + let mut x38: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x38, x3, (arg3[4]), x24); + let mut x39: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x39, x3, (arg3[5]), x26); + let mut x40: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x40, x3, (arg3[6]), x28); + let mut x41: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x41, x3, (arg3[7]), x30); + let mut x42: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x42, x3, (arg3[8]), x32); + let mut x43: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x43, x3, (arg4[0]), (arg5[0])); + let mut x44: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x44, x3, (arg4[1]), (arg5[1])); + let mut x45: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x45, x3, (arg4[2]), (arg5[2])); + let mut x46: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x46, x3, (arg4[3]), (arg5[3])); + let mut x47: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x47, x3, (arg4[4]), (arg5[4])); + let mut x48: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x48, x3, (arg4[5]), (arg5[5])); + let mut x49: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x49, x3, (arg4[6]), (arg5[6])); + let mut x50: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x50, x3, (arg4[7]), (arg5[7])); + let mut x51: u64 = 0; + let mut x52: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x51, &mut x52, 0x0, x43, x43); + let mut x53: u64 = 0; + let mut x54: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x53, &mut x54, x52, x44, x44); + let mut x55: u64 = 0; + let mut x56: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x55, &mut x56, x54, x45, x45); + let mut x57: u64 = 0; + let mut x58: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x57, &mut x58, x56, x46, x46); + let mut x59: u64 = 0; + let mut x60: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x59, &mut x60, x58, x47, x47); + let mut x61: u64 = 0; + let mut x62: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x61, &mut x62, x60, x48, x48); + let mut x63: u64 = 0; + let mut x64: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x63, &mut x64, x62, x49, x49); + let mut x65: u64 = 0; + let mut x66: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x65, &mut x66, x64, x50, x50); + let mut x67: u64 = 0; + let mut x68: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x67, &mut x68, 0x0, x51, 0xb58796829ca90069); + let mut x69: u64 = 0; + let mut x70: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x69, &mut x70, x68, x53, 0x1db1d381085ddadd); + let mut x71: u64 = 0; + let mut x72: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x71, &mut x72, x70, x55, 0x418661197fac1047); + let mut x73: u64 = 0; + let mut x74: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x73, &mut x74, x72, x57, 0x553e5c414ca92619); + let mut x75: u64 = 0; + let mut x76: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x75, &mut x76, x74, x59, 0xd6639cca70330870); + let mut x77: u64 = 0; + let mut x78: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x77, &mut x78, x76, x61, 0xcb308db3b3c9d20e); + let mut x79: u64 = 0; + let mut x80: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x79, &mut x80, x78, x63, 0x3fd4e6ae33c9fc07); + let mut x81: u64 = 0; + let mut x82: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x81, &mut x82, x80, x65, 0xaadd9db8dbe9c48b); + let mut x83: u64 = 0; + let mut x84: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x83, &mut x84, x82, (x66 as u64), (0x0 as u64)); + let x85: u64 = (arg4[7]); + let x86: u64 = (arg4[6]); + let x87: u64 = (arg4[5]); + let x88: u64 = (arg4[4]); + let x89: u64 = (arg4[3]); + let x90: u64 = (arg4[2]); + let x91: u64 = (arg4[1]); + let x92: u64 = (arg4[0]); + let mut x93: u64 = 0; + let mut x94: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x93, &mut x94, 0x0, (0x0 as u64), x92); + let mut x95: u64 = 0; + let mut x96: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x95, &mut x96, x94, (0x0 as u64), x91); + let mut x97: u64 = 0; + let mut x98: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x97, &mut x98, x96, (0x0 as u64), x90); + let mut x99: u64 = 0; + let mut x100: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x99, &mut x100, x98, (0x0 as u64), x89); + let mut x101: u64 = 0; + let mut x102: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x101, &mut x102, x100, (0x0 as u64), x88); + let mut x103: u64 = 0; + let mut x104: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x103, &mut x104, x102, (0x0 as u64), x87); + let mut x105: u64 = 0; + let mut x106: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x105, &mut x106, x104, (0x0 as u64), x86); + let mut x107: u64 = 0; + let mut x108: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x107, &mut x108, x106, (0x0 as u64), x85); + let mut x109: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x109, x108, (0x0 as u64), 0xffffffffffffffff); + let mut x110: u64 = 0; + let mut x111: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x110, &mut x111, 0x0, x93, (x109 & 0xb58796829ca90069)); + let mut x112: u64 = 0; + let mut x113: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x112, &mut x113, x111, x95, (x109 & 0x1db1d381085ddadd)); + let mut x114: u64 = 0; + let mut x115: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x114, &mut x115, x113, x97, (x109 & 0x418661197fac1047)); + let mut x116: u64 = 0; + let mut x117: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x116, &mut x117, x115, x99, (x109 & 0x553e5c414ca92619)); + let mut x118: u64 = 0; + let mut x119: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x118, + &mut x119, + x117, + x101, + (x109 & 0xd6639cca70330870), + ); + let mut x120: u64 = 0; + let mut x121: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x120, + &mut x121, + x119, + x103, + (x109 & 0xcb308db3b3c9d20e), + ); + let mut x122: u64 = 0; + let mut x123: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x122, + &mut x123, + x121, + x105, + (x109 & 0x3fd4e6ae33c9fc07), + ); + let mut x124: u64 = 0; + let mut x125: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64( + &mut x124, + &mut x125, + x123, + x107, + (x109 & 0xaadd9db8dbe9c48b), + ); + let mut x126: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x126, x3, (arg5[0]), x110); + let mut x127: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x127, x3, (arg5[1]), x112); + let mut x128: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x128, x3, (arg5[2]), x114); + let mut x129: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x129, x3, (arg5[3]), x116); + let mut x130: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x130, x3, (arg5[4]), x118); + let mut x131: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x131, x3, (arg5[5]), x120); + let mut x132: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x132, x3, (arg5[6]), x122); + let mut x133: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x133, x3, (arg5[7]), x124); + let x134: fiat_bp512_scalar_u1 = ((x34 & (0x1 as u64)) as fiat_bp512_scalar_u1); + let mut x135: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x135, x134, (0x0 as u64), x7); + let mut x136: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x136, x134, (0x0 as u64), x8); + let mut x137: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x137, x134, (0x0 as u64), x9); + let mut x138: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x138, x134, (0x0 as u64), x10); + let mut x139: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x139, x134, (0x0 as u64), x11); + let mut x140: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x140, x134, (0x0 as u64), x12); + let mut x141: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x141, x134, (0x0 as u64), x13); + let mut x142: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x142, x134, (0x0 as u64), x14); + let mut x143: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x143, x134, (0x0 as u64), x15); + let mut x144: u64 = 0; + let mut x145: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x144, &mut x145, 0x0, x34, x135); + let mut x146: u64 = 0; + let mut x147: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x146, &mut x147, x145, x35, x136); + let mut x148: u64 = 0; + let mut x149: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x148, &mut x149, x147, x36, x137); + let mut x150: u64 = 0; + let mut x151: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x150, &mut x151, x149, x37, x138); + let mut x152: u64 = 0; + let mut x153: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x152, &mut x153, x151, x38, x139); + let mut x154: u64 = 0; + let mut x155: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x154, &mut x155, x153, x39, x140); + let mut x156: u64 = 0; + let mut x157: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x156, &mut x157, x155, x40, x141); + let mut x158: u64 = 0; + let mut x159: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x158, &mut x159, x157, x41, x142); + let mut x160: u64 = 0; + let mut x161: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x160, &mut x161, x159, x42, x143); + let mut x162: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x162, x134, (0x0 as u64), x43); + let mut x163: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x163, x134, (0x0 as u64), x44); + let mut x164: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x164, x134, (0x0 as u64), x45); + let mut x165: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x165, x134, (0x0 as u64), x46); + let mut x166: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x166, x134, (0x0 as u64), x47); + let mut x167: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x167, x134, (0x0 as u64), x48); + let mut x168: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x168, x134, (0x0 as u64), x49); + let mut x169: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x169, x134, (0x0 as u64), x50); + let mut x170: u64 = 0; + let mut x171: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x170, &mut x171, 0x0, x126, x162); + let mut x172: u64 = 0; + let mut x173: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x172, &mut x173, x171, x127, x163); + let mut x174: u64 = 0; + let mut x175: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x174, &mut x175, x173, x128, x164); + let mut x176: u64 = 0; + let mut x177: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x176, &mut x177, x175, x129, x165); + let mut x178: u64 = 0; + let mut x179: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x178, &mut x179, x177, x130, x166); + let mut x180: u64 = 0; + let mut x181: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x180, &mut x181, x179, x131, x167); + let mut x182: u64 = 0; + let mut x183: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x182, &mut x183, x181, x132, x168); + let mut x184: u64 = 0; + let mut x185: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x184, &mut x185, x183, x133, x169); + let mut x186: u64 = 0; + let mut x187: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x186, &mut x187, 0x0, x170, 0xb58796829ca90069); + let mut x188: u64 = 0; + let mut x189: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x188, &mut x189, x187, x172, 0x1db1d381085ddadd); + let mut x190: u64 = 0; + let mut x191: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x190, &mut x191, x189, x174, 0x418661197fac1047); + let mut x192: u64 = 0; + let mut x193: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x192, &mut x193, x191, x176, 0x553e5c414ca92619); + let mut x194: u64 = 0; + let mut x195: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x194, &mut x195, x193, x178, 0xd6639cca70330870); + let mut x196: u64 = 0; + let mut x197: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x196, &mut x197, x195, x180, 0xcb308db3b3c9d20e); + let mut x198: u64 = 0; + let mut x199: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x198, &mut x199, x197, x182, 0x3fd4e6ae33c9fc07); + let mut x200: u64 = 0; + let mut x201: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x200, &mut x201, x199, x184, 0xaadd9db8dbe9c48b); + let mut x202: u64 = 0; + let mut x203: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_subborrowx_u64(&mut x202, &mut x203, x201, (x185 as u64), (0x0 as u64)); + let mut x204: u64 = 0; + let mut x205: fiat_bp512_scalar_u1 = 0; + fiat_bp512_scalar_addcarryx_u64(&mut x204, &mut x205, 0x0, x6, (0x1 as u64)); + let x206: u64 = ((x144 >> 1) | ((x146 << 63) & 0xffffffffffffffff)); + let x207: u64 = ((x146 >> 1) | ((x148 << 63) & 0xffffffffffffffff)); + let x208: u64 = ((x148 >> 1) | ((x150 << 63) & 0xffffffffffffffff)); + let x209: u64 = ((x150 >> 1) | ((x152 << 63) & 0xffffffffffffffff)); + let x210: u64 = ((x152 >> 1) | ((x154 << 63) & 0xffffffffffffffff)); + let x211: u64 = ((x154 >> 1) | ((x156 << 63) & 0xffffffffffffffff)); + let x212: u64 = ((x156 >> 1) | ((x158 << 63) & 0xffffffffffffffff)); + let x213: u64 = ((x158 >> 1) | ((x160 << 63) & 0xffffffffffffffff)); + let x214: u64 = ((x160 & 0x8000000000000000) | (x160 >> 1)); + let mut x215: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x215, x84, x67, x51); + let mut x216: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x216, x84, x69, x53); + let mut x217: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x217, x84, x71, x55); + let mut x218: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x218, x84, x73, x57); + let mut x219: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x219, x84, x75, x59); + let mut x220: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x220, x84, x77, x61); + let mut x221: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x221, x84, x79, x63); + let mut x222: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x222, x84, x81, x65); + let mut x223: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x223, x203, x186, x170); + let mut x224: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x224, x203, x188, x172); + let mut x225: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x225, x203, x190, x174); + let mut x226: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x226, x203, x192, x176); + let mut x227: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x227, x203, x194, x178); + let mut x228: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x228, x203, x196, x180); + let mut x229: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x229, x203, x198, x182); + let mut x230: u64 = 0; + fiat_bp512_scalar_cmovznz_u64(&mut x230, x203, x200, x184); + *out1 = x204; + out2[0] = x7; + out2[1] = x8; + out2[2] = x9; + out2[3] = x10; + out2[4] = x11; + out2[5] = x12; + out2[6] = x13; + out2[7] = x14; + out2[8] = x15; + out3[0] = x206; + out3[1] = x207; + out3[2] = x208; + out3[3] = x209; + out3[4] = x210; + out3[5] = x211; + out3[6] = x212; + out3[7] = x213; + out3[8] = x214; + out4[0] = x215; + out4[1] = x216; + out4[2] = x217; + out4[3] = x218; + out4[4] = x219; + out4[5] = x220; + out4[6] = x221; + out4[7] = x222; + out5[0] = x223; + out5[1] = x224; + out5[2] = x225; + out5[3] = x226; + out5[4] = x227; + out5[5] = x228; + out5[6] = x229; + out5[7] = x230; +} + +/// The function fiat_bp512_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). +/// +/// Postconditions: +/// eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 < 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) +/// 0 ≤ eval out1 < m +/// +/// Output Bounds: +/// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[inline] +pub fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u64; 8]) { + out1[0] = 0x4277e35f2c366d57; + out1[1] = 0x82388037b0e8321e; + out1[2] = 0x730f5cd689f5b0c3; + out1[3] = 0xa4e60b8ad8c2ab0c; + out1[4] = 0x528b92e61615df0e; + out1[5] = 0x182049df255b13d9; + out1[6] = 0x46934422b8efb40e; + out1[7] = 0x1a016275847fd30b; +} diff --git a/bp512/src/r1.rs b/bp512/src/r1.rs index 6242d80e4..b60253e80 100644 --- a/bp512/src/r1.rs +++ b/bp512/src/r1.rs @@ -1,4 +1,4 @@ -//! brainpoolP384r1 elliptic curve: verifiably pseudo-random variant +//! brainpoolP512r1 elliptic curve: verifiably pseudo-random variant #[cfg(feature = "ecdsa")] pub mod ecdsa; @@ -18,7 +18,7 @@ use elliptic_curve::{FieldBytesEncoding, bigint::U512, consts::U64}; #[cfg(feature = "pkcs8")] use crate::pkcs8; -/// brainpoolP384r1 elliptic curve: verifiably pseudo-random variant +/// brainpoolP512r1 elliptic curve: verifiably pseudo-random variant #[derive(Copy, Clone, Debug, Default, Eq, PartialEq, PartialOrd, Ord)] pub struct BrainpoolP512r1; diff --git a/bp512/src/r1/arithmetic.rs b/bp512/src/r1/arithmetic.rs index 9ff9e7d64..3719cae09 100644 --- a/bp512/src/r1/arithmetic.rs +++ b/bp512/src/r1/arithmetic.rs @@ -1,4 +1,4 @@ -//! brainpoolP384r1 curve arithmetic implementation. +//! brainpoolP512r1 curve arithmetic implementation. use super::BrainpoolP512r1; use crate::{FieldElement, Scalar}; diff --git a/bp512/src/r1/ecdsa.rs b/bp512/src/r1/ecdsa.rs index 257905322..9e5b87626 100644 --- a/bp512/src/r1/ecdsa.rs +++ b/bp512/src/r1/ecdsa.rs @@ -2,10 +2,10 @@ pub use super::BrainpoolP512r1; -/// ECDSA/brainpoolP384r1 signature (fixed-size) +/// ECDSA/brainpoolP512r1 signature (fixed-size) pub type Signature = ecdsa::Signature; -/// ECDSA/brainpoolP384r1 signature (ASN.1 DER encoded) +/// ECDSA/brainpoolP512r1 signature (ASN.1 DER encoded) pub type DerSignature = ecdsa::der::Signature; impl ecdsa::EcdsaCurve for BrainpoolP512r1 { diff --git a/bp512/src/t1.rs b/bp512/src/t1.rs index 9f48de96b..183d26f41 100644 --- a/bp512/src/t1.rs +++ b/bp512/src/t1.rs @@ -1,4 +1,4 @@ -//! brainpoolP384t1 elliptic curve: twisted variant +//! brainpoolP512t1 elliptic curve: twisted variant #[cfg(feature = "ecdsa")] pub mod ecdsa; @@ -18,15 +18,15 @@ use elliptic_curve::{FieldBytesEncoding, bigint::U512, consts::U64}; #[cfg(feature = "pkcs8")] use crate::pkcs8; -/// brainpoolP384t1 elliptic curve: twisted variant +/// brainpoolP512t1 elliptic curve: twisted variant #[derive(Copy, Clone, Debug, Default, Eq, PartialEq, PartialOrd, Ord)] pub struct BrainpoolP512t1; impl elliptic_curve::Curve for BrainpoolP512t1 { - /// 48-byte serialized field elements. + /// 64-byte serialized field elements. type FieldBytesSize = U64; - /// 384-bit field modulus. + /// 512-bit field modulus. type Uint = U512; /// Curve order. @@ -63,7 +63,7 @@ impl FieldBytesEncoding for U512 { } } -/// brainpoolP384t1 secret key. +/// brainpoolP512t1 secret key. pub type SecretKey = elliptic_curve::SecretKey; #[cfg(not(feature = "arithmetic"))] diff --git a/bp512/src/t1/arithmetic.rs b/bp512/src/t1/arithmetic.rs index 8d8e8e1ff..9a52638f3 100644 --- a/bp512/src/t1/arithmetic.rs +++ b/bp512/src/t1/arithmetic.rs @@ -1,4 +1,4 @@ -//! brainpoolP384t1 curve arithmetic implementation. +//! brainpoolP512t1 curve arithmetic implementation. use super::BrainpoolP512t1; use crate::{FieldElement, Scalar}; From 02ae5118089ed0c036740580161a3fa6c0537b17 Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 15:23:55 +0200 Subject: [PATCH 4/7] fiat-constify field --- bp512/src/arithmetic/field/bp512_32.rs | 110 ++++++++++++------------- bp512/src/arithmetic/field/bp512_64.rs | 110 ++++++++++++------------- 2 files changed, 108 insertions(+), 112 deletions(-) diff --git a/bp512/src/arithmetic/field/bp512_32.rs b/bp512/src/arithmetic/field/bp512_32.rs index bfdaa4ed1..6114af8f2 100644 --- a/bp512/src/arithmetic/field/bp512_32.rs +++ b/bp512/src/arithmetic/field/bp512_32.rs @@ -1,3 +1,4 @@ +//! fiat-crypto output postprocessed by fiat-constify: //! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512 32 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp //! curve description: bp512 //! machine_wordsize = 32 (from "32") @@ -16,24 +17,26 @@ //! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) //! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) in //! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 - #![allow(unused_parens)] #![allow(non_camel_case_types)] - -/** fiat_bp512_u1 represents values of 1 bits, stored in one byte. */ +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp512_u1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_u1 = u8; -/** fiat_bp512_i1 represents values of 1 bits, stored in one byte. */ +/// fiat_bp512_i1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_i1 = i8; -/** fiat_bp512_u2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_u2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_u2 = u8; -/** fiat_bp512_i2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_i2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_i2 = i8; - -/** The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_montgomery_domain_field_element(pub [u32; 16]); - impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { type Output = u32; #[inline] @@ -41,19 +44,16 @@ impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - -/** The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_non_montgomery_domain_field_element(pub [u32; 16]); - impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element { type Output = u32; #[inline] @@ -61,14 +61,12 @@ impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - /// The function fiat_bp512_addcarryx_u32 is an addition with carry. /// /// Postconditions: @@ -83,7 +81,7 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_addcarryx_u32( +pub const fn fiat_bp512_addcarryx_u32( out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, @@ -96,7 +94,6 @@ pub fn fiat_bp512_addcarryx_u32( *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_subborrowx_u32 is a subtraction with borrow. /// /// Postconditions: @@ -111,7 +108,7 @@ pub fn fiat_bp512_addcarryx_u32( /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_subborrowx_u32( +pub const fn fiat_bp512_subborrowx_u32( out1: &mut u32, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, @@ -124,7 +121,6 @@ pub fn fiat_bp512_subborrowx_u32( *out1 = x3; *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); } - /// The function fiat_bp512_mulx_u32 is a multiplication, returning the full double-width result. /// /// Postconditions: @@ -138,14 +134,13 @@ pub fn fiat_bp512_subborrowx_u32( /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { +pub const fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { let x1: u64 = ((arg1 as u64) * (arg2 as u64)); let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); let x3: u32 = ((x1 >> 32) as u32); *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_cmovznz_u32 is a single-word conditional move. /// /// Postconditions: @@ -158,14 +153,13 @@ pub fn fiat_bp512_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) /// Output Bounds: /// out1: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { +pub const fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, arg3: u32) { let x1: fiat_bp512_u1 = (!(!arg1)); let x2: u32 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i64) & (0xffffffff as i64)) as u32); let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); *out1 = x3; } - /// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. /// /// Preconditions: @@ -176,11 +170,14 @@ pub fn fiat_bp512_cmovznz_u32(out1: &mut u32, arg1: fiat_bp512_u1, arg2: u32, ar /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_mul( +pub const fn fiat_bp512_mul( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -4949,7 +4946,6 @@ pub fn fiat_bp512_mul( out1[14] = x3182; out1[15] = x3183; } - /// The function fiat_bp512_square squares a field element in the Montgomery domain. /// /// Preconditions: @@ -4959,10 +4955,12 @@ pub fn fiat_bp512_mul( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_square( +pub const fn fiat_bp512_square( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -9731,7 +9729,6 @@ pub fn fiat_bp512_square( out1[14] = x3182; out1[15] = x3183; } - /// The function fiat_bp512_add adds two field elements in the Montgomery domain. /// /// Preconditions: @@ -9742,11 +9739,14 @@ pub fn fiat_bp512_square( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_add( +pub const fn fiat_bp512_add( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -9895,7 +9895,6 @@ pub fn fiat_bp512_add( out1[14] = x81; out1[15] = x82; } - /// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. /// /// Preconditions: @@ -9906,11 +9905,14 @@ pub fn fiat_bp512_add( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_sub( +pub const fn fiat_bp512_sub( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -10026,7 +10028,6 @@ pub fn fiat_bp512_sub( out1[14] = x62; out1[15] = x64; } - /// The function fiat_bp512_opp negates a field element in the Montgomery domain. /// /// Preconditions: @@ -10036,10 +10037,12 @@ pub fn fiat_bp512_sub( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_opp( +pub const fn fiat_bp512_opp( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); @@ -10155,7 +10158,6 @@ pub fn fiat_bp512_opp( out1[14] = x62; out1[15] = x64; } - /// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. /// /// Preconditions: @@ -10165,10 +10167,12 @@ pub fn fiat_bp512_opp( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_from_montgomery( +pub const fn fiat_bp512_from_montgomery( out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[0]); let mut x2: u32 = 0; let mut x3: u32 = 0; @@ -13340,7 +13344,6 @@ pub fn fiat_bp512_from_montgomery( out1[14] = x2037; out1[15] = x2038; } - /// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. /// /// Preconditions: @@ -13350,10 +13353,12 @@ pub fn fiat_bp512_from_montgomery( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_to_montgomery( +pub const fn fiat_bp512_to_montgomery( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -18074,7 +18079,6 @@ pub fn fiat_bp512_to_montgomery( out1[14] = x3074; out1[15] = x3075; } - /// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. /// /// Preconditions: @@ -18087,7 +18091,7 @@ pub fn fiat_bp512_to_montgomery( /// Output Bounds: /// out1: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { +pub const fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { let x1: u32 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) @@ -18106,7 +18110,6 @@ pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { | (arg1[15])))))))))))))))); *out1 = x1; } - /// The function fiat_bp512_selectznz is a multi-limb conditional select. /// /// Postconditions: @@ -18119,7 +18122,7 @@ pub fn fiat_bp512_nonzero(out1: &mut u32, arg1: &[u32; 16]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_selectznz( +pub const fn fiat_bp512_selectznz( out1: &mut [u32; 16], arg1: fiat_bp512_u1, arg2: &[u32; 16], @@ -18174,7 +18177,6 @@ pub fn fiat_bp512_selectznz( out1[14] = x15; out1[15] = x16; } - /// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. /// /// Preconditions: @@ -18187,7 +18189,7 @@ pub fn fiat_bp512_selectznz( /// Output Bounds: /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] -pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { +pub const fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { let x1: u32 = (arg1[15]); let x2: u32 = (arg1[14]); let x3: u32 = (arg1[13]); @@ -18365,7 +18367,6 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { out1[62] = x111; out1[63] = x112; } - /// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. /// /// Preconditions: @@ -18379,7 +18380,7 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { +pub const fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { let x1: u32 = (((arg1[63]) as u32) << 24); let x2: u32 = (((arg1[62]) as u32) << 16); let x3: u32 = (((arg1[61]) as u32) << 8); @@ -18509,7 +18510,6 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { out1[14] = x109; out1[15] = x112; } - /// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. /// /// Postconditions: @@ -18517,7 +18517,8 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { +pub const fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { + let out1 = &mut out1.0; out1[0] = 0xa7c5b70d; out1[1] = 0xd7559fa9; out1[2] = 0xd27d397a; @@ -18535,7 +18536,6 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) out1[14] = 0x24163b74; out1[15] = 0x55226247; } - /// The function fiat_bp512_msat returns the saturated representation of the prime modulus. /// /// Postconditions: @@ -18545,7 +18545,7 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { +pub const fn fiat_bp512_msat(out1: &mut [u32; 17]) { out1[0] = 0x583a48f3; out1[1] = 0x28aa6056; out1[2] = 0x2d82c685; @@ -18564,7 +18564,6 @@ pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { out1[15] = 0xaadd9db8; out1[16] = (0x0 as u32); } - /// The function fiat_bp512_divstep computes a divstep. /// /// Preconditions: @@ -18594,7 +18593,7 @@ pub fn fiat_bp512_msat(out1: &mut [u32; 17]) { /// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] /// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_divstep( +pub const fn fiat_bp512_divstep( out1: &mut u32, out2: &mut [u32; 17], out3: &mut [u32; 17], @@ -19381,7 +19380,6 @@ pub fn fiat_bp512_divstep( out5[14] = x437; out5[15] = x438; } - /// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). /// /// Postconditions: @@ -19391,7 +19389,7 @@ pub fn fiat_bp512_divstep( /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_divstep_precomp(out1: &mut [u32; 16]) { +pub const fn fiat_bp512_divstep_precomp(out1: &mut [u32; 16]) { out1[0] = 0x8878ef1d; out1[1] = 0x6bba0f9e; out1[2] = 0xfe513a69; diff --git a/bp512/src/arithmetic/field/bp512_64.rs b/bp512/src/arithmetic/field/bp512_64.rs index fa4bd059a..7294ab5a5 100644 --- a/bp512/src/arithmetic/field/bp512_64.rs +++ b/bp512/src/arithmetic/field/bp512_64.rs @@ -1,3 +1,4 @@ +//! fiat-crypto output postprocessed by fiat-constify: //! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512 64 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp //! curve description: bp512 //! machine_wordsize = 64 (from "64") @@ -16,24 +17,26 @@ //! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) //! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) in //! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 - #![allow(unused_parens)] #![allow(non_camel_case_types)] - -/** fiat_bp512_u1 represents values of 1 bits, stored in one byte. */ +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp512_u1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_u1 = u8; -/** fiat_bp512_i1 represents values of 1 bits, stored in one byte. */ +/// fiat_bp512_i1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_i1 = i8; -/** fiat_bp512_u2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_u2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_u2 = u8; -/** fiat_bp512_i2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_i2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_i2 = i8; - -/** The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_montgomery_domain_field_element(pub [u64; 8]); - impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { type Output = u64; #[inline] @@ -41,19 +44,16 @@ impl core::ops::Index for fiat_bp512_montgomery_domain_field_element { &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - -/** The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_non_montgomery_domain_field_element(pub [u64; 8]); - impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element { type Output = u64; #[inline] @@ -61,14 +61,12 @@ impl core::ops::Index for fiat_bp512_non_montgomery_domain_field_element &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - /// The function fiat_bp512_addcarryx_u64 is an addition with carry. /// /// Postconditions: @@ -83,7 +81,7 @@ impl core::ops::IndexMut for fiat_bp512_non_montgomery_domain_field_eleme /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_addcarryx_u64( +pub const fn fiat_bp512_addcarryx_u64( out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, @@ -96,7 +94,6 @@ pub fn fiat_bp512_addcarryx_u64( *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_subborrowx_u64 is a subtraction with borrow. /// /// Postconditions: @@ -111,7 +108,7 @@ pub fn fiat_bp512_addcarryx_u64( /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_subborrowx_u64( +pub const fn fiat_bp512_subborrowx_u64( out1: &mut u64, out2: &mut fiat_bp512_u1, arg1: fiat_bp512_u1, @@ -124,7 +121,6 @@ pub fn fiat_bp512_subborrowx_u64( *out1 = x3; *out2 = (((0x0 as fiat_bp512_i2) - (x2 as fiat_bp512_i2)) as fiat_bp512_u1); } - /// The function fiat_bp512_mulx_u64 is a multiplication, returning the full double-width result. /// /// Postconditions: @@ -138,14 +134,13 @@ pub fn fiat_bp512_subborrowx_u64( /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { +pub const fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { let x1: u128 = ((arg1 as u128) * (arg2 as u128)); let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); let x3: u64 = ((x1 >> 64) as u64); *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_cmovznz_u64 is a single-word conditional move. /// /// Postconditions: @@ -158,14 +153,13 @@ pub fn fiat_bp512_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) /// Output Bounds: /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { +pub const fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, arg3: u64) { let x1: fiat_bp512_u1 = (!(!arg1)); let x2: u64 = ((((((0x0 as fiat_bp512_i2) - (x1 as fiat_bp512_i2)) as fiat_bp512_i1) as i128) & (0xffffffffffffffff as i128)) as u64); let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); *out1 = x3; } - /// The function fiat_bp512_mul multiplies two field elements in the Montgomery domain. /// /// Preconditions: @@ -176,11 +170,14 @@ pub fn fiat_bp512_cmovznz_u64(out1: &mut u64, arg1: fiat_bp512_u1, arg2: u64, ar /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_mul( +pub const fn fiat_bp512_mul( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -1413,7 +1410,6 @@ pub fn fiat_bp512_mul( out1[6] = x822; out1[7] = x823; } - /// The function fiat_bp512_square squares a field element in the Montgomery domain. /// /// Preconditions: @@ -1423,10 +1419,12 @@ pub fn fiat_bp512_mul( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_square( +pub const fn fiat_bp512_square( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -2659,7 +2657,6 @@ pub fn fiat_bp512_square( out1[6] = x822; out1[7] = x823; } - /// The function fiat_bp512_add adds two field elements in the Montgomery domain. /// /// Preconditions: @@ -2670,11 +2667,14 @@ pub fn fiat_bp512_square( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_add( +pub const fn fiat_bp512_add( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -2751,7 +2751,6 @@ pub fn fiat_bp512_add( out1[6] = x41; out1[7] = x42; } - /// The function fiat_bp512_sub subtracts two field elements in the Montgomery domain. /// /// Preconditions: @@ -2762,11 +2761,14 @@ pub fn fiat_bp512_add( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_sub( +pub const fn fiat_bp512_sub( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, arg2: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -2826,7 +2828,6 @@ pub fn fiat_bp512_sub( out1[6] = x30; out1[7] = x32; } - /// The function fiat_bp512_opp negates a field element in the Montgomery domain. /// /// Preconditions: @@ -2836,10 +2837,12 @@ pub fn fiat_bp512_sub( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_opp( +pub const fn fiat_bp512_opp( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_u1 = 0; fiat_bp512_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); @@ -2899,7 +2902,6 @@ pub fn fiat_bp512_opp( out1[6] = x30; out1[7] = x32; } - /// The function fiat_bp512_from_montgomery translates a field element out of the Montgomery domain. /// /// Preconditions: @@ -2909,10 +2911,12 @@ pub fn fiat_bp512_opp( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_from_montgomery( +pub const fn fiat_bp512_from_montgomery( out1: &mut fiat_bp512_non_montgomery_domain_field_element, arg1: &fiat_bp512_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[0]); let mut x2: u64 = 0; let mut x3: u64 = 0; @@ -3732,7 +3736,6 @@ pub fn fiat_bp512_from_montgomery( out1[6] = x509; out1[7] = x510; } - /// The function fiat_bp512_to_montgomery translates a field element into the Montgomery domain. /// /// Preconditions: @@ -3742,10 +3745,12 @@ pub fn fiat_bp512_from_montgomery( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_to_montgomery( +pub const fn fiat_bp512_to_montgomery( out1: &mut fiat_bp512_montgomery_domain_field_element, arg1: &fiat_bp512_non_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -4954,7 +4959,6 @@ pub fn fiat_bp512_to_montgomery( out1[6] = x770; out1[7] = x771; } - /// The function fiat_bp512_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. /// /// Preconditions: @@ -4967,13 +4971,12 @@ pub fn fiat_bp512_to_montgomery( /// Output Bounds: /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { +pub const fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); *out1 = x1; } - /// The function fiat_bp512_selectznz is a multi-limb conditional select. /// /// Postconditions: @@ -4986,7 +4989,7 @@ pub fn fiat_bp512_nonzero(out1: &mut u64, arg1: &[u64; 8]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_selectznz( +pub const fn fiat_bp512_selectznz( out1: &mut [u64; 8], arg1: fiat_bp512_u1, arg2: &[u64; 8], @@ -5017,7 +5020,6 @@ pub fn fiat_bp512_selectznz( out1[6] = x7; out1[7] = x8; } - /// The function fiat_bp512_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. /// /// Preconditions: @@ -5030,7 +5032,7 @@ pub fn fiat_bp512_selectznz( /// Output Bounds: /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] -pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { +pub const fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { let x1: u64 = (arg1[7]); let x2: u64 = (arg1[6]); let x3: u64 = (arg1[5]); @@ -5216,7 +5218,6 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { out1[62] = x119; out1[63] = x120; } - /// The function fiat_bp512_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. /// /// Preconditions: @@ -5230,7 +5231,7 @@ pub fn fiat_bp512_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { +pub const fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { let x1: u64 = (((arg1[63]) as u64) << 56); let x2: u64 = (((arg1[62]) as u64) << 48); let x3: u64 = (((arg1[61]) as u64) << 40); @@ -5360,7 +5361,6 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { out1[6] = x113; out1[7] = x120; } - /// The function fiat_bp512_set_one returns the field element one in the Montgomery domain. /// /// Postconditions: @@ -5368,7 +5368,8 @@ pub fn fiat_bp512_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { +pub const fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) { + let out1 = &mut out1.0; out1[0] = 0xd7559fa9a7c5b70d; out1[1] = 0xd77e00d0d27d397a; out1[2] = 0x51325ed5195c7f19; @@ -5378,7 +5379,6 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) out1[6] = 0xc02b1951cc3603f8; out1[7] = 0x5522624724163b74; } - /// The function fiat_bp512_msat returns the saturated representation of the prime modulus. /// /// Postconditions: @@ -5388,7 +5388,7 @@ pub fn fiat_bp512_set_one(out1: &mut fiat_bp512_montgomery_domain_field_element) /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { +pub const fn fiat_bp512_msat(out1: &mut [u64; 9]) { out1[0] = 0x28aa6056583a48f3; out1[1] = 0x2881ff2f2d82c685; out1[2] = 0xaecda12ae6a380e6; @@ -5399,7 +5399,6 @@ pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { out1[7] = 0xaadd9db8dbe9c48b; out1[8] = (0x0 as u64); } - /// The function fiat_bp512_divstep computes a divstep. /// /// Preconditions: @@ -5429,7 +5428,7 @@ pub fn fiat_bp512_msat(out1: &mut [u64; 9]) { /// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] /// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_divstep( +pub const fn fiat_bp512_divstep( out1: &mut u64, out2: &mut [u64; 9], out3: &mut [u64; 9], @@ -5872,7 +5871,6 @@ pub fn fiat_bp512_divstep( out5[6] = x229; out5[7] = x230; } - /// The function fiat_bp512_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). /// /// Postconditions: @@ -5882,7 +5880,7 @@ pub fn fiat_bp512_divstep( /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_divstep_precomp(out1: &mut [u64; 8]) { +pub const fn fiat_bp512_divstep_precomp(out1: &mut [u64; 8]) { out1[0] = 0x6bba0f9e8878ef1d; out1[1] = 0xdaeb7446fe513a69; out1[2] = 0x425e2db1a502204b; From c4561886eaf625aacdf8283454a696c0ebe83176 Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 15:26:09 +0200 Subject: [PATCH 5/7] fiat-constify scalar --- .../src/arithmetic/scalar/bp512_scalar_32.rs | 112 +++++++++--------- .../src/arithmetic/scalar/bp512_scalar_64.rs | 112 +++++++++--------- 2 files changed, 112 insertions(+), 112 deletions(-) diff --git a/bp512/src/arithmetic/scalar/bp512_scalar_32.rs b/bp512/src/arithmetic/scalar/bp512_scalar_32.rs index b4be391bd..0c567189a 100644 --- a/bp512/src/arithmetic/scalar/bp512_scalar_32.rs +++ b/bp512/src/arithmetic/scalar/bp512_scalar_32.rs @@ -1,3 +1,4 @@ +//! fiat-crypto output postprocessed by fiat-constify: //! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512_scalar 32 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp //! curve description: bp512_scalar //! machine_wordsize = 32 (from "32") @@ -16,24 +17,26 @@ //! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) //! twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) + (z[12] << 0x180) + (z[13] << 0x1a0) + (z[14] << 0x1c0) + (z[15] << 0x1e0) in //! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 - #![allow(unused_parens)] #![allow(non_camel_case_types)] - -/** fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. */ +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_scalar_u1 = u8; -/** fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. */ +/// fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_scalar_i1 = i8; -/** fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_scalar_u2 = u8; -/** fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_scalar_i2 = i8; - -/** The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_scalar_montgomery_domain_field_element(pub [u32; 16]); - impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_element { type Output = u32; #[inline] @@ -41,19 +44,16 @@ impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_eleme &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_scalar_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - -/** The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_scalar_non_montgomery_domain_field_element(pub [u32; 16]); - impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_element { type Output = u32; #[inline] @@ -61,14 +61,12 @@ impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_e &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - /// The function fiat_bp512_scalar_addcarryx_u32 is an addition with carry. /// /// Postconditions: @@ -83,7 +81,7 @@ impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_fiel /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_scalar_addcarryx_u32( +pub const fn fiat_bp512_scalar_addcarryx_u32( out1: &mut u32, out2: &mut fiat_bp512_scalar_u1, arg1: fiat_bp512_scalar_u1, @@ -96,7 +94,6 @@ pub fn fiat_bp512_scalar_addcarryx_u32( *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_scalar_subborrowx_u32 is a subtraction with borrow. /// /// Postconditions: @@ -111,7 +108,7 @@ pub fn fiat_bp512_scalar_addcarryx_u32( /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_scalar_subborrowx_u32( +pub const fn fiat_bp512_scalar_subborrowx_u32( out1: &mut u32, out2: &mut fiat_bp512_scalar_u1, arg1: fiat_bp512_scalar_u1, @@ -125,7 +122,6 @@ pub fn fiat_bp512_scalar_subborrowx_u32( *out2 = (((0x0 as fiat_bp512_scalar_i2) - (x2 as fiat_bp512_scalar_i2)) as fiat_bp512_scalar_u1); } - /// The function fiat_bp512_scalar_mulx_u32 is a multiplication, returning the full double-width result. /// /// Postconditions: @@ -139,14 +135,13 @@ pub fn fiat_bp512_scalar_subborrowx_u32( /// out1: [0x0 ~> 0xffffffff] /// out2: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_scalar_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { +pub const fn fiat_bp512_scalar_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg2: u32) { let x1: u64 = ((arg1 as u64) * (arg2 as u64)); let x2: u32 = ((x1 & (0xffffffff as u64)) as u32); let x3: u32 = ((x1 >> 32) as u32); *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_scalar_cmovznz_u32 is a single-word conditional move. /// /// Postconditions: @@ -159,7 +154,7 @@ pub fn fiat_bp512_scalar_mulx_u32(out1: &mut u32, out2: &mut u32, arg1: u32, arg /// Output Bounds: /// out1: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_scalar_cmovznz_u32( +pub const fn fiat_bp512_scalar_cmovznz_u32( out1: &mut u32, arg1: fiat_bp512_scalar_u1, arg2: u32, @@ -172,7 +167,6 @@ pub fn fiat_bp512_scalar_cmovznz_u32( let x3: u32 = ((x2 & arg3) | ((!x2) & arg2)); *out1 = x3; } - /// The function fiat_bp512_scalar_mul multiplies two field elements in the Montgomery domain. /// /// Preconditions: @@ -183,11 +177,14 @@ pub fn fiat_bp512_scalar_cmovznz_u32( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_mul( +pub const fn fiat_bp512_scalar_mul( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -4956,7 +4953,6 @@ pub fn fiat_bp512_scalar_mul( out1[14] = x3182; out1[15] = x3183; } - /// The function fiat_bp512_scalar_square squares a field element in the Montgomery domain. /// /// Preconditions: @@ -4966,10 +4962,12 @@ pub fn fiat_bp512_scalar_mul( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_square( +pub const fn fiat_bp512_scalar_square( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -9738,7 +9736,6 @@ pub fn fiat_bp512_scalar_square( out1[14] = x3182; out1[15] = x3183; } - /// The function fiat_bp512_scalar_add adds two field elements in the Montgomery domain. /// /// Preconditions: @@ -9749,11 +9746,14 @@ pub fn fiat_bp512_scalar_square( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_add( +pub const fn fiat_bp512_scalar_add( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_addcarryx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -9902,7 +9902,6 @@ pub fn fiat_bp512_scalar_add( out1[14] = x81; out1[15] = x82; } - /// The function fiat_bp512_scalar_sub subtracts two field elements in the Montgomery domain. /// /// Preconditions: @@ -9913,11 +9912,14 @@ pub fn fiat_bp512_scalar_add( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_sub( +pub const fn fiat_bp512_scalar_sub( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -10033,7 +10035,6 @@ pub fn fiat_bp512_scalar_sub( out1[14] = x62; out1[15] = x64; } - /// The function fiat_bp512_scalar_opp negates a field element in the Montgomery domain. /// /// Preconditions: @@ -10043,10 +10044,12 @@ pub fn fiat_bp512_scalar_sub( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_opp( +pub const fn fiat_bp512_scalar_opp( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let mut x1: u32 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_subborrowx_u32(&mut x1, &mut x2, 0x0, (0x0 as u32), (arg1[0])); @@ -10162,7 +10165,6 @@ pub fn fiat_bp512_scalar_opp( out1[14] = x62; out1[15] = x64; } - /// The function fiat_bp512_scalar_from_montgomery translates a field element out of the Montgomery domain. /// /// Preconditions: @@ -10172,10 +10174,12 @@ pub fn fiat_bp512_scalar_opp( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_from_montgomery( +pub const fn fiat_bp512_scalar_from_montgomery( out1: &mut fiat_bp512_scalar_non_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[0]); let mut x2: u32 = 0; let mut x3: u32 = 0; @@ -13347,7 +13351,6 @@ pub fn fiat_bp512_scalar_from_montgomery( out1[14] = x2037; out1[15] = x2038; } - /// The function fiat_bp512_scalar_to_montgomery translates a field element into the Montgomery domain. /// /// Preconditions: @@ -13357,10 +13360,12 @@ pub fn fiat_bp512_scalar_from_montgomery( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_to_montgomery( +pub const fn fiat_bp512_scalar_to_montgomery( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_non_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u32 = (arg1[1]); let x2: u32 = (arg1[2]); let x3: u32 = (arg1[3]); @@ -18133,7 +18138,6 @@ pub fn fiat_bp512_scalar_to_montgomery( out1[14] = x3105; out1[15] = x3106; } - /// The function fiat_bp512_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. /// /// Preconditions: @@ -18146,7 +18150,7 @@ pub fn fiat_bp512_scalar_to_montgomery( /// Output Bounds: /// out1: [0x0 ~> 0xffffffff] #[inline] -pub fn fiat_bp512_scalar_nonzero(out1: &mut u32, arg1: &[u32; 16]) { +pub const fn fiat_bp512_scalar_nonzero(out1: &mut u32, arg1: &[u32; 16]) { let x1: u32 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) @@ -18165,7 +18169,6 @@ pub fn fiat_bp512_scalar_nonzero(out1: &mut u32, arg1: &[u32; 16]) { | (arg1[15])))))))))))))))); *out1 = x1; } - /// The function fiat_bp512_scalar_selectznz is a multi-limb conditional select. /// /// Postconditions: @@ -18178,7 +18181,7 @@ pub fn fiat_bp512_scalar_nonzero(out1: &mut u32, arg1: &[u32; 16]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_scalar_selectznz( +pub const fn fiat_bp512_scalar_selectznz( out1: &mut [u32; 16], arg1: fiat_bp512_scalar_u1, arg2: &[u32; 16], @@ -18233,7 +18236,6 @@ pub fn fiat_bp512_scalar_selectznz( out1[14] = x15; out1[15] = x16; } - /// The function fiat_bp512_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. /// /// Preconditions: @@ -18246,7 +18248,7 @@ pub fn fiat_bp512_scalar_selectznz( /// Output Bounds: /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] -pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { +pub const fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { let x1: u32 = (arg1[15]); let x2: u32 = (arg1[14]); let x3: u32 = (arg1[13]); @@ -18424,7 +18426,6 @@ pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { out1[62] = x111; out1[63] = x112; } - /// The function fiat_bp512_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. /// /// Preconditions: @@ -18438,7 +18439,7 @@ pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u32; 16]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { +pub const fn fiat_bp512_scalar_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { let x1: u32 = (((arg1[63]) as u32) << 24); let x2: u32 = (((arg1[62]) as u32) << 16); let x3: u32 = (((arg1[61]) as u32) << 8); @@ -18568,7 +18569,6 @@ pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { out1[14] = x109; out1[15] = x112; } - /// The function fiat_bp512_scalar_set_one returns the field element one in the Montgomery domain. /// /// Postconditions: @@ -18576,7 +18576,10 @@ pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u32; 16], arg1: &[u8; 64]) { /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_field_element) { +pub const fn fiat_bp512_scalar_set_one( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; out1[0] = 0x6356ff97; out1[1] = 0x4a78697d; out1[2] = 0xf7a22522; @@ -18594,7 +18597,6 @@ pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_ out1[14] = 0x24163b74; out1[15] = 0x55226247; } - /// The function fiat_bp512_scalar_msat returns the saturated representation of the prime modulus. /// /// Postconditions: @@ -18604,7 +18606,7 @@ pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_ /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_scalar_msat(out1: &mut [u32; 17]) { +pub const fn fiat_bp512_scalar_msat(out1: &mut [u32; 17]) { out1[0] = 0x9ca90069; out1[1] = 0xb5879682; out1[2] = 0x85ddadd; @@ -18623,7 +18625,6 @@ pub fn fiat_bp512_scalar_msat(out1: &mut [u32; 17]) { out1[15] = 0xaadd9db8; out1[16] = (0x0 as u32); } - /// The function fiat_bp512_scalar_divstep computes a divstep. /// /// Preconditions: @@ -18653,7 +18654,7 @@ pub fn fiat_bp512_scalar_msat(out1: &mut [u32; 17]) { /// out4: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] /// out5: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_scalar_divstep( +pub const fn fiat_bp512_scalar_divstep( out1: &mut u32, out2: &mut [u32; 17], out3: &mut [u32; 17], @@ -19440,7 +19441,6 @@ pub fn fiat_bp512_scalar_divstep( out5[14] = x437; out5[15] = x438; } - /// The function fiat_bp512_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). /// /// Postconditions: @@ -19450,7 +19450,7 @@ pub fn fiat_bp512_scalar_divstep( /// Output Bounds: /// out1: [[0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff], [0x0 ~> 0xffffffff]] #[inline] -pub fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u32; 16]) { +pub const fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u32; 16]) { out1[0] = 0x2c366d57; out1[1] = 0x4277e35f; out1[2] = 0xb0e8321e; diff --git a/bp512/src/arithmetic/scalar/bp512_scalar_64.rs b/bp512/src/arithmetic/scalar/bp512_scalar_64.rs index 082c03b5c..1cab695d9 100644 --- a/bp512/src/arithmetic/scalar/bp512_scalar_64.rs +++ b/bp512/src/arithmetic/scalar/bp512_scalar_64.rs @@ -1,3 +1,4 @@ +//! fiat-crypto output postprocessed by fiat-constify: //! Autogenerated: fiat-crypto word-by-word-montgomery --lang Rust --inline bp512_scalar 64 0xaadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca70330870553e5c414ca92619418661197fac10471db1d381085ddaddb58796829ca90069 mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp //! curve description: bp512_scalar //! machine_wordsize = 64 (from "64") @@ -16,24 +17,26 @@ //! bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) + (z[48] << 0x180) + (z[49] << 0x188) + (z[50] << 0x190) + (z[51] << 0x198) + (z[52] << 0x1a0) + (z[53] << 0x1a8) + (z[54] << 0x1b0) + (z[55] << 0x1b8) + (z[56] << 0x1c0) + (z[57] << 0x1c8) + (z[58] << 0x1d0) + (z[59] << 0x1d8) + (z[60] << 0x1e0) + (z[61] << 0x1e8) + (z[62] << 0x1f0) + (z[63] << 0x1f8) //! twos_complement_eval z = let x1 := z[0] + (z[1] << 64) + (z[2] << 128) + (z[3] << 192) + (z[4] << 256) + (z[5] << 0x140) + (z[6] << 0x180) + (z[7] << 0x1c0) in //! if x1 & (2^512-1) < 2^511 then x1 & (2^512-1) else (x1 & (2^512-1)) - 2^512 - #![allow(unused_parens)] #![allow(non_camel_case_types)] - -/** fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. */ +#![allow( + clippy::identity_op, + clippy::too_many_arguments, + clippy::unnecessary_cast, + dead_code +)] +/// fiat_bp512_scalar_u1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_scalar_u1 = u8; -/** fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. */ +/// fiat_bp512_scalar_i1 represents values of 1 bits, stored in one byte. pub type fiat_bp512_scalar_i1 = i8; -/** fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_scalar_u2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_scalar_u2 = u8; -/** fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. */ +/// fiat_bp512_scalar_i2 represents values of 2 bits, stored in one byte. pub type fiat_bp512_scalar_i2 = i8; - -/** The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_scalar_montgomery_domain_field_element is a field element in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_scalar_montgomery_domain_field_element(pub [u64; 8]); - impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_element { type Output = u64; #[inline] @@ -41,19 +44,16 @@ impl core::ops::Index for fiat_bp512_scalar_montgomery_domain_field_eleme &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_scalar_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - -/** The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. */ -/** Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] */ -#[derive(Clone, Copy)] +/// The type fiat_bp512_scalar_non_montgomery_domain_field_element is a field element NOT in the Montgomery domain. +/// Bounds: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] pub struct fiat_bp512_scalar_non_montgomery_domain_field_element(pub [u64; 8]); - impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_element { type Output = u64; #[inline] @@ -61,14 +61,12 @@ impl core::ops::Index for fiat_bp512_scalar_non_montgomery_domain_field_e &self.0[index] } } - impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_field_element { #[inline] fn index_mut(&mut self, index: usize) -> &mut Self::Output { &mut self.0[index] } } - /// The function fiat_bp512_scalar_addcarryx_u64 is an addition with carry. /// /// Postconditions: @@ -83,7 +81,7 @@ impl core::ops::IndexMut for fiat_bp512_scalar_non_montgomery_domain_fiel /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_scalar_addcarryx_u64( +pub const fn fiat_bp512_scalar_addcarryx_u64( out1: &mut u64, out2: &mut fiat_bp512_scalar_u1, arg1: fiat_bp512_scalar_u1, @@ -96,7 +94,6 @@ pub fn fiat_bp512_scalar_addcarryx_u64( *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_scalar_subborrowx_u64 is a subtraction with borrow. /// /// Postconditions: @@ -111,7 +108,7 @@ pub fn fiat_bp512_scalar_addcarryx_u64( /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0x1] #[inline] -pub fn fiat_bp512_scalar_subborrowx_u64( +pub const fn fiat_bp512_scalar_subborrowx_u64( out1: &mut u64, out2: &mut fiat_bp512_scalar_u1, arg1: fiat_bp512_scalar_u1, @@ -125,7 +122,6 @@ pub fn fiat_bp512_scalar_subborrowx_u64( *out2 = (((0x0 as fiat_bp512_scalar_i2) - (x2 as fiat_bp512_scalar_i2)) as fiat_bp512_scalar_u1); } - /// The function fiat_bp512_scalar_mulx_u64 is a multiplication, returning the full double-width result. /// /// Postconditions: @@ -139,14 +135,13 @@ pub fn fiat_bp512_scalar_subborrowx_u64( /// out1: [0x0 ~> 0xffffffffffffffff] /// out2: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_scalar_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { +pub const fn fiat_bp512_scalar_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg2: u64) { let x1: u128 = ((arg1 as u128) * (arg2 as u128)); let x2: u64 = ((x1 & (0xffffffffffffffff as u128)) as u64); let x3: u64 = ((x1 >> 64) as u64); *out1 = x2; *out2 = x3; } - /// The function fiat_bp512_scalar_cmovznz_u64 is a single-word conditional move. /// /// Postconditions: @@ -159,7 +154,7 @@ pub fn fiat_bp512_scalar_mulx_u64(out1: &mut u64, out2: &mut u64, arg1: u64, arg /// Output Bounds: /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_scalar_cmovznz_u64( +pub const fn fiat_bp512_scalar_cmovznz_u64( out1: &mut u64, arg1: fiat_bp512_scalar_u1, arg2: u64, @@ -172,7 +167,6 @@ pub fn fiat_bp512_scalar_cmovznz_u64( let x3: u64 = ((x2 & arg3) | ((!x2) & arg2)); *out1 = x3; } - /// The function fiat_bp512_scalar_mul multiplies two field elements in the Montgomery domain. /// /// Preconditions: @@ -183,11 +177,14 @@ pub fn fiat_bp512_scalar_cmovznz_u64( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_mul( +pub const fn fiat_bp512_scalar_mul( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -1420,7 +1417,6 @@ pub fn fiat_bp512_scalar_mul( out1[6] = x822; out1[7] = x823; } - /// The function fiat_bp512_scalar_square squares a field element in the Montgomery domain. /// /// Preconditions: @@ -1430,10 +1426,12 @@ pub fn fiat_bp512_scalar_mul( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_square( +pub const fn fiat_bp512_scalar_square( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -2666,7 +2664,6 @@ pub fn fiat_bp512_scalar_square( out1[6] = x822; out1[7] = x823; } - /// The function fiat_bp512_scalar_add adds two field elements in the Montgomery domain. /// /// Preconditions: @@ -2677,11 +2674,14 @@ pub fn fiat_bp512_scalar_square( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_add( +pub const fn fiat_bp512_scalar_add( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_addcarryx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -2758,7 +2758,6 @@ pub fn fiat_bp512_scalar_add( out1[6] = x41; out1[7] = x42; } - /// The function fiat_bp512_scalar_sub subtracts two field elements in the Montgomery domain. /// /// Preconditions: @@ -2769,11 +2768,14 @@ pub fn fiat_bp512_scalar_add( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_sub( +pub const fn fiat_bp512_scalar_sub( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, arg2: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; + let arg2 = &arg2.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (arg1[0]), (arg2[0])); @@ -2833,7 +2835,6 @@ pub fn fiat_bp512_scalar_sub( out1[6] = x30; out1[7] = x32; } - /// The function fiat_bp512_scalar_opp negates a field element in the Montgomery domain. /// /// Preconditions: @@ -2843,10 +2844,12 @@ pub fn fiat_bp512_scalar_sub( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_opp( +pub const fn fiat_bp512_scalar_opp( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let mut x1: u64 = 0; let mut x2: fiat_bp512_scalar_u1 = 0; fiat_bp512_scalar_subborrowx_u64(&mut x1, &mut x2, 0x0, (0x0 as u64), (arg1[0])); @@ -2906,7 +2909,6 @@ pub fn fiat_bp512_scalar_opp( out1[6] = x30; out1[7] = x32; } - /// The function fiat_bp512_scalar_from_montgomery translates a field element out of the Montgomery domain. /// /// Preconditions: @@ -2916,10 +2918,12 @@ pub fn fiat_bp512_scalar_opp( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_from_montgomery( +pub const fn fiat_bp512_scalar_from_montgomery( out1: &mut fiat_bp512_scalar_non_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[0]); let mut x2: u64 = 0; let mut x3: u64 = 0; @@ -3739,7 +3743,6 @@ pub fn fiat_bp512_scalar_from_montgomery( out1[6] = x509; out1[7] = x510; } - /// The function fiat_bp512_scalar_to_montgomery translates a field element into the Montgomery domain. /// /// Preconditions: @@ -3749,10 +3752,12 @@ pub fn fiat_bp512_scalar_from_montgomery( /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_to_montgomery( +pub const fn fiat_bp512_scalar_to_montgomery( out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, arg1: &fiat_bp512_scalar_non_montgomery_domain_field_element, ) { + let out1 = &mut out1.0; + let arg1 = &arg1.0; let x1: u64 = (arg1[1]); let x2: u64 = (arg1[2]); let x3: u64 = (arg1[3]); @@ -4989,7 +4994,6 @@ pub fn fiat_bp512_scalar_to_montgomery( out1[6] = x785; out1[7] = x786; } - /// The function fiat_bp512_scalar_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. /// /// Preconditions: @@ -5002,13 +5006,12 @@ pub fn fiat_bp512_scalar_to_montgomery( /// Output Bounds: /// out1: [0x0 ~> 0xffffffffffffffff] #[inline] -pub fn fiat_bp512_scalar_nonzero(out1: &mut u64, arg1: &[u64; 8]) { +pub const fn fiat_bp512_scalar_nonzero(out1: &mut u64, arg1: &[u64; 8]) { let x1: u64 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7])))))))); *out1 = x1; } - /// The function fiat_bp512_scalar_selectznz is a multi-limb conditional select. /// /// Postconditions: @@ -5021,7 +5024,7 @@ pub fn fiat_bp512_scalar_nonzero(out1: &mut u64, arg1: &[u64; 8]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_scalar_selectznz( +pub const fn fiat_bp512_scalar_selectznz( out1: &mut [u64; 8], arg1: fiat_bp512_scalar_u1, arg2: &[u64; 8], @@ -5052,7 +5055,6 @@ pub fn fiat_bp512_scalar_selectznz( out1[6] = x7; out1[7] = x8; } - /// The function fiat_bp512_scalar_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. /// /// Preconditions: @@ -5065,7 +5067,7 @@ pub fn fiat_bp512_scalar_selectznz( /// Output Bounds: /// out1: [[0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff], [0x0 ~> 0xff]] #[inline] -pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { +pub const fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { let x1: u64 = (arg1[7]); let x2: u64 = (arg1[6]); let x3: u64 = (arg1[5]); @@ -5251,7 +5253,6 @@ pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { out1[62] = x119; out1[63] = x120; } - /// The function fiat_bp512_scalar_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. /// /// Preconditions: @@ -5265,7 +5266,7 @@ pub fn fiat_bp512_scalar_to_bytes(out1: &mut [u8; 64], arg1: &[u64; 8]) { /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { +pub const fn fiat_bp512_scalar_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { let x1: u64 = (((arg1[63]) as u64) << 56); let x2: u64 = (((arg1[62]) as u64) << 48); let x3: u64 = (((arg1[61]) as u64) << 40); @@ -5395,7 +5396,6 @@ pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { out1[6] = x113; out1[7] = x120; } - /// The function fiat_bp512_scalar_set_one returns the field element one in the Montgomery domain. /// /// Postconditions: @@ -5403,7 +5403,10 @@ pub fn fiat_bp512_scalar_from_bytes(out1: &mut [u64; 8], arg1: &[u8; 64]) { /// 0 ≤ eval out1 < m /// #[inline] -pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_field_element) { +pub const fn fiat_bp512_scalar_set_one( + out1: &mut fiat_bp512_scalar_montgomery_domain_field_element, +) { + let out1 = &mut out1.0; out1[0] = 0x4a78697d6356ff97; out1[1] = 0xe24e2c7ef7a22522; out1[2] = 0xbe799ee68053efb8; @@ -5413,7 +5416,6 @@ pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_ out1[6] = 0xc02b1951cc3603f8; out1[7] = 0x5522624724163b74; } - /// The function fiat_bp512_scalar_msat returns the saturated representation of the prime modulus. /// /// Postconditions: @@ -5423,7 +5425,7 @@ pub fn fiat_bp512_scalar_set_one(out1: &mut fiat_bp512_scalar_montgomery_domain_ /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_scalar_msat(out1: &mut [u64; 9]) { +pub const fn fiat_bp512_scalar_msat(out1: &mut [u64; 9]) { out1[0] = 0xb58796829ca90069; out1[1] = 0x1db1d381085ddadd; out1[2] = 0x418661197fac1047; @@ -5434,7 +5436,6 @@ pub fn fiat_bp512_scalar_msat(out1: &mut [u64; 9]) { out1[7] = 0xaadd9db8dbe9c48b; out1[8] = (0x0 as u64); } - /// The function fiat_bp512_scalar_divstep computes a divstep. /// /// Preconditions: @@ -5464,7 +5465,7 @@ pub fn fiat_bp512_scalar_msat(out1: &mut [u64; 9]) { /// out4: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] /// out5: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_scalar_divstep( +pub const fn fiat_bp512_scalar_divstep( out1: &mut u64, out2: &mut [u64; 9], out3: &mut [u64; 9], @@ -5907,7 +5908,6 @@ pub fn fiat_bp512_scalar_divstep( out5[6] = x229; out5[7] = x230; } - /// The function fiat_bp512_scalar_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). /// /// Postconditions: @@ -5917,7 +5917,7 @@ pub fn fiat_bp512_scalar_divstep( /// Output Bounds: /// out1: [[0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff], [0x0 ~> 0xffffffffffffffff]] #[inline] -pub fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u64; 8]) { +pub const fn fiat_bp512_scalar_divstep_precomp(out1: &mut [u64; 8]) { out1[0] = 0x4277e35f2c366d57; out1[1] = 0x82388037b0e8321e; out1[2] = 0x730f5cd689f5b0c3; From 9cf993f44bd27968c3d97552489846db3f32b230 Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 16:12:07 +0200 Subject: [PATCH 6/7] bp512: todo!/unimplemented! --- bp512/Cargo.toml | 2 +- bp512/README.md | 16 +++++++------- bp512/src/arithmetic/field.rs | 34 +++++++++++++++-------------- bp512/src/arithmetic/scalar.rs | 40 ++++++++++++++++++---------------- 4 files changed, 48 insertions(+), 44 deletions(-) diff --git a/bp512/Cargo.toml b/bp512/Cargo.toml index 52dffaf69..be19dcd9b 100644 --- a/bp512/Cargo.toml +++ b/bp512/Cargo.toml @@ -23,7 +23,7 @@ primeorder = { version = "=0.14.0-pre.2", optional = true, path = "../primeorder sha2 = { version = "=0.11.0-pre.5", optional = true, default-features = false } [features] -default = ["pkcs8", "std", "arithmetic"] +default = ["pkcs8", "std"] alloc = ["ecdsa?/alloc", "elliptic-curve/alloc", "primeorder?/alloc"] std = ["alloc", "ecdsa?/std", "elliptic-curve/std"] diff --git a/bp512/README.md b/bp512/README.md index f820fe810..1fce7db5a 100644 --- a/bp512/README.md +++ b/bp512/README.md @@ -1,4 +1,4 @@ -# [RustCrypto]: Brainpool P-384 elliptic curves +# [RustCrypto]: Brainpool P-512 elliptic curves [![crate][crate-image]][crate-link] [![Docs][docs-image]][docs-link] @@ -7,7 +7,7 @@ [![Project Chat][chat-image]][chat-link] [![Build Status][build-image]][build-link] -Brainpool P-384 (brainpoolP384r1 and brainpoolP384t1) elliptic curve types +Brainpool P-512 (brainpoolP512r1 and brainpoolP512t1) elliptic curve types implemented in terms of traits from the [`elliptic-curve`] crate. [Documentation][docs-link] @@ -29,16 +29,16 @@ dual licensed as above, without any additional terms or conditions. [//]: # (badges) -[crate-image]: https://img.shields.io/crates/v/bp384 -[crate-link]: https://crates.io/crates/bp384 -[docs-image]: https://docs.rs/bp384/badge.svg -[docs-link]: https://docs.rs/bp384/ +[crate-image]: https://img.shields.io/crates/v/bp512 +[crate-link]: https://crates.io/crates/bp512 +[docs-image]: https://docs.rs/bp512/badge.svg +[docs-link]: https://docs.rs/bp512/ [license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg [rustc-image]: https://img.shields.io/badge/rustc-1.85+-blue.svg [chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg [chat-link]: https://rustcrypto.zulipchat.com/#narrow/stream/260040-elliptic-curves -[build-image]: https://github.com/RustCrypto/elliptic-curves/workflows/bp384/badge.svg?branch=master&event=push -[build-link]: https://github.com/RustCrypto/elliptic-curves/actions?query=workflow:bp384 +[build-image]: https://github.com/RustCrypto/elliptic-curves/workflows/bp512/badge.svg?branch=master&event=push +[build-link]: https://github.com/RustCrypto/elliptic-curves/actions?query=workflow:bp512 [//]: # (general links) diff --git a/bp512/src/arithmetic/field.rs b/bp512/src/arithmetic/field.rs index 3279436cc..9e9557f7f 100644 --- a/bp512/src/arithmetic/field.rs +++ b/bp512/src/arithmetic/field.rs @@ -26,7 +26,7 @@ const MODULUS_HEX: &str = "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639 const MODULUS: U512 = U512::from_be_hex(MODULUS_HEX); -/// Element of the brainpoolP384's base field used for curve point coordinates. +/// Element of the brainpoolP512's base field used for curve point coordinates. #[derive(Clone, Copy)] pub struct FieldElement(pub(super) U512); @@ -62,18 +62,19 @@ impl FieldElement { /// Returns the square root of self mod p, or `None` if no square root /// exists. pub fn sqrt(&self) -> CtOption { - // Because p ≡ 3 mod 4 for brainpoolP384's base field modulus, sqrt can - // be implemented with only one exponentiation via the computation of - // self^((p + 1) // 4) (mod p). - let sqrt = self.pow_vartime(&[ - 0x61d1c004cc41fb15, - 0xeb34e9ca6407469c, - 0x04ac76865fedc448, - 0xc54bdc427b5515ad, - 0x03d75bdf94399077, - 0x232e47a0a8ce1b4a, - ]); - CtOption::new(sqrt, sqrt.square().ct_eq(self)) + unimplemented!("bp512 sqrt field unimplemented") + // // Because p ≡ 3 mod 4 for brainpoolP384's base field modulus, sqrt can + // // be implemented with only one exponentiation via the computation of + // // self^((p + 1) // 4) (mod p). + // let sqrt = self.pow_vartime(&[ + // 0x61d1c004cc41fb15, + // 0xeb34e9ca6407469c, + // 0x04ac76865fedc448, + // 0xc54bdc427b5515ad, + // 0x03d75bdf94399077, + // 0x232e47a0a8ce1b4a, + // ]); + // CtOption::new(sqrt, sqrt.square().ct_eq(self)) } } @@ -81,13 +82,14 @@ impl PrimeField for FieldElement { type Repr = FieldBytes; const MODULUS: &'static str = MODULUS_HEX; - const NUM_BITS: u32 = 384; - const CAPACITY: u32 = 383; + const NUM_BITS: u32 = 512; + const CAPACITY: u32 = 511; const TWO_INV: Self = Self::from_u64(2).invert_unchecked(); const MULTIPLICATIVE_GENERATOR: Self = Self::from_u64(3); const S: u32 = 1; + // TODO: is p minus 1 correct? const ROOT_OF_UNITY: Self = Self::from_hex( - "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f3", + "aadd9db8dbe9c48b3fd4e6ae33c9fc07cb308db3b3c9d20ed6639cca703308717d4d9b009bc66842aecda12ae6a380e62881ff2f2d82c68528aa6056583a48f2", ); const ROOT_OF_UNITY_INV: Self = Self::ROOT_OF_UNITY.invert_unchecked(); const DELTA: Self = Self::from_u64(9); diff --git a/bp512/src/arithmetic/scalar.rs b/bp512/src/arithmetic/scalar.rs index f9ba4422f..c3550e2e2 100644 --- a/bp512/src/arithmetic/scalar.rs +++ b/bp512/src/arithmetic/scalar.rs @@ -1,4 +1,4 @@ -//! brainpoolP384 scalar field elements. +//! brainpoolP512 scalar field elements. //! //! Arithmetic implementations have been synthesized using fiat-crypto. //! @@ -28,7 +28,7 @@ use elliptic_curve::{ #[cfg(doc)] use core::ops::{Add, Mul, Sub}; -/// Element of the brainpoolP384's scalar field. +/// Element of the brainpoolP512's scalar field. #[derive(Clone, Copy, PartialOrd, Ord)] pub struct Scalar(pub(super) U512); @@ -65,22 +65,23 @@ impl Scalar { /// /// (page 10, algorithm 3) pub fn sqrt(&self) -> CtOption { - let w = &[ - 0x077106405d208cac, - 0xf9e756d5ed6ff862, - 0x63e2cdcd958084b4, - 0xe2a5ee213daa8ad6, - 0x01ebadefca1cc83b, - 0x119723d054670da5, - ]; - let t = Self::from_u64(2).pow_vartime(w); - let a1 = self.pow_vartime(w); - let a0 = (a1.square() * self).square(); - let b = t * a1; - let ab = self * &b; - let i = Self::from_u64(2) * ab * b; - let x = ab * (i - Self::ONE); - CtOption::new(x, !a0.ct_eq(&-Self::ONE)) + unimplemented!("bp512 sqrt scalar unimplemented") + // let w = &[ + // 0x077106405d208cac, + // 0xf9e756d5ed6ff862, + // 0x63e2cdcd958084b4, + // 0xe2a5ee213daa8ad6, + // 0x01ebadefca1cc83b, + // 0x119723d054670da5, + // ]; + // let t = Self::from_u64(2).pow_vartime(w); + // let a1 = self.pow_vartime(w); + // let a0 = (a1.square() * self).square(); + // let b = t * a1; + // let ab = self * &b; + // let i = Self::from_u64(2) * ab * b; + // let x = ab * (i - Self::ONE); + // CtOption::new(x, !a0.ct_eq(&-Self::ONE)) } } @@ -114,8 +115,9 @@ impl PrimeField for Scalar { const TWO_INV: Self = Self::from_u64(2).invert_unchecked(); const MULTIPLICATIVE_GENERATOR: Self = Self::from_u64(2); const S: u32 = 2; + // TODO: invalid const ROOT_OF_UNITY: Self = Self::from_hex( - "76cdc6369fb54dde55a851fce47cc5f830bb074c85684b3ee476be128dc50cfa8602aeecf53a1982fcf3b95f8d4258ff", + "76cdc6369fb54dde55a851fce47cc5f830bb074c85684b3ee476be128dc50cfa8602aeecf53a1982fcf3b95f8d4258ff76cdc6369fb54dde55a851fce47cc5f8", ); const ROOT_OF_UNITY_INV: Self = Self::ROOT_OF_UNITY.invert_unchecked(); const DELTA: Self = Self::from_u64(16); From 2196473c50d5141c5a0c7f9c2699b6aadee46d2b Mon Sep 17 00:00:00 2001 From: dishmaker <141624503+dishmaker@users.noreply.github.com> Date: Thu, 8 May 2025 16:12:46 +0200 Subject: [PATCH 7/7] bp512 github workflow --- .github/workflows/bp512.yml | 73 +++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 .github/workflows/bp512.yml diff --git a/.github/workflows/bp512.yml b/.github/workflows/bp512.yml new file mode 100644 index 000000000..6262699a3 --- /dev/null +++ b/.github/workflows/bp512.yml @@ -0,0 +1,73 @@ +name: bp512 + +on: + pull_request: + paths: + - ".github/workflows/bp512.yml" + - "bp512/**" + - "Cargo.*" + push: + branches: master + +defaults: + run: + working-directory: bp512 + +env: + CARGO_INCREMENTAL: 0 + RUSTFLAGS: "-Dwarnings" + RUSTDOCFLAGS: "-Dwarnings" + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - 1.85.0 # MSRV + - stable + target: + - thumbv7em-none-eabi + - wasm32-unknown-unknown + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: ${{ matrix.rust }} + targets: ${{ matrix.target }} + - run: cargo build --target ${{ matrix.target }} --release --no-default-features + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features alloc + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features arithmetic + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features ecdsa + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features pem + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features pkcs8 + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features serde + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features sha384 + - run: cargo build --target ${{ matrix.target }} --release --no-default-features --features ecdsa,pem,pkcs8,serde,sha384 + + test: + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - 1.85.0 # MSRV + - stable + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@master + with: + toolchain: ${{ matrix.rust }} + - run: cargo check --all-features + - run: cargo test --no-default-features + - run: cargo test + - run: cargo test --all-features + + doc: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: RustCrypto/actions/cargo-cache@master + - uses: dtolnay/rust-toolchain@master + with: + toolchain: stable + - run: cargo doc --all-features