/* Autogenerated: 'src/ExtractionOCaml/word_by_word_montgomery' --lang Java --cmovznz-by-mul --widen-carry --widen-bytes --internal-static --package-name fiat_crypto --class-case UpperCamelCase --no-field-element-typedefs P256 32 '2^256 - 2^224 + 2^192 + 2^96 - 1' mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp */
/* curve description: P256 */
/* 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 = 0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff (from "2^256 - 2^224 + 2^192 + 2^96 - 1") */
/*                                                                    */
/* 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) */
/*   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) */
/*   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) in */
/*                            if x1 & (2^256-1) < 2^255 then x1 & (2^256-1) else (x1 & (2^256-1)) - 2^256 */

package fiat_crypto;

public final class FiatP256 {

static class Box<T> {
  private T value;
  public Box(T value) { this.value = value; }
  public void set(T value) { this.value = value; }
  public T get() { return this.value; }
}



/**
 * The function fiat_P256_addcarryx_u32 is an addition with carry. <p>
 * <p>
 * Postconditions: <p>
 *   out1 = (arg1 + arg2 + arg3) mod 2^32 <p>
 *   out2 = ⌊(arg1 + arg2 + arg3) / 2^32⌋ <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0x1] <p>
 *   arg2: [0x0 ~&gt; 0xffffffff] <p>
 *   arg3: [0x0 ~&gt; 0xffffffff] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 *   out2: [0x0 ~&gt; 0x1] <p>
 */
static void fiat_P256_addcarryx_u32(Box<Integer> out1, Box<Integer> out2, int arg1, int arg2, int arg3) {
  long x1 = (((long) Integer.toUnsignedLong(((Number) (arg1)).intValue()) + (long) Integer.toUnsignedLong(((Number) (arg2)).intValue())) + (long) Integer.toUnsignedLong(((Number) (arg3)).intValue()));
  int x2 = ((int) Integer.toUnsignedLong(((Number) (x1)).intValue()) & 0xffffffff);
  int x3 = (int) Integer.toUnsignedLong(((Number) ((x1 >>> 32))).intValue());
  out1.set(x2);
  out2.set(x3);
}

/**
 * The function fiat_P256_subborrowx_u32 is a subtraction with borrow. <p>
 * <p>
 * Postconditions: <p>
 *   out1 = (-arg1 + arg2 + -arg3) mod 2^32 <p>
 *   out2 = -⌊(-arg1 + arg2 + -arg3) / 2^32⌋ <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0x1] <p>
 *   arg2: [0x0 ~&gt; 0xffffffff] <p>
 *   arg3: [0x0 ~&gt; 0xffffffff] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 *   out2: [0x0 ~&gt; 0x1] <p>
 */
static void fiat_P256_subborrowx_u32(Box<Integer> out1, Box<Integer> out2, int arg1, int arg2, int arg3) {
  long x1 = (((long) Integer.toUnsignedLong(((Number) (arg2)).intValue()) - (long) Integer.toUnsignedLong(((Number) (arg1)).intValue())) - (long) Integer.toUnsignedLong(((Number) (arg3)).intValue()));
  int x2 = (int) Integer.toUnsignedLong(((Number) ((x1 >>> 32))).intValue());
  int x3 = ((int) Integer.toUnsignedLong(((Number) (x1)).intValue()) & 0xffffffff);
  out1.set(x3);
  out2.set(((int) Integer.toUnsignedLong(((Number) (0x0)).intValue()) - (int) Integer.toUnsignedLong(((Number) (x2)).intValue())));
}

/**
 * The function fiat_P256_mulx_u32 is a multiplication, returning the full double-width result. <p>
 * <p>
 * Postconditions: <p>
 *   out1 = (arg1 * arg2) mod 2^32 <p>
 *   out2 = ⌊arg1 * arg2 / 2^32⌋ <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0xffffffff] <p>
 *   arg2: [0x0 ~&gt; 0xffffffff] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 *   out2: [0x0 ~&gt; 0xffffffff] <p>
 */
static void fiat_P256_mulx_u32(Box<Integer> out1, Box<Integer> out2, int arg1, int arg2) {
  long x1 = ((long) Integer.toUnsignedLong(((Number) (arg1)).intValue()) * (long) Integer.toUnsignedLong(((Number) (arg2)).intValue()));
  int x2 = ((int) Integer.toUnsignedLong(((Number) (x1)).intValue()) & 0xffffffff);
  int x3 = (int) Integer.toUnsignedLong(((Number) ((x1 >>> 32))).intValue());
  out1.set(x2);
  out2.set(x3);
}

/**
 * The function fiat_P256_cmovznz_u32 is a single-word conditional move. <p>
 * <p>
 * Postconditions: <p>
 *   out1 = (if arg1 = 0 then arg2 else arg3) <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0x1] <p>
 *   arg2: [0x0 ~&gt; 0xffffffff] <p>
 *   arg3: [0x0 ~&gt; 0xffffffff] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 */
static void fiat_P256_cmovznz_u32(Box<Integer> out1, int arg1, int arg2, int arg3) {
  int x1 = (arg1 * 0xffffffff);
  int x2 = ((x1 & arg3) | ((~x1) & arg2));
  out1.set(x2);
}

/**
 * The function fiat_P256_mul multiplies two field elements in the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 *   0 ≤ eval arg2 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg2)) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_mul(int[] out1, final int[] arg1, final int[] arg2) {
  int x1 = (arg1[1]);
  int x2 = (arg1[2]);
  int x3 = (arg1[3]);
  int x4 = (arg1[4]);
  int x5 = (arg1[5]);
  int x6 = (arg1[6]);
  int x7 = (arg1[7]);
  int x8 = (arg1[0]);
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x9, x10, x8, (arg2[7]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x11, x12, x8, (arg2[6]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x13, x14, x8, (arg2[5]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x15, x16, x8, (arg2[4]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x17, x18, x8, (arg2[3]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x19, x20, x8, (arg2[2]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x21, x22, x8, (arg2[1]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x23, x24, x8, (arg2[0]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x25, x26, 0x0, (x24).get(), (x21).get());
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x27, x28, (x26).get(), (x22).get(), (x19).get());
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x29, x30, (x28).get(), (x20).get(), (x17).get());
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x31, x32, (x30).get(), (x18).get(), (x15).get());
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x33, x34, (x32).get(), (x16).get(), (x13).get());
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x35, x36, (x34).get(), (x14).get(), (x11).get());
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x37, x38, (x36).get(), (x12).get(), (x9).get());
  int x39 = ((x38).get() + (x10).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x40, x41, (x23).get(), 0xffffffff);
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x42, x43, (x23).get(), 0xffffffff);
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x44, x45, (x23).get(), 0xffffffff);
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x46, x47, (x23).get(), 0xffffffff);
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x48, x49, 0x0, (x47).get(), (x44).get());
  Box<Integer> x50 = new Box<Integer>((int)0);
  Box<Integer> x51 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x50, x51, (x49).get(), (x45).get(), (x42).get());
  int x52 = ((x51).get() + (x43).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x53, x54, 0x0, (x23).get(), (x46).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x55, x56, (x54).get(), (x25).get(), (x48).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x57, x58, (x56).get(), (x27).get(), (x50).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x59, x60, (x58).get(), (x29).get(), x52);
  Box<Integer> x61 = new Box<Integer>((int)0);
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x61, x62, (x60).get(), (x31).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x63 = new Box<Integer>((int)0);
  Box<Integer> x64 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x63, x64, (x62).get(), (x33).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x65 = new Box<Integer>((int)0);
  Box<Integer> x66 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x65, x66, (x64).get(), (x35).get(), (x23).get());
  Box<Integer> x67 = new Box<Integer>((int)0);
  Box<Integer> x68 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x67, x68, (x66).get(), (x37).get(), (x40).get());
  Box<Integer> x69 = new Box<Integer>((int)0);
  Box<Integer> x70 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x69, x70, (x68).get(), x39, (x41).get());
  Box<Integer> x71 = new Box<Integer>((int)0);
  Box<Integer> x72 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x71, x72, x1, (arg2[7]));
  Box<Integer> x73 = new Box<Integer>((int)0);
  Box<Integer> x74 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x73, x74, x1, (arg2[6]));
  Box<Integer> x75 = new Box<Integer>((int)0);
  Box<Integer> x76 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x75, x76, x1, (arg2[5]));
  Box<Integer> x77 = new Box<Integer>((int)0);
  Box<Integer> x78 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x77, x78, x1, (arg2[4]));
  Box<Integer> x79 = new Box<Integer>((int)0);
  Box<Integer> x80 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x79, x80, x1, (arg2[3]));
  Box<Integer> x81 = new Box<Integer>((int)0);
  Box<Integer> x82 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x81, x82, x1, (arg2[2]));
  Box<Integer> x83 = new Box<Integer>((int)0);
  Box<Integer> x84 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x83, x84, x1, (arg2[1]));
  Box<Integer> x85 = new Box<Integer>((int)0);
  Box<Integer> x86 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x85, x86, x1, (arg2[0]));
  Box<Integer> x87 = new Box<Integer>((int)0);
  Box<Integer> x88 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x87, x88, 0x0, (x86).get(), (x83).get());
  Box<Integer> x89 = new Box<Integer>((int)0);
  Box<Integer> x90 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x89, x90, (x88).get(), (x84).get(), (x81).get());
  Box<Integer> x91 = new Box<Integer>((int)0);
  Box<Integer> x92 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x91, x92, (x90).get(), (x82).get(), (x79).get());
  Box<Integer> x93 = new Box<Integer>((int)0);
  Box<Integer> x94 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x93, x94, (x92).get(), (x80).get(), (x77).get());
  Box<Integer> x95 = new Box<Integer>((int)0);
  Box<Integer> x96 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x95, x96, (x94).get(), (x78).get(), (x75).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x97, x98, (x96).get(), (x76).get(), (x73).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x99, x100, (x98).get(), (x74).get(), (x71).get());
  int x101 = ((x100).get() + (x72).get());
  Box<Integer> x102 = new Box<Integer>((int)0);
  Box<Integer> x103 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x102, x103, 0x0, (x55).get(), (x85).get());
  Box<Integer> x104 = new Box<Integer>((int)0);
  Box<Integer> x105 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x104, x105, (x103).get(), (x57).get(), (x87).get());
  Box<Integer> x106 = new Box<Integer>((int)0);
  Box<Integer> x107 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x106, x107, (x105).get(), (x59).get(), (x89).get());
  Box<Integer> x108 = new Box<Integer>((int)0);
  Box<Integer> x109 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x108, x109, (x107).get(), (x61).get(), (x91).get());
  Box<Integer> x110 = new Box<Integer>((int)0);
  Box<Integer> x111 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x110, x111, (x109).get(), (x63).get(), (x93).get());
  Box<Integer> x112 = new Box<Integer>((int)0);
  Box<Integer> x113 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x112, x113, (x111).get(), (x65).get(), (x95).get());
  Box<Integer> x114 = new Box<Integer>((int)0);
  Box<Integer> x115 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x114, x115, (x113).get(), (x67).get(), (x97).get());
  Box<Integer> x116 = new Box<Integer>((int)0);
  Box<Integer> x117 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x116, x117, (x115).get(), (x69).get(), (x99).get());
  Box<Integer> x118 = new Box<Integer>((int)0);
  Box<Integer> x119 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x118, x119, (x117).get(), (x70).get(), x101);
  Box<Integer> x120 = new Box<Integer>((int)0);
  Box<Integer> x121 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x120, x121, (x102).get(), 0xffffffff);
  Box<Integer> x122 = new Box<Integer>((int)0);
  Box<Integer> x123 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x122, x123, (x102).get(), 0xffffffff);
  Box<Integer> x124 = new Box<Integer>((int)0);
  Box<Integer> x125 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x124, x125, (x102).get(), 0xffffffff);
  Box<Integer> x126 = new Box<Integer>((int)0);
  Box<Integer> x127 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x126, x127, (x102).get(), 0xffffffff);
  Box<Integer> x128 = new Box<Integer>((int)0);
  Box<Integer> x129 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x128, x129, 0x0, (x127).get(), (x124).get());
  Box<Integer> x130 = new Box<Integer>((int)0);
  Box<Integer> x131 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x130, x131, (x129).get(), (x125).get(), (x122).get());
  int x132 = ((x131).get() + (x123).get());
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x133, x134, 0x0, (x102).get(), (x126).get());
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x135, x136, (x134).get(), (x104).get(), (x128).get());
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x137, x138, (x136).get(), (x106).get(), (x130).get());
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x139, x140, (x138).get(), (x108).get(), x132);
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x141, x142, (x140).get(), (x110).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x143, x144, (x142).get(), (x112).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x145, x146, (x144).get(), (x114).get(), (x102).get());
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x147, x148, (x146).get(), (x116).get(), (x120).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x149, x150, (x148).get(), (x118).get(), (x121).get());
  int x151 = ((x150).get() + (x119).get());
  Box<Integer> x152 = new Box<Integer>((int)0);
  Box<Integer> x153 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x152, x153, x2, (arg2[7]));
  Box<Integer> x154 = new Box<Integer>((int)0);
  Box<Integer> x155 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x154, x155, x2, (arg2[6]));
  Box<Integer> x156 = new Box<Integer>((int)0);
  Box<Integer> x157 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x156, x157, x2, (arg2[5]));
  Box<Integer> x158 = new Box<Integer>((int)0);
  Box<Integer> x159 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x158, x159, x2, (arg2[4]));
  Box<Integer> x160 = new Box<Integer>((int)0);
  Box<Integer> x161 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x160, x161, x2, (arg2[3]));
  Box<Integer> x162 = new Box<Integer>((int)0);
  Box<Integer> x163 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x162, x163, x2, (arg2[2]));
  Box<Integer> x164 = new Box<Integer>((int)0);
  Box<Integer> x165 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x164, x165, x2, (arg2[1]));
  Box<Integer> x166 = new Box<Integer>((int)0);
  Box<Integer> x167 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x166, x167, x2, (arg2[0]));
  Box<Integer> x168 = new Box<Integer>((int)0);
  Box<Integer> x169 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x168, x169, 0x0, (x167).get(), (x164).get());
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x170, x171, (x169).get(), (x165).get(), (x162).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x172, x173, (x171).get(), (x163).get(), (x160).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x174, x175, (x173).get(), (x161).get(), (x158).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x176, x177, (x175).get(), (x159).get(), (x156).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x178, x179, (x177).get(), (x157).get(), (x154).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x180, x181, (x179).get(), (x155).get(), (x152).get());
  int x182 = ((x181).get() + (x153).get());
  Box<Integer> x183 = new Box<Integer>((int)0);
  Box<Integer> x184 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x183, x184, 0x0, (x135).get(), (x166).get());
  Box<Integer> x185 = new Box<Integer>((int)0);
  Box<Integer> x186 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x185, x186, (x184).get(), (x137).get(), (x168).get());
  Box<Integer> x187 = new Box<Integer>((int)0);
  Box<Integer> x188 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x187, x188, (x186).get(), (x139).get(), (x170).get());
  Box<Integer> x189 = new Box<Integer>((int)0);
  Box<Integer> x190 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x189, x190, (x188).get(), (x141).get(), (x172).get());
  Box<Integer> x191 = new Box<Integer>((int)0);
  Box<Integer> x192 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x191, x192, (x190).get(), (x143).get(), (x174).get());
  Box<Integer> x193 = new Box<Integer>((int)0);
  Box<Integer> x194 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x193, x194, (x192).get(), (x145).get(), (x176).get());
  Box<Integer> x195 = new Box<Integer>((int)0);
  Box<Integer> x196 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x195, x196, (x194).get(), (x147).get(), (x178).get());
  Box<Integer> x197 = new Box<Integer>((int)0);
  Box<Integer> x198 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x197, x198, (x196).get(), (x149).get(), (x180).get());
  Box<Integer> x199 = new Box<Integer>((int)0);
  Box<Integer> x200 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x199, x200, (x198).get(), x151, x182);
  Box<Integer> x201 = new Box<Integer>((int)0);
  Box<Integer> x202 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x201, x202, (x183).get(), 0xffffffff);
  Box<Integer> x203 = new Box<Integer>((int)0);
  Box<Integer> x204 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x203, x204, (x183).get(), 0xffffffff);
  Box<Integer> x205 = new Box<Integer>((int)0);
  Box<Integer> x206 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x205, x206, (x183).get(), 0xffffffff);
  Box<Integer> x207 = new Box<Integer>((int)0);
  Box<Integer> x208 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x207, x208, (x183).get(), 0xffffffff);
  Box<Integer> x209 = new Box<Integer>((int)0);
  Box<Integer> x210 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x209, x210, 0x0, (x208).get(), (x205).get());
  Box<Integer> x211 = new Box<Integer>((int)0);
  Box<Integer> x212 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x211, x212, (x210).get(), (x206).get(), (x203).get());
  int x213 = ((x212).get() + (x204).get());
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x214, x215, 0x0, (x183).get(), (x207).get());
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x216, x217, (x215).get(), (x185).get(), (x209).get());
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x218, x219, (x217).get(), (x187).get(), (x211).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x220, x221, (x219).get(), (x189).get(), x213);
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x222, x223, (x221).get(), (x191).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x224, x225, (x223).get(), (x193).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x226, x227, (x225).get(), (x195).get(), (x183).get());
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x228, x229, (x227).get(), (x197).get(), (x201).get());
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x230, x231, (x229).get(), (x199).get(), (x202).get());
  int x232 = ((x231).get() + (x200).get());
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x233, x234, x3, (arg2[7]));
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x235, x236, x3, (arg2[6]));
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x237, x238, x3, (arg2[5]));
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x239, x240, x3, (arg2[4]));
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x241, x242, x3, (arg2[3]));
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x243, x244, x3, (arg2[2]));
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x245, x246, x3, (arg2[1]));
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x247, x248, x3, (arg2[0]));
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x249, x250, 0x0, (x248).get(), (x245).get());
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x251, x252, (x250).get(), (x246).get(), (x243).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x253, x254, (x252).get(), (x244).get(), (x241).get());
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x255, x256, (x254).get(), (x242).get(), (x239).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x257, x258, (x256).get(), (x240).get(), (x237).get());
  Box<Integer> x259 = new Box<Integer>((int)0);
  Box<Integer> x260 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x259, x260, (x258).get(), (x238).get(), (x235).get());
  Box<Integer> x261 = new Box<Integer>((int)0);
  Box<Integer> x262 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x261, x262, (x260).get(), (x236).get(), (x233).get());
  int x263 = ((x262).get() + (x234).get());
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x264, x265, 0x0, (x216).get(), (x247).get());
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x266, x267, (x265).get(), (x218).get(), (x249).get());
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x268, x269, (x267).get(), (x220).get(), (x251).get());
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x270, x271, (x269).get(), (x222).get(), (x253).get());
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x272, x273, (x271).get(), (x224).get(), (x255).get());
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x274, x275, (x273).get(), (x226).get(), (x257).get());
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x276, x277, (x275).get(), (x228).get(), (x259).get());
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x278, x279, (x277).get(), (x230).get(), (x261).get());
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x280, x281, (x279).get(), x232, x263);
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x282, x283, (x264).get(), 0xffffffff);
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x284, x285, (x264).get(), 0xffffffff);
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x286, x287, (x264).get(), 0xffffffff);
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x288, x289, (x264).get(), 0xffffffff);
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x290, x291, 0x0, (x289).get(), (x286).get());
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x292, x293, (x291).get(), (x287).get(), (x284).get());
  int x294 = ((x293).get() + (x285).get());
  Box<Integer> x295 = new Box<Integer>((int)0);
  Box<Integer> x296 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x295, x296, 0x0, (x264).get(), (x288).get());
  Box<Integer> x297 = new Box<Integer>((int)0);
  Box<Integer> x298 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x297, x298, (x296).get(), (x266).get(), (x290).get());
  Box<Integer> x299 = new Box<Integer>((int)0);
  Box<Integer> x300 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x299, x300, (x298).get(), (x268).get(), (x292).get());
  Box<Integer> x301 = new Box<Integer>((int)0);
  Box<Integer> x302 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x301, x302, (x300).get(), (x270).get(), x294);
  Box<Integer> x303 = new Box<Integer>((int)0);
  Box<Integer> x304 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x303, x304, (x302).get(), (x272).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x305 = new Box<Integer>((int)0);
  Box<Integer> x306 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x305, x306, (x304).get(), (x274).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x307, x308, (x306).get(), (x276).get(), (x264).get());
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x309, x310, (x308).get(), (x278).get(), (x282).get());
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x311, x312, (x310).get(), (x280).get(), (x283).get());
  int x313 = ((x312).get() + (x281).get());
  Box<Integer> x314 = new Box<Integer>((int)0);
  Box<Integer> x315 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x314, x315, x4, (arg2[7]));
  Box<Integer> x316 = new Box<Integer>((int)0);
  Box<Integer> x317 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x316, x317, x4, (arg2[6]));
  Box<Integer> x318 = new Box<Integer>((int)0);
  Box<Integer> x319 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x318, x319, x4, (arg2[5]));
  Box<Integer> x320 = new Box<Integer>((int)0);
  Box<Integer> x321 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x320, x321, x4, (arg2[4]));
  Box<Integer> x322 = new Box<Integer>((int)0);
  Box<Integer> x323 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x322, x323, x4, (arg2[3]));
  Box<Integer> x324 = new Box<Integer>((int)0);
  Box<Integer> x325 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x324, x325, x4, (arg2[2]));
  Box<Integer> x326 = new Box<Integer>((int)0);
  Box<Integer> x327 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x326, x327, x4, (arg2[1]));
  Box<Integer> x328 = new Box<Integer>((int)0);
  Box<Integer> x329 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x328, x329, x4, (arg2[0]));
  Box<Integer> x330 = new Box<Integer>((int)0);
  Box<Integer> x331 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x330, x331, 0x0, (x329).get(), (x326).get());
  Box<Integer> x332 = new Box<Integer>((int)0);
  Box<Integer> x333 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x332, x333, (x331).get(), (x327).get(), (x324).get());
  Box<Integer> x334 = new Box<Integer>((int)0);
  Box<Integer> x335 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x334, x335, (x333).get(), (x325).get(), (x322).get());
  Box<Integer> x336 = new Box<Integer>((int)0);
  Box<Integer> x337 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x336, x337, (x335).get(), (x323).get(), (x320).get());
  Box<Integer> x338 = new Box<Integer>((int)0);
  Box<Integer> x339 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x338, x339, (x337).get(), (x321).get(), (x318).get());
  Box<Integer> x340 = new Box<Integer>((int)0);
  Box<Integer> x341 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x340, x341, (x339).get(), (x319).get(), (x316).get());
  Box<Integer> x342 = new Box<Integer>((int)0);
  Box<Integer> x343 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x342, x343, (x341).get(), (x317).get(), (x314).get());
  int x344 = ((x343).get() + (x315).get());
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x345, x346, 0x0, (x297).get(), (x328).get());
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x347, x348, (x346).get(), (x299).get(), (x330).get());
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x349, x350, (x348).get(), (x301).get(), (x332).get());
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x351, x352, (x350).get(), (x303).get(), (x334).get());
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x353, x354, (x352).get(), (x305).get(), (x336).get());
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x355, x356, (x354).get(), (x307).get(), (x338).get());
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x357, x358, (x356).get(), (x309).get(), (x340).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x359, x360, (x358).get(), (x311).get(), (x342).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x361, x362, (x360).get(), x313, x344);
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x363, x364, (x345).get(), 0xffffffff);
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x365, x366, (x345).get(), 0xffffffff);
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x367, x368, (x345).get(), 0xffffffff);
  Box<Integer> x369 = new Box<Integer>((int)0);
  Box<Integer> x370 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x369, x370, (x345).get(), 0xffffffff);
  Box<Integer> x371 = new Box<Integer>((int)0);
  Box<Integer> x372 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x371, x372, 0x0, (x370).get(), (x367).get());
  Box<Integer> x373 = new Box<Integer>((int)0);
  Box<Integer> x374 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x373, x374, (x372).get(), (x368).get(), (x365).get());
  int x375 = ((x374).get() + (x366).get());
  Box<Integer> x376 = new Box<Integer>((int)0);
  Box<Integer> x377 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x376, x377, 0x0, (x345).get(), (x369).get());
  Box<Integer> x378 = new Box<Integer>((int)0);
  Box<Integer> x379 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x378, x379, (x377).get(), (x347).get(), (x371).get());
  Box<Integer> x380 = new Box<Integer>((int)0);
  Box<Integer> x381 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x380, x381, (x379).get(), (x349).get(), (x373).get());
  Box<Integer> x382 = new Box<Integer>((int)0);
  Box<Integer> x383 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x382, x383, (x381).get(), (x351).get(), x375);
  Box<Integer> x384 = new Box<Integer>((int)0);
  Box<Integer> x385 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x384, x385, (x383).get(), (x353).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x386 = new Box<Integer>((int)0);
  Box<Integer> x387 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x386, x387, (x385).get(), (x355).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x388 = new Box<Integer>((int)0);
  Box<Integer> x389 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x388, x389, (x387).get(), (x357).get(), (x345).get());
  Box<Integer> x390 = new Box<Integer>((int)0);
  Box<Integer> x391 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x390, x391, (x389).get(), (x359).get(), (x363).get());
  Box<Integer> x392 = new Box<Integer>((int)0);
  Box<Integer> x393 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x392, x393, (x391).get(), (x361).get(), (x364).get());
  int x394 = ((x393).get() + (x362).get());
  Box<Integer> x395 = new Box<Integer>((int)0);
  Box<Integer> x396 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x395, x396, x5, (arg2[7]));
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x397, x398, x5, (arg2[6]));
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x399, x400, x5, (arg2[5]));
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x401, x402, x5, (arg2[4]));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x403, x404, x5, (arg2[3]));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x405, x406, x5, (arg2[2]));
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x407, x408, x5, (arg2[1]));
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x409, x410, x5, (arg2[0]));
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x411, x412, 0x0, (x410).get(), (x407).get());
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x413, x414, (x412).get(), (x408).get(), (x405).get());
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x415, x416, (x414).get(), (x406).get(), (x403).get());
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x417, x418, (x416).get(), (x404).get(), (x401).get());
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x419, x420, (x418).get(), (x402).get(), (x399).get());
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x421, x422, (x420).get(), (x400).get(), (x397).get());
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x423, x424, (x422).get(), (x398).get(), (x395).get());
  int x425 = ((x424).get() + (x396).get());
  Box<Integer> x426 = new Box<Integer>((int)0);
  Box<Integer> x427 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x426, x427, 0x0, (x378).get(), (x409).get());
  Box<Integer> x428 = new Box<Integer>((int)0);
  Box<Integer> x429 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x428, x429, (x427).get(), (x380).get(), (x411).get());
  Box<Integer> x430 = new Box<Integer>((int)0);
  Box<Integer> x431 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x430, x431, (x429).get(), (x382).get(), (x413).get());
  Box<Integer> x432 = new Box<Integer>((int)0);
  Box<Integer> x433 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x432, x433, (x431).get(), (x384).get(), (x415).get());
  Box<Integer> x434 = new Box<Integer>((int)0);
  Box<Integer> x435 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x434, x435, (x433).get(), (x386).get(), (x417).get());
  Box<Integer> x436 = new Box<Integer>((int)0);
  Box<Integer> x437 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x436, x437, (x435).get(), (x388).get(), (x419).get());
  Box<Integer> x438 = new Box<Integer>((int)0);
  Box<Integer> x439 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x438, x439, (x437).get(), (x390).get(), (x421).get());
  Box<Integer> x440 = new Box<Integer>((int)0);
  Box<Integer> x441 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x440, x441, (x439).get(), (x392).get(), (x423).get());
  Box<Integer> x442 = new Box<Integer>((int)0);
  Box<Integer> x443 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x442, x443, (x441).get(), x394, x425);
  Box<Integer> x444 = new Box<Integer>((int)0);
  Box<Integer> x445 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x444, x445, (x426).get(), 0xffffffff);
  Box<Integer> x446 = new Box<Integer>((int)0);
  Box<Integer> x447 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x446, x447, (x426).get(), 0xffffffff);
  Box<Integer> x448 = new Box<Integer>((int)0);
  Box<Integer> x449 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x448, x449, (x426).get(), 0xffffffff);
  Box<Integer> x450 = new Box<Integer>((int)0);
  Box<Integer> x451 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x450, x451, (x426).get(), 0xffffffff);
  Box<Integer> x452 = new Box<Integer>((int)0);
  Box<Integer> x453 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x452, x453, 0x0, (x451).get(), (x448).get());
  Box<Integer> x454 = new Box<Integer>((int)0);
  Box<Integer> x455 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x454, x455, (x453).get(), (x449).get(), (x446).get());
  int x456 = ((x455).get() + (x447).get());
  Box<Integer> x457 = new Box<Integer>((int)0);
  Box<Integer> x458 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x457, x458, 0x0, (x426).get(), (x450).get());
  Box<Integer> x459 = new Box<Integer>((int)0);
  Box<Integer> x460 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x459, x460, (x458).get(), (x428).get(), (x452).get());
  Box<Integer> x461 = new Box<Integer>((int)0);
  Box<Integer> x462 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x461, x462, (x460).get(), (x430).get(), (x454).get());
  Box<Integer> x463 = new Box<Integer>((int)0);
  Box<Integer> x464 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x463, x464, (x462).get(), (x432).get(), x456);
  Box<Integer> x465 = new Box<Integer>((int)0);
  Box<Integer> x466 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x465, x466, (x464).get(), (x434).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x467 = new Box<Integer>((int)0);
  Box<Integer> x468 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x467, x468, (x466).get(), (x436).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x469 = new Box<Integer>((int)0);
  Box<Integer> x470 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x469, x470, (x468).get(), (x438).get(), (x426).get());
  Box<Integer> x471 = new Box<Integer>((int)0);
  Box<Integer> x472 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x471, x472, (x470).get(), (x440).get(), (x444).get());
  Box<Integer> x473 = new Box<Integer>((int)0);
  Box<Integer> x474 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x473, x474, (x472).get(), (x442).get(), (x445).get());
  int x475 = ((x474).get() + (x443).get());
  Box<Integer> x476 = new Box<Integer>((int)0);
  Box<Integer> x477 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x476, x477, x6, (arg2[7]));
  Box<Integer> x478 = new Box<Integer>((int)0);
  Box<Integer> x479 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x478, x479, x6, (arg2[6]));
  Box<Integer> x480 = new Box<Integer>((int)0);
  Box<Integer> x481 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x480, x481, x6, (arg2[5]));
  Box<Integer> x482 = new Box<Integer>((int)0);
  Box<Integer> x483 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x482, x483, x6, (arg2[4]));
  Box<Integer> x484 = new Box<Integer>((int)0);
  Box<Integer> x485 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x484, x485, x6, (arg2[3]));
  Box<Integer> x486 = new Box<Integer>((int)0);
  Box<Integer> x487 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x486, x487, x6, (arg2[2]));
  Box<Integer> x488 = new Box<Integer>((int)0);
  Box<Integer> x489 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x488, x489, x6, (arg2[1]));
  Box<Integer> x490 = new Box<Integer>((int)0);
  Box<Integer> x491 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x490, x491, x6, (arg2[0]));
  Box<Integer> x492 = new Box<Integer>((int)0);
  Box<Integer> x493 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x492, x493, 0x0, (x491).get(), (x488).get());
  Box<Integer> x494 = new Box<Integer>((int)0);
  Box<Integer> x495 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x494, x495, (x493).get(), (x489).get(), (x486).get());
  Box<Integer> x496 = new Box<Integer>((int)0);
  Box<Integer> x497 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x496, x497, (x495).get(), (x487).get(), (x484).get());
  Box<Integer> x498 = new Box<Integer>((int)0);
  Box<Integer> x499 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x498, x499, (x497).get(), (x485).get(), (x482).get());
  Box<Integer> x500 = new Box<Integer>((int)0);
  Box<Integer> x501 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x500, x501, (x499).get(), (x483).get(), (x480).get());
  Box<Integer> x502 = new Box<Integer>((int)0);
  Box<Integer> x503 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x502, x503, (x501).get(), (x481).get(), (x478).get());
  Box<Integer> x504 = new Box<Integer>((int)0);
  Box<Integer> x505 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x504, x505, (x503).get(), (x479).get(), (x476).get());
  int x506 = ((x505).get() + (x477).get());
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x507, x508, 0x0, (x459).get(), (x490).get());
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x509, x510, (x508).get(), (x461).get(), (x492).get());
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x511, x512, (x510).get(), (x463).get(), (x494).get());
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x513, x514, (x512).get(), (x465).get(), (x496).get());
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x515, x516, (x514).get(), (x467).get(), (x498).get());
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x517, x518, (x516).get(), (x469).get(), (x500).get());
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x519, x520, (x518).get(), (x471).get(), (x502).get());
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x521, x522, (x520).get(), (x473).get(), (x504).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x523, x524, (x522).get(), x475, x506);
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x525, x526, (x507).get(), 0xffffffff);
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x527, x528, (x507).get(), 0xffffffff);
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x529, x530, (x507).get(), 0xffffffff);
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x531, x532, (x507).get(), 0xffffffff);
  Box<Integer> x533 = new Box<Integer>((int)0);
  Box<Integer> x534 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x533, x534, 0x0, (x532).get(), (x529).get());
  Box<Integer> x535 = new Box<Integer>((int)0);
  Box<Integer> x536 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x535, x536, (x534).get(), (x530).get(), (x527).get());
  int x537 = ((x536).get() + (x528).get());
  Box<Integer> x538 = new Box<Integer>((int)0);
  Box<Integer> x539 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x538, x539, 0x0, (x507).get(), (x531).get());
  Box<Integer> x540 = new Box<Integer>((int)0);
  Box<Integer> x541 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x540, x541, (x539).get(), (x509).get(), (x533).get());
  Box<Integer> x542 = new Box<Integer>((int)0);
  Box<Integer> x543 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x542, x543, (x541).get(), (x511).get(), (x535).get());
  Box<Integer> x544 = new Box<Integer>((int)0);
  Box<Integer> x545 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x544, x545, (x543).get(), (x513).get(), x537);
  Box<Integer> x546 = new Box<Integer>((int)0);
  Box<Integer> x547 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x546, x547, (x545).get(), (x515).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x548 = new Box<Integer>((int)0);
  Box<Integer> x549 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x548, x549, (x547).get(), (x517).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x550 = new Box<Integer>((int)0);
  Box<Integer> x551 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x550, x551, (x549).get(), (x519).get(), (x507).get());
  Box<Integer> x552 = new Box<Integer>((int)0);
  Box<Integer> x553 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x552, x553, (x551).get(), (x521).get(), (x525).get());
  Box<Integer> x554 = new Box<Integer>((int)0);
  Box<Integer> x555 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x554, x555, (x553).get(), (x523).get(), (x526).get());
  int x556 = ((x555).get() + (x524).get());
  Box<Integer> x557 = new Box<Integer>((int)0);
  Box<Integer> x558 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x557, x558, x7, (arg2[7]));
  Box<Integer> x559 = new Box<Integer>((int)0);
  Box<Integer> x560 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x559, x560, x7, (arg2[6]));
  Box<Integer> x561 = new Box<Integer>((int)0);
  Box<Integer> x562 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x561, x562, x7, (arg2[5]));
  Box<Integer> x563 = new Box<Integer>((int)0);
  Box<Integer> x564 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x563, x564, x7, (arg2[4]));
  Box<Integer> x565 = new Box<Integer>((int)0);
  Box<Integer> x566 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x565, x566, x7, (arg2[3]));
  Box<Integer> x567 = new Box<Integer>((int)0);
  Box<Integer> x568 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x567, x568, x7, (arg2[2]));
  Box<Integer> x569 = new Box<Integer>((int)0);
  Box<Integer> x570 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x569, x570, x7, (arg2[1]));
  Box<Integer> x571 = new Box<Integer>((int)0);
  Box<Integer> x572 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x571, x572, x7, (arg2[0]));
  Box<Integer> x573 = new Box<Integer>((int)0);
  Box<Integer> x574 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x573, x574, 0x0, (x572).get(), (x569).get());
  Box<Integer> x575 = new Box<Integer>((int)0);
  Box<Integer> x576 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x575, x576, (x574).get(), (x570).get(), (x567).get());
  Box<Integer> x577 = new Box<Integer>((int)0);
  Box<Integer> x578 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x577, x578, (x576).get(), (x568).get(), (x565).get());
  Box<Integer> x579 = new Box<Integer>((int)0);
  Box<Integer> x580 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x579, x580, (x578).get(), (x566).get(), (x563).get());
  Box<Integer> x581 = new Box<Integer>((int)0);
  Box<Integer> x582 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x581, x582, (x580).get(), (x564).get(), (x561).get());
  Box<Integer> x583 = new Box<Integer>((int)0);
  Box<Integer> x584 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x583, x584, (x582).get(), (x562).get(), (x559).get());
  Box<Integer> x585 = new Box<Integer>((int)0);
  Box<Integer> x586 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x585, x586, (x584).get(), (x560).get(), (x557).get());
  int x587 = ((x586).get() + (x558).get());
  Box<Integer> x588 = new Box<Integer>((int)0);
  Box<Integer> x589 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x588, x589, 0x0, (x540).get(), (x571).get());
  Box<Integer> x590 = new Box<Integer>((int)0);
  Box<Integer> x591 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x590, x591, (x589).get(), (x542).get(), (x573).get());
  Box<Integer> x592 = new Box<Integer>((int)0);
  Box<Integer> x593 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x592, x593, (x591).get(), (x544).get(), (x575).get());
  Box<Integer> x594 = new Box<Integer>((int)0);
  Box<Integer> x595 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x594, x595, (x593).get(), (x546).get(), (x577).get());
  Box<Integer> x596 = new Box<Integer>((int)0);
  Box<Integer> x597 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x596, x597, (x595).get(), (x548).get(), (x579).get());
  Box<Integer> x598 = new Box<Integer>((int)0);
  Box<Integer> x599 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x598, x599, (x597).get(), (x550).get(), (x581).get());
  Box<Integer> x600 = new Box<Integer>((int)0);
  Box<Integer> x601 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x600, x601, (x599).get(), (x552).get(), (x583).get());
  Box<Integer> x602 = new Box<Integer>((int)0);
  Box<Integer> x603 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x602, x603, (x601).get(), (x554).get(), (x585).get());
  Box<Integer> x604 = new Box<Integer>((int)0);
  Box<Integer> x605 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x604, x605, (x603).get(), x556, x587);
  Box<Integer> x606 = new Box<Integer>((int)0);
  Box<Integer> x607 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x606, x607, (x588).get(), 0xffffffff);
  Box<Integer> x608 = new Box<Integer>((int)0);
  Box<Integer> x609 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x608, x609, (x588).get(), 0xffffffff);
  Box<Integer> x610 = new Box<Integer>((int)0);
  Box<Integer> x611 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x610, x611, (x588).get(), 0xffffffff);
  Box<Integer> x612 = new Box<Integer>((int)0);
  Box<Integer> x613 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x612, x613, (x588).get(), 0xffffffff);
  Box<Integer> x614 = new Box<Integer>((int)0);
  Box<Integer> x615 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x614, x615, 0x0, (x613).get(), (x610).get());
  Box<Integer> x616 = new Box<Integer>((int)0);
  Box<Integer> x617 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x616, x617, (x615).get(), (x611).get(), (x608).get());
  int x618 = ((x617).get() + (x609).get());
  Box<Integer> x619 = new Box<Integer>((int)0);
  Box<Integer> x620 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x619, x620, 0x0, (x588).get(), (x612).get());
  Box<Integer> x621 = new Box<Integer>((int)0);
  Box<Integer> x622 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x621, x622, (x620).get(), (x590).get(), (x614).get());
  Box<Integer> x623 = new Box<Integer>((int)0);
  Box<Integer> x624 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x623, x624, (x622).get(), (x592).get(), (x616).get());
  Box<Integer> x625 = new Box<Integer>((int)0);
  Box<Integer> x626 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x625, x626, (x624).get(), (x594).get(), x618);
  Box<Integer> x627 = new Box<Integer>((int)0);
  Box<Integer> x628 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x627, x628, (x626).get(), (x596).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x629 = new Box<Integer>((int)0);
  Box<Integer> x630 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x629, x630, (x628).get(), (x598).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x631 = new Box<Integer>((int)0);
  Box<Integer> x632 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x631, x632, (x630).get(), (x600).get(), (x588).get());
  Box<Integer> x633 = new Box<Integer>((int)0);
  Box<Integer> x634 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x633, x634, (x632).get(), (x602).get(), (x606).get());
  Box<Integer> x635 = new Box<Integer>((int)0);
  Box<Integer> x636 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x635, x636, (x634).get(), (x604).get(), (x607).get());
  int x637 = ((x636).get() + (x605).get());
  Box<Integer> x638 = new Box<Integer>((int)0);
  Box<Integer> x639 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x638, x639, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x621).get(), 0xffffffff);
  Box<Integer> x640 = new Box<Integer>((int)0);
  Box<Integer> x641 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x640, x641, (x639).get(), (x623).get(), 0xffffffff);
  Box<Integer> x642 = new Box<Integer>((int)0);
  Box<Integer> x643 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x642, x643, (x641).get(), (x625).get(), 0xffffffff);
  Box<Integer> x644 = new Box<Integer>((int)0);
  Box<Integer> x645 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x644, x645, (x643).get(), (x627).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x646 = new Box<Integer>((int)0);
  Box<Integer> x647 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x646, x647, (x645).get(), (x629).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x648 = new Box<Integer>((int)0);
  Box<Integer> x649 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x648, x649, (x647).get(), (x631).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x650 = new Box<Integer>((int)0);
  Box<Integer> x651 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x650, x651, (x649).get(), (x633).get(), 0x1);
  Box<Integer> x652 = new Box<Integer>((int)0);
  Box<Integer> x653 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x652, x653, (x651).get(), (x635).get(), 0xffffffff);
  Box<Integer> x654 = new Box<Integer>((int)0);
  Box<Integer> x655 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x654, x655, (x653).get(), x637, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x656 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x656, (x655).get(), (x638).get(), (x621).get());
  Box<Integer> x657 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x657, (x655).get(), (x640).get(), (x623).get());
  Box<Integer> x658 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x658, (x655).get(), (x642).get(), (x625).get());
  Box<Integer> x659 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x659, (x655).get(), (x644).get(), (x627).get());
  Box<Integer> x660 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x660, (x655).get(), (x646).get(), (x629).get());
  Box<Integer> x661 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x661, (x655).get(), (x648).get(), (x631).get());
  Box<Integer> x662 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x662, (x655).get(), (x650).get(), (x633).get());
  Box<Integer> x663 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x663, (x655).get(), (x652).get(), (x635).get());
  out1[0] = (x656).get();
  out1[1] = (x657).get();
  out1[2] = (x658).get();
  out1[3] = (x659).get();
  out1[4] = (x660).get();
  out1[5] = (x661).get();
  out1[6] = (x662).get();
  out1[7] = (x663).get();
}

/**
 * The function fiat_P256_square squares a field element in the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) * eval (from_montgomery arg1)) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_square(int[] out1, final int[] arg1) {
  int x1 = (arg1[1]);
  int x2 = (arg1[2]);
  int x3 = (arg1[3]);
  int x4 = (arg1[4]);
  int x5 = (arg1[5]);
  int x6 = (arg1[6]);
  int x7 = (arg1[7]);
  int x8 = (arg1[0]);
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x9, x10, x8, (arg1[7]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x11, x12, x8, (arg1[6]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x13, x14, x8, (arg1[5]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x15, x16, x8, (arg1[4]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x17, x18, x8, (arg1[3]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x19, x20, x8, (arg1[2]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x21, x22, x8, (arg1[1]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x23, x24, x8, (arg1[0]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x25, x26, 0x0, (x24).get(), (x21).get());
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x27, x28, (x26).get(), (x22).get(), (x19).get());
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x29, x30, (x28).get(), (x20).get(), (x17).get());
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x31, x32, (x30).get(), (x18).get(), (x15).get());
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x33, x34, (x32).get(), (x16).get(), (x13).get());
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x35, x36, (x34).get(), (x14).get(), (x11).get());
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x37, x38, (x36).get(), (x12).get(), (x9).get());
  int x39 = ((x38).get() + (x10).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x40, x41, (x23).get(), 0xffffffff);
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x42, x43, (x23).get(), 0xffffffff);
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x44, x45, (x23).get(), 0xffffffff);
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x46, x47, (x23).get(), 0xffffffff);
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x48, x49, 0x0, (x47).get(), (x44).get());
  Box<Integer> x50 = new Box<Integer>((int)0);
  Box<Integer> x51 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x50, x51, (x49).get(), (x45).get(), (x42).get());
  int x52 = ((x51).get() + (x43).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x53, x54, 0x0, (x23).get(), (x46).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x55, x56, (x54).get(), (x25).get(), (x48).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x57, x58, (x56).get(), (x27).get(), (x50).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x59, x60, (x58).get(), (x29).get(), x52);
  Box<Integer> x61 = new Box<Integer>((int)0);
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x61, x62, (x60).get(), (x31).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x63 = new Box<Integer>((int)0);
  Box<Integer> x64 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x63, x64, (x62).get(), (x33).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x65 = new Box<Integer>((int)0);
  Box<Integer> x66 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x65, x66, (x64).get(), (x35).get(), (x23).get());
  Box<Integer> x67 = new Box<Integer>((int)0);
  Box<Integer> x68 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x67, x68, (x66).get(), (x37).get(), (x40).get());
  Box<Integer> x69 = new Box<Integer>((int)0);
  Box<Integer> x70 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x69, x70, (x68).get(), x39, (x41).get());
  Box<Integer> x71 = new Box<Integer>((int)0);
  Box<Integer> x72 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x71, x72, x1, (arg1[7]));
  Box<Integer> x73 = new Box<Integer>((int)0);
  Box<Integer> x74 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x73, x74, x1, (arg1[6]));
  Box<Integer> x75 = new Box<Integer>((int)0);
  Box<Integer> x76 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x75, x76, x1, (arg1[5]));
  Box<Integer> x77 = new Box<Integer>((int)0);
  Box<Integer> x78 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x77, x78, x1, (arg1[4]));
  Box<Integer> x79 = new Box<Integer>((int)0);
  Box<Integer> x80 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x79, x80, x1, (arg1[3]));
  Box<Integer> x81 = new Box<Integer>((int)0);
  Box<Integer> x82 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x81, x82, x1, (arg1[2]));
  Box<Integer> x83 = new Box<Integer>((int)0);
  Box<Integer> x84 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x83, x84, x1, (arg1[1]));
  Box<Integer> x85 = new Box<Integer>((int)0);
  Box<Integer> x86 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x85, x86, x1, (arg1[0]));
  Box<Integer> x87 = new Box<Integer>((int)0);
  Box<Integer> x88 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x87, x88, 0x0, (x86).get(), (x83).get());
  Box<Integer> x89 = new Box<Integer>((int)0);
  Box<Integer> x90 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x89, x90, (x88).get(), (x84).get(), (x81).get());
  Box<Integer> x91 = new Box<Integer>((int)0);
  Box<Integer> x92 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x91, x92, (x90).get(), (x82).get(), (x79).get());
  Box<Integer> x93 = new Box<Integer>((int)0);
  Box<Integer> x94 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x93, x94, (x92).get(), (x80).get(), (x77).get());
  Box<Integer> x95 = new Box<Integer>((int)0);
  Box<Integer> x96 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x95, x96, (x94).get(), (x78).get(), (x75).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x97, x98, (x96).get(), (x76).get(), (x73).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x99, x100, (x98).get(), (x74).get(), (x71).get());
  int x101 = ((x100).get() + (x72).get());
  Box<Integer> x102 = new Box<Integer>((int)0);
  Box<Integer> x103 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x102, x103, 0x0, (x55).get(), (x85).get());
  Box<Integer> x104 = new Box<Integer>((int)0);
  Box<Integer> x105 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x104, x105, (x103).get(), (x57).get(), (x87).get());
  Box<Integer> x106 = new Box<Integer>((int)0);
  Box<Integer> x107 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x106, x107, (x105).get(), (x59).get(), (x89).get());
  Box<Integer> x108 = new Box<Integer>((int)0);
  Box<Integer> x109 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x108, x109, (x107).get(), (x61).get(), (x91).get());
  Box<Integer> x110 = new Box<Integer>((int)0);
  Box<Integer> x111 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x110, x111, (x109).get(), (x63).get(), (x93).get());
  Box<Integer> x112 = new Box<Integer>((int)0);
  Box<Integer> x113 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x112, x113, (x111).get(), (x65).get(), (x95).get());
  Box<Integer> x114 = new Box<Integer>((int)0);
  Box<Integer> x115 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x114, x115, (x113).get(), (x67).get(), (x97).get());
  Box<Integer> x116 = new Box<Integer>((int)0);
  Box<Integer> x117 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x116, x117, (x115).get(), (x69).get(), (x99).get());
  Box<Integer> x118 = new Box<Integer>((int)0);
  Box<Integer> x119 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x118, x119, (x117).get(), (x70).get(), x101);
  Box<Integer> x120 = new Box<Integer>((int)0);
  Box<Integer> x121 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x120, x121, (x102).get(), 0xffffffff);
  Box<Integer> x122 = new Box<Integer>((int)0);
  Box<Integer> x123 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x122, x123, (x102).get(), 0xffffffff);
  Box<Integer> x124 = new Box<Integer>((int)0);
  Box<Integer> x125 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x124, x125, (x102).get(), 0xffffffff);
  Box<Integer> x126 = new Box<Integer>((int)0);
  Box<Integer> x127 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x126, x127, (x102).get(), 0xffffffff);
  Box<Integer> x128 = new Box<Integer>((int)0);
  Box<Integer> x129 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x128, x129, 0x0, (x127).get(), (x124).get());
  Box<Integer> x130 = new Box<Integer>((int)0);
  Box<Integer> x131 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x130, x131, (x129).get(), (x125).get(), (x122).get());
  int x132 = ((x131).get() + (x123).get());
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x133, x134, 0x0, (x102).get(), (x126).get());
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x135, x136, (x134).get(), (x104).get(), (x128).get());
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x137, x138, (x136).get(), (x106).get(), (x130).get());
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x139, x140, (x138).get(), (x108).get(), x132);
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x141, x142, (x140).get(), (x110).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x143, x144, (x142).get(), (x112).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x145, x146, (x144).get(), (x114).get(), (x102).get());
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x147, x148, (x146).get(), (x116).get(), (x120).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x149, x150, (x148).get(), (x118).get(), (x121).get());
  int x151 = ((x150).get() + (x119).get());
  Box<Integer> x152 = new Box<Integer>((int)0);
  Box<Integer> x153 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x152, x153, x2, (arg1[7]));
  Box<Integer> x154 = new Box<Integer>((int)0);
  Box<Integer> x155 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x154, x155, x2, (arg1[6]));
  Box<Integer> x156 = new Box<Integer>((int)0);
  Box<Integer> x157 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x156, x157, x2, (arg1[5]));
  Box<Integer> x158 = new Box<Integer>((int)0);
  Box<Integer> x159 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x158, x159, x2, (arg1[4]));
  Box<Integer> x160 = new Box<Integer>((int)0);
  Box<Integer> x161 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x160, x161, x2, (arg1[3]));
  Box<Integer> x162 = new Box<Integer>((int)0);
  Box<Integer> x163 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x162, x163, x2, (arg1[2]));
  Box<Integer> x164 = new Box<Integer>((int)0);
  Box<Integer> x165 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x164, x165, x2, (arg1[1]));
  Box<Integer> x166 = new Box<Integer>((int)0);
  Box<Integer> x167 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x166, x167, x2, (arg1[0]));
  Box<Integer> x168 = new Box<Integer>((int)0);
  Box<Integer> x169 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x168, x169, 0x0, (x167).get(), (x164).get());
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x170, x171, (x169).get(), (x165).get(), (x162).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x172, x173, (x171).get(), (x163).get(), (x160).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x174, x175, (x173).get(), (x161).get(), (x158).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x176, x177, (x175).get(), (x159).get(), (x156).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x178, x179, (x177).get(), (x157).get(), (x154).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x180, x181, (x179).get(), (x155).get(), (x152).get());
  int x182 = ((x181).get() + (x153).get());
  Box<Integer> x183 = new Box<Integer>((int)0);
  Box<Integer> x184 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x183, x184, 0x0, (x135).get(), (x166).get());
  Box<Integer> x185 = new Box<Integer>((int)0);
  Box<Integer> x186 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x185, x186, (x184).get(), (x137).get(), (x168).get());
  Box<Integer> x187 = new Box<Integer>((int)0);
  Box<Integer> x188 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x187, x188, (x186).get(), (x139).get(), (x170).get());
  Box<Integer> x189 = new Box<Integer>((int)0);
  Box<Integer> x190 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x189, x190, (x188).get(), (x141).get(), (x172).get());
  Box<Integer> x191 = new Box<Integer>((int)0);
  Box<Integer> x192 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x191, x192, (x190).get(), (x143).get(), (x174).get());
  Box<Integer> x193 = new Box<Integer>((int)0);
  Box<Integer> x194 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x193, x194, (x192).get(), (x145).get(), (x176).get());
  Box<Integer> x195 = new Box<Integer>((int)0);
  Box<Integer> x196 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x195, x196, (x194).get(), (x147).get(), (x178).get());
  Box<Integer> x197 = new Box<Integer>((int)0);
  Box<Integer> x198 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x197, x198, (x196).get(), (x149).get(), (x180).get());
  Box<Integer> x199 = new Box<Integer>((int)0);
  Box<Integer> x200 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x199, x200, (x198).get(), x151, x182);
  Box<Integer> x201 = new Box<Integer>((int)0);
  Box<Integer> x202 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x201, x202, (x183).get(), 0xffffffff);
  Box<Integer> x203 = new Box<Integer>((int)0);
  Box<Integer> x204 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x203, x204, (x183).get(), 0xffffffff);
  Box<Integer> x205 = new Box<Integer>((int)0);
  Box<Integer> x206 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x205, x206, (x183).get(), 0xffffffff);
  Box<Integer> x207 = new Box<Integer>((int)0);
  Box<Integer> x208 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x207, x208, (x183).get(), 0xffffffff);
  Box<Integer> x209 = new Box<Integer>((int)0);
  Box<Integer> x210 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x209, x210, 0x0, (x208).get(), (x205).get());
  Box<Integer> x211 = new Box<Integer>((int)0);
  Box<Integer> x212 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x211, x212, (x210).get(), (x206).get(), (x203).get());
  int x213 = ((x212).get() + (x204).get());
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x214, x215, 0x0, (x183).get(), (x207).get());
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x216, x217, (x215).get(), (x185).get(), (x209).get());
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x218, x219, (x217).get(), (x187).get(), (x211).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x220, x221, (x219).get(), (x189).get(), x213);
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x222, x223, (x221).get(), (x191).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x224, x225, (x223).get(), (x193).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x226, x227, (x225).get(), (x195).get(), (x183).get());
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x228, x229, (x227).get(), (x197).get(), (x201).get());
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x230, x231, (x229).get(), (x199).get(), (x202).get());
  int x232 = ((x231).get() + (x200).get());
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x233, x234, x3, (arg1[7]));
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x235, x236, x3, (arg1[6]));
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x237, x238, x3, (arg1[5]));
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x239, x240, x3, (arg1[4]));
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x241, x242, x3, (arg1[3]));
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x243, x244, x3, (arg1[2]));
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x245, x246, x3, (arg1[1]));
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x247, x248, x3, (arg1[0]));
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x249, x250, 0x0, (x248).get(), (x245).get());
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x251, x252, (x250).get(), (x246).get(), (x243).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x253, x254, (x252).get(), (x244).get(), (x241).get());
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x255, x256, (x254).get(), (x242).get(), (x239).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x257, x258, (x256).get(), (x240).get(), (x237).get());
  Box<Integer> x259 = new Box<Integer>((int)0);
  Box<Integer> x260 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x259, x260, (x258).get(), (x238).get(), (x235).get());
  Box<Integer> x261 = new Box<Integer>((int)0);
  Box<Integer> x262 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x261, x262, (x260).get(), (x236).get(), (x233).get());
  int x263 = ((x262).get() + (x234).get());
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x264, x265, 0x0, (x216).get(), (x247).get());
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x266, x267, (x265).get(), (x218).get(), (x249).get());
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x268, x269, (x267).get(), (x220).get(), (x251).get());
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x270, x271, (x269).get(), (x222).get(), (x253).get());
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x272, x273, (x271).get(), (x224).get(), (x255).get());
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x274, x275, (x273).get(), (x226).get(), (x257).get());
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x276, x277, (x275).get(), (x228).get(), (x259).get());
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x278, x279, (x277).get(), (x230).get(), (x261).get());
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x280, x281, (x279).get(), x232, x263);
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x282, x283, (x264).get(), 0xffffffff);
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x284, x285, (x264).get(), 0xffffffff);
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x286, x287, (x264).get(), 0xffffffff);
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x288, x289, (x264).get(), 0xffffffff);
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x290, x291, 0x0, (x289).get(), (x286).get());
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x292, x293, (x291).get(), (x287).get(), (x284).get());
  int x294 = ((x293).get() + (x285).get());
  Box<Integer> x295 = new Box<Integer>((int)0);
  Box<Integer> x296 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x295, x296, 0x0, (x264).get(), (x288).get());
  Box<Integer> x297 = new Box<Integer>((int)0);
  Box<Integer> x298 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x297, x298, (x296).get(), (x266).get(), (x290).get());
  Box<Integer> x299 = new Box<Integer>((int)0);
  Box<Integer> x300 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x299, x300, (x298).get(), (x268).get(), (x292).get());
  Box<Integer> x301 = new Box<Integer>((int)0);
  Box<Integer> x302 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x301, x302, (x300).get(), (x270).get(), x294);
  Box<Integer> x303 = new Box<Integer>((int)0);
  Box<Integer> x304 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x303, x304, (x302).get(), (x272).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x305 = new Box<Integer>((int)0);
  Box<Integer> x306 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x305, x306, (x304).get(), (x274).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x307, x308, (x306).get(), (x276).get(), (x264).get());
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x309, x310, (x308).get(), (x278).get(), (x282).get());
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x311, x312, (x310).get(), (x280).get(), (x283).get());
  int x313 = ((x312).get() + (x281).get());
  Box<Integer> x314 = new Box<Integer>((int)0);
  Box<Integer> x315 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x314, x315, x4, (arg1[7]));
  Box<Integer> x316 = new Box<Integer>((int)0);
  Box<Integer> x317 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x316, x317, x4, (arg1[6]));
  Box<Integer> x318 = new Box<Integer>((int)0);
  Box<Integer> x319 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x318, x319, x4, (arg1[5]));
  Box<Integer> x320 = new Box<Integer>((int)0);
  Box<Integer> x321 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x320, x321, x4, (arg1[4]));
  Box<Integer> x322 = new Box<Integer>((int)0);
  Box<Integer> x323 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x322, x323, x4, (arg1[3]));
  Box<Integer> x324 = new Box<Integer>((int)0);
  Box<Integer> x325 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x324, x325, x4, (arg1[2]));
  Box<Integer> x326 = new Box<Integer>((int)0);
  Box<Integer> x327 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x326, x327, x4, (arg1[1]));
  Box<Integer> x328 = new Box<Integer>((int)0);
  Box<Integer> x329 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x328, x329, x4, (arg1[0]));
  Box<Integer> x330 = new Box<Integer>((int)0);
  Box<Integer> x331 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x330, x331, 0x0, (x329).get(), (x326).get());
  Box<Integer> x332 = new Box<Integer>((int)0);
  Box<Integer> x333 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x332, x333, (x331).get(), (x327).get(), (x324).get());
  Box<Integer> x334 = new Box<Integer>((int)0);
  Box<Integer> x335 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x334, x335, (x333).get(), (x325).get(), (x322).get());
  Box<Integer> x336 = new Box<Integer>((int)0);
  Box<Integer> x337 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x336, x337, (x335).get(), (x323).get(), (x320).get());
  Box<Integer> x338 = new Box<Integer>((int)0);
  Box<Integer> x339 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x338, x339, (x337).get(), (x321).get(), (x318).get());
  Box<Integer> x340 = new Box<Integer>((int)0);
  Box<Integer> x341 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x340, x341, (x339).get(), (x319).get(), (x316).get());
  Box<Integer> x342 = new Box<Integer>((int)0);
  Box<Integer> x343 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x342, x343, (x341).get(), (x317).get(), (x314).get());
  int x344 = ((x343).get() + (x315).get());
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x345, x346, 0x0, (x297).get(), (x328).get());
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x347, x348, (x346).get(), (x299).get(), (x330).get());
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x349, x350, (x348).get(), (x301).get(), (x332).get());
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x351, x352, (x350).get(), (x303).get(), (x334).get());
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x353, x354, (x352).get(), (x305).get(), (x336).get());
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x355, x356, (x354).get(), (x307).get(), (x338).get());
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x357, x358, (x356).get(), (x309).get(), (x340).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x359, x360, (x358).get(), (x311).get(), (x342).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x361, x362, (x360).get(), x313, x344);
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x363, x364, (x345).get(), 0xffffffff);
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x365, x366, (x345).get(), 0xffffffff);
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x367, x368, (x345).get(), 0xffffffff);
  Box<Integer> x369 = new Box<Integer>((int)0);
  Box<Integer> x370 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x369, x370, (x345).get(), 0xffffffff);
  Box<Integer> x371 = new Box<Integer>((int)0);
  Box<Integer> x372 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x371, x372, 0x0, (x370).get(), (x367).get());
  Box<Integer> x373 = new Box<Integer>((int)0);
  Box<Integer> x374 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x373, x374, (x372).get(), (x368).get(), (x365).get());
  int x375 = ((x374).get() + (x366).get());
  Box<Integer> x376 = new Box<Integer>((int)0);
  Box<Integer> x377 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x376, x377, 0x0, (x345).get(), (x369).get());
  Box<Integer> x378 = new Box<Integer>((int)0);
  Box<Integer> x379 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x378, x379, (x377).get(), (x347).get(), (x371).get());
  Box<Integer> x380 = new Box<Integer>((int)0);
  Box<Integer> x381 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x380, x381, (x379).get(), (x349).get(), (x373).get());
  Box<Integer> x382 = new Box<Integer>((int)0);
  Box<Integer> x383 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x382, x383, (x381).get(), (x351).get(), x375);
  Box<Integer> x384 = new Box<Integer>((int)0);
  Box<Integer> x385 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x384, x385, (x383).get(), (x353).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x386 = new Box<Integer>((int)0);
  Box<Integer> x387 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x386, x387, (x385).get(), (x355).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x388 = new Box<Integer>((int)0);
  Box<Integer> x389 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x388, x389, (x387).get(), (x357).get(), (x345).get());
  Box<Integer> x390 = new Box<Integer>((int)0);
  Box<Integer> x391 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x390, x391, (x389).get(), (x359).get(), (x363).get());
  Box<Integer> x392 = new Box<Integer>((int)0);
  Box<Integer> x393 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x392, x393, (x391).get(), (x361).get(), (x364).get());
  int x394 = ((x393).get() + (x362).get());
  Box<Integer> x395 = new Box<Integer>((int)0);
  Box<Integer> x396 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x395, x396, x5, (arg1[7]));
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x397, x398, x5, (arg1[6]));
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x399, x400, x5, (arg1[5]));
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x401, x402, x5, (arg1[4]));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x403, x404, x5, (arg1[3]));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x405, x406, x5, (arg1[2]));
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x407, x408, x5, (arg1[1]));
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x409, x410, x5, (arg1[0]));
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x411, x412, 0x0, (x410).get(), (x407).get());
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x413, x414, (x412).get(), (x408).get(), (x405).get());
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x415, x416, (x414).get(), (x406).get(), (x403).get());
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x417, x418, (x416).get(), (x404).get(), (x401).get());
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x419, x420, (x418).get(), (x402).get(), (x399).get());
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x421, x422, (x420).get(), (x400).get(), (x397).get());
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x423, x424, (x422).get(), (x398).get(), (x395).get());
  int x425 = ((x424).get() + (x396).get());
  Box<Integer> x426 = new Box<Integer>((int)0);
  Box<Integer> x427 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x426, x427, 0x0, (x378).get(), (x409).get());
  Box<Integer> x428 = new Box<Integer>((int)0);
  Box<Integer> x429 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x428, x429, (x427).get(), (x380).get(), (x411).get());
  Box<Integer> x430 = new Box<Integer>((int)0);
  Box<Integer> x431 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x430, x431, (x429).get(), (x382).get(), (x413).get());
  Box<Integer> x432 = new Box<Integer>((int)0);
  Box<Integer> x433 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x432, x433, (x431).get(), (x384).get(), (x415).get());
  Box<Integer> x434 = new Box<Integer>((int)0);
  Box<Integer> x435 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x434, x435, (x433).get(), (x386).get(), (x417).get());
  Box<Integer> x436 = new Box<Integer>((int)0);
  Box<Integer> x437 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x436, x437, (x435).get(), (x388).get(), (x419).get());
  Box<Integer> x438 = new Box<Integer>((int)0);
  Box<Integer> x439 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x438, x439, (x437).get(), (x390).get(), (x421).get());
  Box<Integer> x440 = new Box<Integer>((int)0);
  Box<Integer> x441 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x440, x441, (x439).get(), (x392).get(), (x423).get());
  Box<Integer> x442 = new Box<Integer>((int)0);
  Box<Integer> x443 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x442, x443, (x441).get(), x394, x425);
  Box<Integer> x444 = new Box<Integer>((int)0);
  Box<Integer> x445 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x444, x445, (x426).get(), 0xffffffff);
  Box<Integer> x446 = new Box<Integer>((int)0);
  Box<Integer> x447 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x446, x447, (x426).get(), 0xffffffff);
  Box<Integer> x448 = new Box<Integer>((int)0);
  Box<Integer> x449 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x448, x449, (x426).get(), 0xffffffff);
  Box<Integer> x450 = new Box<Integer>((int)0);
  Box<Integer> x451 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x450, x451, (x426).get(), 0xffffffff);
  Box<Integer> x452 = new Box<Integer>((int)0);
  Box<Integer> x453 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x452, x453, 0x0, (x451).get(), (x448).get());
  Box<Integer> x454 = new Box<Integer>((int)0);
  Box<Integer> x455 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x454, x455, (x453).get(), (x449).get(), (x446).get());
  int x456 = ((x455).get() + (x447).get());
  Box<Integer> x457 = new Box<Integer>((int)0);
  Box<Integer> x458 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x457, x458, 0x0, (x426).get(), (x450).get());
  Box<Integer> x459 = new Box<Integer>((int)0);
  Box<Integer> x460 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x459, x460, (x458).get(), (x428).get(), (x452).get());
  Box<Integer> x461 = new Box<Integer>((int)0);
  Box<Integer> x462 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x461, x462, (x460).get(), (x430).get(), (x454).get());
  Box<Integer> x463 = new Box<Integer>((int)0);
  Box<Integer> x464 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x463, x464, (x462).get(), (x432).get(), x456);
  Box<Integer> x465 = new Box<Integer>((int)0);
  Box<Integer> x466 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x465, x466, (x464).get(), (x434).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x467 = new Box<Integer>((int)0);
  Box<Integer> x468 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x467, x468, (x466).get(), (x436).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x469 = new Box<Integer>((int)0);
  Box<Integer> x470 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x469, x470, (x468).get(), (x438).get(), (x426).get());
  Box<Integer> x471 = new Box<Integer>((int)0);
  Box<Integer> x472 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x471, x472, (x470).get(), (x440).get(), (x444).get());
  Box<Integer> x473 = new Box<Integer>((int)0);
  Box<Integer> x474 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x473, x474, (x472).get(), (x442).get(), (x445).get());
  int x475 = ((x474).get() + (x443).get());
  Box<Integer> x476 = new Box<Integer>((int)0);
  Box<Integer> x477 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x476, x477, x6, (arg1[7]));
  Box<Integer> x478 = new Box<Integer>((int)0);
  Box<Integer> x479 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x478, x479, x6, (arg1[6]));
  Box<Integer> x480 = new Box<Integer>((int)0);
  Box<Integer> x481 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x480, x481, x6, (arg1[5]));
  Box<Integer> x482 = new Box<Integer>((int)0);
  Box<Integer> x483 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x482, x483, x6, (arg1[4]));
  Box<Integer> x484 = new Box<Integer>((int)0);
  Box<Integer> x485 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x484, x485, x6, (arg1[3]));
  Box<Integer> x486 = new Box<Integer>((int)0);
  Box<Integer> x487 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x486, x487, x6, (arg1[2]));
  Box<Integer> x488 = new Box<Integer>((int)0);
  Box<Integer> x489 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x488, x489, x6, (arg1[1]));
  Box<Integer> x490 = new Box<Integer>((int)0);
  Box<Integer> x491 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x490, x491, x6, (arg1[0]));
  Box<Integer> x492 = new Box<Integer>((int)0);
  Box<Integer> x493 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x492, x493, 0x0, (x491).get(), (x488).get());
  Box<Integer> x494 = new Box<Integer>((int)0);
  Box<Integer> x495 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x494, x495, (x493).get(), (x489).get(), (x486).get());
  Box<Integer> x496 = new Box<Integer>((int)0);
  Box<Integer> x497 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x496, x497, (x495).get(), (x487).get(), (x484).get());
  Box<Integer> x498 = new Box<Integer>((int)0);
  Box<Integer> x499 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x498, x499, (x497).get(), (x485).get(), (x482).get());
  Box<Integer> x500 = new Box<Integer>((int)0);
  Box<Integer> x501 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x500, x501, (x499).get(), (x483).get(), (x480).get());
  Box<Integer> x502 = new Box<Integer>((int)0);
  Box<Integer> x503 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x502, x503, (x501).get(), (x481).get(), (x478).get());
  Box<Integer> x504 = new Box<Integer>((int)0);
  Box<Integer> x505 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x504, x505, (x503).get(), (x479).get(), (x476).get());
  int x506 = ((x505).get() + (x477).get());
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x507, x508, 0x0, (x459).get(), (x490).get());
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x509, x510, (x508).get(), (x461).get(), (x492).get());
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x511, x512, (x510).get(), (x463).get(), (x494).get());
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x513, x514, (x512).get(), (x465).get(), (x496).get());
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x515, x516, (x514).get(), (x467).get(), (x498).get());
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x517, x518, (x516).get(), (x469).get(), (x500).get());
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x519, x520, (x518).get(), (x471).get(), (x502).get());
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x521, x522, (x520).get(), (x473).get(), (x504).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x523, x524, (x522).get(), x475, x506);
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x525, x526, (x507).get(), 0xffffffff);
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x527, x528, (x507).get(), 0xffffffff);
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x529, x530, (x507).get(), 0xffffffff);
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x531, x532, (x507).get(), 0xffffffff);
  Box<Integer> x533 = new Box<Integer>((int)0);
  Box<Integer> x534 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x533, x534, 0x0, (x532).get(), (x529).get());
  Box<Integer> x535 = new Box<Integer>((int)0);
  Box<Integer> x536 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x535, x536, (x534).get(), (x530).get(), (x527).get());
  int x537 = ((x536).get() + (x528).get());
  Box<Integer> x538 = new Box<Integer>((int)0);
  Box<Integer> x539 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x538, x539, 0x0, (x507).get(), (x531).get());
  Box<Integer> x540 = new Box<Integer>((int)0);
  Box<Integer> x541 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x540, x541, (x539).get(), (x509).get(), (x533).get());
  Box<Integer> x542 = new Box<Integer>((int)0);
  Box<Integer> x543 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x542, x543, (x541).get(), (x511).get(), (x535).get());
  Box<Integer> x544 = new Box<Integer>((int)0);
  Box<Integer> x545 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x544, x545, (x543).get(), (x513).get(), x537);
  Box<Integer> x546 = new Box<Integer>((int)0);
  Box<Integer> x547 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x546, x547, (x545).get(), (x515).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x548 = new Box<Integer>((int)0);
  Box<Integer> x549 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x548, x549, (x547).get(), (x517).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x550 = new Box<Integer>((int)0);
  Box<Integer> x551 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x550, x551, (x549).get(), (x519).get(), (x507).get());
  Box<Integer> x552 = new Box<Integer>((int)0);
  Box<Integer> x553 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x552, x553, (x551).get(), (x521).get(), (x525).get());
  Box<Integer> x554 = new Box<Integer>((int)0);
  Box<Integer> x555 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x554, x555, (x553).get(), (x523).get(), (x526).get());
  int x556 = ((x555).get() + (x524).get());
  Box<Integer> x557 = new Box<Integer>((int)0);
  Box<Integer> x558 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x557, x558, x7, (arg1[7]));
  Box<Integer> x559 = new Box<Integer>((int)0);
  Box<Integer> x560 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x559, x560, x7, (arg1[6]));
  Box<Integer> x561 = new Box<Integer>((int)0);
  Box<Integer> x562 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x561, x562, x7, (arg1[5]));
  Box<Integer> x563 = new Box<Integer>((int)0);
  Box<Integer> x564 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x563, x564, x7, (arg1[4]));
  Box<Integer> x565 = new Box<Integer>((int)0);
  Box<Integer> x566 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x565, x566, x7, (arg1[3]));
  Box<Integer> x567 = new Box<Integer>((int)0);
  Box<Integer> x568 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x567, x568, x7, (arg1[2]));
  Box<Integer> x569 = new Box<Integer>((int)0);
  Box<Integer> x570 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x569, x570, x7, (arg1[1]));
  Box<Integer> x571 = new Box<Integer>((int)0);
  Box<Integer> x572 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x571, x572, x7, (arg1[0]));
  Box<Integer> x573 = new Box<Integer>((int)0);
  Box<Integer> x574 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x573, x574, 0x0, (x572).get(), (x569).get());
  Box<Integer> x575 = new Box<Integer>((int)0);
  Box<Integer> x576 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x575, x576, (x574).get(), (x570).get(), (x567).get());
  Box<Integer> x577 = new Box<Integer>((int)0);
  Box<Integer> x578 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x577, x578, (x576).get(), (x568).get(), (x565).get());
  Box<Integer> x579 = new Box<Integer>((int)0);
  Box<Integer> x580 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x579, x580, (x578).get(), (x566).get(), (x563).get());
  Box<Integer> x581 = new Box<Integer>((int)0);
  Box<Integer> x582 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x581, x582, (x580).get(), (x564).get(), (x561).get());
  Box<Integer> x583 = new Box<Integer>((int)0);
  Box<Integer> x584 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x583, x584, (x582).get(), (x562).get(), (x559).get());
  Box<Integer> x585 = new Box<Integer>((int)0);
  Box<Integer> x586 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x585, x586, (x584).get(), (x560).get(), (x557).get());
  int x587 = ((x586).get() + (x558).get());
  Box<Integer> x588 = new Box<Integer>((int)0);
  Box<Integer> x589 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x588, x589, 0x0, (x540).get(), (x571).get());
  Box<Integer> x590 = new Box<Integer>((int)0);
  Box<Integer> x591 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x590, x591, (x589).get(), (x542).get(), (x573).get());
  Box<Integer> x592 = new Box<Integer>((int)0);
  Box<Integer> x593 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x592, x593, (x591).get(), (x544).get(), (x575).get());
  Box<Integer> x594 = new Box<Integer>((int)0);
  Box<Integer> x595 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x594, x595, (x593).get(), (x546).get(), (x577).get());
  Box<Integer> x596 = new Box<Integer>((int)0);
  Box<Integer> x597 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x596, x597, (x595).get(), (x548).get(), (x579).get());
  Box<Integer> x598 = new Box<Integer>((int)0);
  Box<Integer> x599 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x598, x599, (x597).get(), (x550).get(), (x581).get());
  Box<Integer> x600 = new Box<Integer>((int)0);
  Box<Integer> x601 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x600, x601, (x599).get(), (x552).get(), (x583).get());
  Box<Integer> x602 = new Box<Integer>((int)0);
  Box<Integer> x603 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x602, x603, (x601).get(), (x554).get(), (x585).get());
  Box<Integer> x604 = new Box<Integer>((int)0);
  Box<Integer> x605 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x604, x605, (x603).get(), x556, x587);
  Box<Integer> x606 = new Box<Integer>((int)0);
  Box<Integer> x607 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x606, x607, (x588).get(), 0xffffffff);
  Box<Integer> x608 = new Box<Integer>((int)0);
  Box<Integer> x609 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x608, x609, (x588).get(), 0xffffffff);
  Box<Integer> x610 = new Box<Integer>((int)0);
  Box<Integer> x611 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x610, x611, (x588).get(), 0xffffffff);
  Box<Integer> x612 = new Box<Integer>((int)0);
  Box<Integer> x613 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x612, x613, (x588).get(), 0xffffffff);
  Box<Integer> x614 = new Box<Integer>((int)0);
  Box<Integer> x615 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x614, x615, 0x0, (x613).get(), (x610).get());
  Box<Integer> x616 = new Box<Integer>((int)0);
  Box<Integer> x617 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x616, x617, (x615).get(), (x611).get(), (x608).get());
  int x618 = ((x617).get() + (x609).get());
  Box<Integer> x619 = new Box<Integer>((int)0);
  Box<Integer> x620 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x619, x620, 0x0, (x588).get(), (x612).get());
  Box<Integer> x621 = new Box<Integer>((int)0);
  Box<Integer> x622 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x621, x622, (x620).get(), (x590).get(), (x614).get());
  Box<Integer> x623 = new Box<Integer>((int)0);
  Box<Integer> x624 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x623, x624, (x622).get(), (x592).get(), (x616).get());
  Box<Integer> x625 = new Box<Integer>((int)0);
  Box<Integer> x626 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x625, x626, (x624).get(), (x594).get(), x618);
  Box<Integer> x627 = new Box<Integer>((int)0);
  Box<Integer> x628 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x627, x628, (x626).get(), (x596).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x629 = new Box<Integer>((int)0);
  Box<Integer> x630 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x629, x630, (x628).get(), (x598).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x631 = new Box<Integer>((int)0);
  Box<Integer> x632 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x631, x632, (x630).get(), (x600).get(), (x588).get());
  Box<Integer> x633 = new Box<Integer>((int)0);
  Box<Integer> x634 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x633, x634, (x632).get(), (x602).get(), (x606).get());
  Box<Integer> x635 = new Box<Integer>((int)0);
  Box<Integer> x636 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x635, x636, (x634).get(), (x604).get(), (x607).get());
  int x637 = ((x636).get() + (x605).get());
  Box<Integer> x638 = new Box<Integer>((int)0);
  Box<Integer> x639 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x638, x639, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x621).get(), 0xffffffff);
  Box<Integer> x640 = new Box<Integer>((int)0);
  Box<Integer> x641 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x640, x641, (x639).get(), (x623).get(), 0xffffffff);
  Box<Integer> x642 = new Box<Integer>((int)0);
  Box<Integer> x643 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x642, x643, (x641).get(), (x625).get(), 0xffffffff);
  Box<Integer> x644 = new Box<Integer>((int)0);
  Box<Integer> x645 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x644, x645, (x643).get(), (x627).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x646 = new Box<Integer>((int)0);
  Box<Integer> x647 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x646, x647, (x645).get(), (x629).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x648 = new Box<Integer>((int)0);
  Box<Integer> x649 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x648, x649, (x647).get(), (x631).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x650 = new Box<Integer>((int)0);
  Box<Integer> x651 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x650, x651, (x649).get(), (x633).get(), 0x1);
  Box<Integer> x652 = new Box<Integer>((int)0);
  Box<Integer> x653 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x652, x653, (x651).get(), (x635).get(), 0xffffffff);
  Box<Integer> x654 = new Box<Integer>((int)0);
  Box<Integer> x655 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x654, x655, (x653).get(), x637, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x656 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x656, (x655).get(), (x638).get(), (x621).get());
  Box<Integer> x657 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x657, (x655).get(), (x640).get(), (x623).get());
  Box<Integer> x658 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x658, (x655).get(), (x642).get(), (x625).get());
  Box<Integer> x659 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x659, (x655).get(), (x644).get(), (x627).get());
  Box<Integer> x660 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x660, (x655).get(), (x646).get(), (x629).get());
  Box<Integer> x661 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x661, (x655).get(), (x648).get(), (x631).get());
  Box<Integer> x662 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x662, (x655).get(), (x650).get(), (x633).get());
  Box<Integer> x663 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x663, (x655).get(), (x652).get(), (x635).get());
  out1[0] = (x656).get();
  out1[1] = (x657).get();
  out1[2] = (x658).get();
  out1[3] = (x659).get();
  out1[4] = (x660).get();
  out1[5] = (x661).get();
  out1[6] = (x662).get();
  out1[7] = (x663).get();
}

/**
 * The function fiat_P256_add adds two field elements in the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 *   0 ≤ eval arg2 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) + eval (from_montgomery arg2)) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_add(int[] out1, final int[] arg1, final int[] arg2) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x1, x2, 0x0, (arg1[0]), (arg2[0]));
  Box<Integer> x3 = new Box<Integer>((int)0);
  Box<Integer> x4 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x3, x4, (x2).get(), (arg1[1]), (arg2[1]));
  Box<Integer> x5 = new Box<Integer>((int)0);
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x5, x6, (x4).get(), (arg1[2]), (arg2[2]));
  Box<Integer> x7 = new Box<Integer>((int)0);
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x7, x8, (x6).get(), (arg1[3]), (arg2[3]));
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x9, x10, (x8).get(), (arg1[4]), (arg2[4]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x11, x12, (x10).get(), (arg1[5]), (arg2[5]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x13, x14, (x12).get(), (arg1[6]), (arg2[6]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x15, x16, (x14).get(), (arg1[7]), (arg2[7]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x17, x18, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x1).get(), 0xffffffff);
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x19, x20, (x18).get(), (x3).get(), 0xffffffff);
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x21, x22, (x20).get(), (x5).get(), 0xffffffff);
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x23, x24, (x22).get(), (x7).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x25, x26, (x24).get(), (x9).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x27, x28, (x26).get(), (x11).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x29, x30, (x28).get(), (x13).get(), 0x1);
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x31, x32, (x30).get(), (x15).get(), 0xffffffff);
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x33, x34, (x32).get(), (x16).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x35, (x34).get(), (x17).get(), (x1).get());
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x36, (x34).get(), (x19).get(), (x3).get());
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x37, (x34).get(), (x21).get(), (x5).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x38, (x34).get(), (x23).get(), (x7).get());
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x39, (x34).get(), (x25).get(), (x9).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x40, (x34).get(), (x27).get(), (x11).get());
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x41, (x34).get(), (x29).get(), (x13).get());
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x42, (x34).get(), (x31).get(), (x15).get());
  out1[0] = (x35).get();
  out1[1] = (x36).get();
  out1[2] = (x37).get();
  out1[3] = (x38).get();
  out1[4] = (x39).get();
  out1[5] = (x40).get();
  out1[6] = (x41).get();
  out1[7] = (x42).get();
}

/**
 * The function fiat_P256_sub subtracts two field elements in the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 *   0 ≤ eval arg2 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = (eval (from_montgomery arg1) - eval (from_montgomery arg2)) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_sub(int[] out1, final int[] arg1, final int[] arg2) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x1, x2, 0x0, (arg1[0]), (arg2[0]));
  Box<Integer> x3 = new Box<Integer>((int)0);
  Box<Integer> x4 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x3, x4, (x2).get(), (arg1[1]), (arg2[1]));
  Box<Integer> x5 = new Box<Integer>((int)0);
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x5, x6, (x4).get(), (arg1[2]), (arg2[2]));
  Box<Integer> x7 = new Box<Integer>((int)0);
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x7, x8, (x6).get(), (arg1[3]), (arg2[3]));
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x9, x10, (x8).get(), (arg1[4]), (arg2[4]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x11, x12, (x10).get(), (arg1[5]), (arg2[5]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x13, x14, (x12).get(), (arg1[6]), (arg2[6]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x15, x16, (x14).get(), (arg1[7]), (arg2[7]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x17, (x16).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), 0xffffffff);
  Box<Integer> x18 = new Box<Integer>((int)0);
  Box<Integer> x19 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x18, x19, 0x0, (x1).get(), (x17).get());
  Box<Integer> x20 = new Box<Integer>((int)0);
  Box<Integer> x21 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x20, x21, (x19).get(), (x3).get(), (x17).get());
  Box<Integer> x22 = new Box<Integer>((int)0);
  Box<Integer> x23 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x22, x23, (x21).get(), (x5).get(), (x17).get());
  Box<Integer> x24 = new Box<Integer>((int)0);
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x24, x25, (x23).get(), (x7).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x26, x27, (x25).get(), (x9).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x28, x29, (x27).get(), (x11).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x30, x31, (x29).get(), (x13).get(), ((x17).get() & 0x1));
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x32, x33, (x31).get(), (x15).get(), (x17).get());
  out1[0] = (x18).get();
  out1[1] = (x20).get();
  out1[2] = (x22).get();
  out1[3] = (x24).get();
  out1[4] = (x26).get();
  out1[5] = (x28).get();
  out1[6] = (x30).get();
  out1[7] = (x32).get();
}

/**
 * The function fiat_P256_opp negates a field element in the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = -eval (from_montgomery arg1) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_opp(int[] out1, final int[] arg1) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x1, x2, 0x0, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[0]));
  Box<Integer> x3 = new Box<Integer>((int)0);
  Box<Integer> x4 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x3, x4, (x2).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[1]));
  Box<Integer> x5 = new Box<Integer>((int)0);
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x5, x6, (x4).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[2]));
  Box<Integer> x7 = new Box<Integer>((int)0);
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x7, x8, (x6).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[3]));
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x9, x10, (x8).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[4]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x11, x12, (x10).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[5]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x13, x14, (x12).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[6]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x15, x16, (x14).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[7]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x17, (x16).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), 0xffffffff);
  Box<Integer> x18 = new Box<Integer>((int)0);
  Box<Integer> x19 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x18, x19, 0x0, (x1).get(), (x17).get());
  Box<Integer> x20 = new Box<Integer>((int)0);
  Box<Integer> x21 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x20, x21, (x19).get(), (x3).get(), (x17).get());
  Box<Integer> x22 = new Box<Integer>((int)0);
  Box<Integer> x23 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x22, x23, (x21).get(), (x5).get(), (x17).get());
  Box<Integer> x24 = new Box<Integer>((int)0);
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x24, x25, (x23).get(), (x7).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x26, x27, (x25).get(), (x9).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x28, x29, (x27).get(), (x11).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x30, x31, (x29).get(), (x13).get(), ((x17).get() & 0x1));
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x32, x33, (x31).get(), (x15).get(), (x17).get());
  out1[0] = (x18).get();
  out1[1] = (x20).get();
  out1[2] = (x22).get();
  out1[3] = (x24).get();
  out1[4] = (x26).get();
  out1[5] = (x28).get();
  out1[6] = (x30).get();
  out1[7] = (x32).get();
}

/**
 * The function fiat_P256_from_montgomery translates a field element out of the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   eval out1 mod m = (eval arg1 * ((2^32)⁻¹ mod m)^8) mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_from_montgomery(int[] out1, final int[] arg1) {
  int x1 = (arg1[0]);
  Box<Integer> x2 = new Box<Integer>((int)0);
  Box<Integer> x3 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x2, x3, x1, 0xffffffff);
  Box<Integer> x4 = new Box<Integer>((int)0);
  Box<Integer> x5 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x4, x5, x1, 0xffffffff);
  Box<Integer> x6 = new Box<Integer>((int)0);
  Box<Integer> x7 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x6, x7, x1, 0xffffffff);
  Box<Integer> x8 = new Box<Integer>((int)0);
  Box<Integer> x9 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x8, x9, x1, 0xffffffff);
  Box<Integer> x10 = new Box<Integer>((int)0);
  Box<Integer> x11 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x10, x11, 0x0, (x9).get(), (x6).get());
  Box<Integer> x12 = new Box<Integer>((int)0);
  Box<Integer> x13 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x12, x13, (x11).get(), (x7).get(), (x4).get());
  Box<Integer> x14 = new Box<Integer>((int)0);
  Box<Integer> x15 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x14, x15, 0x0, x1, (x8).get());
  Box<Integer> x16 = new Box<Integer>((int)0);
  Box<Integer> x17 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x16, x17, (x15).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x10).get());
  Box<Integer> x18 = new Box<Integer>((int)0);
  Box<Integer> x19 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x18, x19, (x17).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x12).get());
  Box<Integer> x20 = new Box<Integer>((int)0);
  Box<Integer> x21 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x20, x21, (x19).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), ((x13).get() + (x5).get()));
  Box<Integer> x22 = new Box<Integer>((int)0);
  Box<Integer> x23 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x22, x23, 0x0, (x16).get(), (arg1[1]));
  Box<Integer> x24 = new Box<Integer>((int)0);
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x24, x25, (x23).get(), (x18).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x26, x27, (x25).get(), (x20).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x28, x29, (x22).get(), 0xffffffff);
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x30, x31, (x22).get(), 0xffffffff);
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x32, x33, (x22).get(), 0xffffffff);
  Box<Integer> x34 = new Box<Integer>((int)0);
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x34, x35, (x22).get(), 0xffffffff);
  Box<Integer> x36 = new Box<Integer>((int)0);
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x36, x37, 0x0, (x35).get(), (x32).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x38, x39, (x37).get(), (x33).get(), (x30).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x40, x41, 0x0, (x22).get(), (x34).get());
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x42, x43, (x41).get(), (x24).get(), (x36).get());
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x44, x45, (x43).get(), (x26).get(), (x38).get());
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x46, x47, (x45).get(), ((x27).get() + (x21).get()), ((x39).get() + (x31).get()));
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x48, x49, 0x0, (x2).get(), (x22).get());
  Box<Integer> x50 = new Box<Integer>((int)0);
  Box<Integer> x51 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x50, x51, (x49).get(), (x3).get(), (x28).get());
  Box<Integer> x52 = new Box<Integer>((int)0);
  Box<Integer> x53 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x52, x53, 0x0, (x42).get(), (arg1[2]));
  Box<Integer> x54 = new Box<Integer>((int)0);
  Box<Integer> x55 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x54, x55, (x53).get(), (x44).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x56 = new Box<Integer>((int)0);
  Box<Integer> x57 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x56, x57, (x55).get(), (x46).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x58 = new Box<Integer>((int)0);
  Box<Integer> x59 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x58, x59, (x52).get(), 0xffffffff);
  Box<Integer> x60 = new Box<Integer>((int)0);
  Box<Integer> x61 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x60, x61, (x52).get(), 0xffffffff);
  Box<Integer> x62 = new Box<Integer>((int)0);
  Box<Integer> x63 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x62, x63, (x52).get(), 0xffffffff);
  Box<Integer> x64 = new Box<Integer>((int)0);
  Box<Integer> x65 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x64, x65, (x52).get(), 0xffffffff);
  Box<Integer> x66 = new Box<Integer>((int)0);
  Box<Integer> x67 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x66, x67, 0x0, (x65).get(), (x62).get());
  Box<Integer> x68 = new Box<Integer>((int)0);
  Box<Integer> x69 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x68, x69, (x67).get(), (x63).get(), (x60).get());
  Box<Integer> x70 = new Box<Integer>((int)0);
  Box<Integer> x71 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x70, x71, 0x0, (x52).get(), (x64).get());
  Box<Integer> x72 = new Box<Integer>((int)0);
  Box<Integer> x73 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x72, x73, (x71).get(), (x54).get(), (x66).get());
  Box<Integer> x74 = new Box<Integer>((int)0);
  Box<Integer> x75 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x74, x75, (x73).get(), (x56).get(), (x68).get());
  Box<Integer> x76 = new Box<Integer>((int)0);
  Box<Integer> x77 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x76, x77, (x75).get(), ((x57).get() + (x47).get()), ((x69).get() + (x61).get()));
  Box<Integer> x78 = new Box<Integer>((int)0);
  Box<Integer> x79 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x78, x79, (x77).get(), x1, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x80 = new Box<Integer>((int)0);
  Box<Integer> x81 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x80, x81, (x79).get(), (x48).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x82 = new Box<Integer>((int)0);
  Box<Integer> x83 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x82, x83, (x81).get(), (x50).get(), (x52).get());
  Box<Integer> x84 = new Box<Integer>((int)0);
  Box<Integer> x85 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x84, x85, (x83).get(), ((x51).get() + (x29).get()), (x58).get());
  Box<Integer> x86 = new Box<Integer>((int)0);
  Box<Integer> x87 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x86, x87, 0x0, (x72).get(), (arg1[3]));
  Box<Integer> x88 = new Box<Integer>((int)0);
  Box<Integer> x89 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x88, x89, (x87).get(), (x74).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x90 = new Box<Integer>((int)0);
  Box<Integer> x91 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x90, x91, (x89).get(), (x76).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x92 = new Box<Integer>((int)0);
  Box<Integer> x93 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x92, x93, (x91).get(), (x78).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x94 = new Box<Integer>((int)0);
  Box<Integer> x95 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x94, x95, (x93).get(), (x80).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x96 = new Box<Integer>((int)0);
  Box<Integer> x97 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x96, x97, (x95).get(), (x82).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x98 = new Box<Integer>((int)0);
  Box<Integer> x99 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x98, x99, (x97).get(), (x84).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x100 = new Box<Integer>((int)0);
  Box<Integer> x101 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x100, x101, (x99).get(), ((x85).get() + (x59).get()), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x102 = new Box<Integer>((int)0);
  Box<Integer> x103 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x102, x103, (x86).get(), 0xffffffff);
  Box<Integer> x104 = new Box<Integer>((int)0);
  Box<Integer> x105 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x104, x105, (x86).get(), 0xffffffff);
  Box<Integer> x106 = new Box<Integer>((int)0);
  Box<Integer> x107 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x106, x107, (x86).get(), 0xffffffff);
  Box<Integer> x108 = new Box<Integer>((int)0);
  Box<Integer> x109 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x108, x109, (x86).get(), 0xffffffff);
  Box<Integer> x110 = new Box<Integer>((int)0);
  Box<Integer> x111 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x110, x111, 0x0, (x109).get(), (x106).get());
  Box<Integer> x112 = new Box<Integer>((int)0);
  Box<Integer> x113 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x112, x113, (x111).get(), (x107).get(), (x104).get());
  Box<Integer> x114 = new Box<Integer>((int)0);
  Box<Integer> x115 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x114, x115, 0x0, (x86).get(), (x108).get());
  Box<Integer> x116 = new Box<Integer>((int)0);
  Box<Integer> x117 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x116, x117, (x115).get(), (x88).get(), (x110).get());
  Box<Integer> x118 = new Box<Integer>((int)0);
  Box<Integer> x119 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x118, x119, (x117).get(), (x90).get(), (x112).get());
  Box<Integer> x120 = new Box<Integer>((int)0);
  Box<Integer> x121 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x120, x121, (x119).get(), (x92).get(), ((x113).get() + (x105).get()));
  Box<Integer> x122 = new Box<Integer>((int)0);
  Box<Integer> x123 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x122, x123, (x121).get(), (x94).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x124 = new Box<Integer>((int)0);
  Box<Integer> x125 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x124, x125, (x123).get(), (x96).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x126 = new Box<Integer>((int)0);
  Box<Integer> x127 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x126, x127, (x125).get(), (x98).get(), (x86).get());
  Box<Integer> x128 = new Box<Integer>((int)0);
  Box<Integer> x129 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x128, x129, (x127).get(), (x100).get(), (x102).get());
  Box<Integer> x130 = new Box<Integer>((int)0);
  Box<Integer> x131 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x130, x131, (x129).get(), (x101).get(), (x103).get());
  Box<Integer> x132 = new Box<Integer>((int)0);
  Box<Integer> x133 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x132, x133, 0x0, (x116).get(), (arg1[4]));
  Box<Integer> x134 = new Box<Integer>((int)0);
  Box<Integer> x135 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x134, x135, (x133).get(), (x118).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x136 = new Box<Integer>((int)0);
  Box<Integer> x137 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x136, x137, (x135).get(), (x120).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x138 = new Box<Integer>((int)0);
  Box<Integer> x139 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x138, x139, (x137).get(), (x122).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x140 = new Box<Integer>((int)0);
  Box<Integer> x141 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x140, x141, (x139).get(), (x124).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x142 = new Box<Integer>((int)0);
  Box<Integer> x143 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x142, x143, (x141).get(), (x126).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x144 = new Box<Integer>((int)0);
  Box<Integer> x145 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x144, x145, (x143).get(), (x128).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x146 = new Box<Integer>((int)0);
  Box<Integer> x147 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x146, x147, (x145).get(), (x130).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x148 = new Box<Integer>((int)0);
  Box<Integer> x149 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x148, x149, (x132).get(), 0xffffffff);
  Box<Integer> x150 = new Box<Integer>((int)0);
  Box<Integer> x151 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x150, x151, (x132).get(), 0xffffffff);
  Box<Integer> x152 = new Box<Integer>((int)0);
  Box<Integer> x153 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x152, x153, (x132).get(), 0xffffffff);
  Box<Integer> x154 = new Box<Integer>((int)0);
  Box<Integer> x155 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x154, x155, (x132).get(), 0xffffffff);
  Box<Integer> x156 = new Box<Integer>((int)0);
  Box<Integer> x157 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x156, x157, 0x0, (x155).get(), (x152).get());
  Box<Integer> x158 = new Box<Integer>((int)0);
  Box<Integer> x159 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x158, x159, (x157).get(), (x153).get(), (x150).get());
  Box<Integer> x160 = new Box<Integer>((int)0);
  Box<Integer> x161 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x160, x161, 0x0, (x132).get(), (x154).get());
  Box<Integer> x162 = new Box<Integer>((int)0);
  Box<Integer> x163 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x162, x163, (x161).get(), (x134).get(), (x156).get());
  Box<Integer> x164 = new Box<Integer>((int)0);
  Box<Integer> x165 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x164, x165, (x163).get(), (x136).get(), (x158).get());
  Box<Integer> x166 = new Box<Integer>((int)0);
  Box<Integer> x167 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x166, x167, (x165).get(), (x138).get(), ((x159).get() + (x151).get()));
  Box<Integer> x168 = new Box<Integer>((int)0);
  Box<Integer> x169 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x168, x169, (x167).get(), (x140).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x170, x171, (x169).get(), (x142).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x172, x173, (x171).get(), (x144).get(), (x132).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x174, x175, (x173).get(), (x146).get(), (x148).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x176, x177, (x175).get(), ((x147).get() + (x131).get()), (x149).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x178, x179, 0x0, (x162).get(), (arg1[5]));
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x180, x181, (x179).get(), (x164).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x182 = new Box<Integer>((int)0);
  Box<Integer> x183 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x182, x183, (x181).get(), (x166).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x184 = new Box<Integer>((int)0);
  Box<Integer> x185 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x184, x185, (x183).get(), (x168).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x186 = new Box<Integer>((int)0);
  Box<Integer> x187 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x186, x187, (x185).get(), (x170).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x188 = new Box<Integer>((int)0);
  Box<Integer> x189 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x188, x189, (x187).get(), (x172).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x190 = new Box<Integer>((int)0);
  Box<Integer> x191 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x190, x191, (x189).get(), (x174).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x192 = new Box<Integer>((int)0);
  Box<Integer> x193 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x192, x193, (x191).get(), (x176).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x194 = new Box<Integer>((int)0);
  Box<Integer> x195 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x194, x195, (x178).get(), 0xffffffff);
  Box<Integer> x196 = new Box<Integer>((int)0);
  Box<Integer> x197 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x196, x197, (x178).get(), 0xffffffff);
  Box<Integer> x198 = new Box<Integer>((int)0);
  Box<Integer> x199 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x198, x199, (x178).get(), 0xffffffff);
  Box<Integer> x200 = new Box<Integer>((int)0);
  Box<Integer> x201 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x200, x201, (x178).get(), 0xffffffff);
  Box<Integer> x202 = new Box<Integer>((int)0);
  Box<Integer> x203 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x202, x203, 0x0, (x201).get(), (x198).get());
  Box<Integer> x204 = new Box<Integer>((int)0);
  Box<Integer> x205 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x204, x205, (x203).get(), (x199).get(), (x196).get());
  Box<Integer> x206 = new Box<Integer>((int)0);
  Box<Integer> x207 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x206, x207, 0x0, (x178).get(), (x200).get());
  Box<Integer> x208 = new Box<Integer>((int)0);
  Box<Integer> x209 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x208, x209, (x207).get(), (x180).get(), (x202).get());
  Box<Integer> x210 = new Box<Integer>((int)0);
  Box<Integer> x211 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x210, x211, (x209).get(), (x182).get(), (x204).get());
  Box<Integer> x212 = new Box<Integer>((int)0);
  Box<Integer> x213 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x212, x213, (x211).get(), (x184).get(), ((x205).get() + (x197).get()));
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x214, x215, (x213).get(), (x186).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x216, x217, (x215).get(), (x188).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x218, x219, (x217).get(), (x190).get(), (x178).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x220, x221, (x219).get(), (x192).get(), (x194).get());
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x222, x223, (x221).get(), ((x193).get() + (x177).get()), (x195).get());
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x224, x225, 0x0, (x208).get(), (arg1[6]));
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x226, x227, (x225).get(), (x210).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x228, x229, (x227).get(), (x212).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x230, x231, (x229).get(), (x214).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x232 = new Box<Integer>((int)0);
  Box<Integer> x233 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x232, x233, (x231).get(), (x216).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x234 = new Box<Integer>((int)0);
  Box<Integer> x235 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x234, x235, (x233).get(), (x218).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x236 = new Box<Integer>((int)0);
  Box<Integer> x237 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x236, x237, (x235).get(), (x220).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x238 = new Box<Integer>((int)0);
  Box<Integer> x239 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x238, x239, (x237).get(), (x222).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x240 = new Box<Integer>((int)0);
  Box<Integer> x241 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x240, x241, (x224).get(), 0xffffffff);
  Box<Integer> x242 = new Box<Integer>((int)0);
  Box<Integer> x243 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x242, x243, (x224).get(), 0xffffffff);
  Box<Integer> x244 = new Box<Integer>((int)0);
  Box<Integer> x245 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x244, x245, (x224).get(), 0xffffffff);
  Box<Integer> x246 = new Box<Integer>((int)0);
  Box<Integer> x247 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x246, x247, (x224).get(), 0xffffffff);
  Box<Integer> x248 = new Box<Integer>((int)0);
  Box<Integer> x249 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x248, x249, 0x0, (x247).get(), (x244).get());
  Box<Integer> x250 = new Box<Integer>((int)0);
  Box<Integer> x251 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x250, x251, (x249).get(), (x245).get(), (x242).get());
  Box<Integer> x252 = new Box<Integer>((int)0);
  Box<Integer> x253 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x252, x253, 0x0, (x224).get(), (x246).get());
  Box<Integer> x254 = new Box<Integer>((int)0);
  Box<Integer> x255 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x254, x255, (x253).get(), (x226).get(), (x248).get());
  Box<Integer> x256 = new Box<Integer>((int)0);
  Box<Integer> x257 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x256, x257, (x255).get(), (x228).get(), (x250).get());
  Box<Integer> x258 = new Box<Integer>((int)0);
  Box<Integer> x259 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x258, x259, (x257).get(), (x230).get(), ((x251).get() + (x243).get()));
  Box<Integer> x260 = new Box<Integer>((int)0);
  Box<Integer> x261 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x260, x261, (x259).get(), (x232).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x262 = new Box<Integer>((int)0);
  Box<Integer> x263 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x262, x263, (x261).get(), (x234).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x264, x265, (x263).get(), (x236).get(), (x224).get());
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x266, x267, (x265).get(), (x238).get(), (x240).get());
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x268, x269, (x267).get(), ((x239).get() + (x223).get()), (x241).get());
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x270, x271, 0x0, (x254).get(), (arg1[7]));
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x272, x273, (x271).get(), (x256).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x274, x275, (x273).get(), (x258).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x276, x277, (x275).get(), (x260).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x278, x279, (x277).get(), (x262).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x280, x281, (x279).get(), (x264).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x282, x283, (x281).get(), (x266).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x284, x285, (x283).get(), (x268).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x286, x287, (x270).get(), 0xffffffff);
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x288, x289, (x270).get(), 0xffffffff);
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x290, x291, (x270).get(), 0xffffffff);
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x292, x293, (x270).get(), 0xffffffff);
  Box<Integer> x294 = new Box<Integer>((int)0);
  Box<Integer> x295 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x294, x295, 0x0, (x293).get(), (x290).get());
  Box<Integer> x296 = new Box<Integer>((int)0);
  Box<Integer> x297 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x296, x297, (x295).get(), (x291).get(), (x288).get());
  Box<Integer> x298 = new Box<Integer>((int)0);
  Box<Integer> x299 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x298, x299, 0x0, (x270).get(), (x292).get());
  Box<Integer> x300 = new Box<Integer>((int)0);
  Box<Integer> x301 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x300, x301, (x299).get(), (x272).get(), (x294).get());
  Box<Integer> x302 = new Box<Integer>((int)0);
  Box<Integer> x303 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x302, x303, (x301).get(), (x274).get(), (x296).get());
  Box<Integer> x304 = new Box<Integer>((int)0);
  Box<Integer> x305 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x304, x305, (x303).get(), (x276).get(), ((x297).get() + (x289).get()));
  Box<Integer> x306 = new Box<Integer>((int)0);
  Box<Integer> x307 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x306, x307, (x305).get(), (x278).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x308 = new Box<Integer>((int)0);
  Box<Integer> x309 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x308, x309, (x307).get(), (x280).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x310 = new Box<Integer>((int)0);
  Box<Integer> x311 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x310, x311, (x309).get(), (x282).get(), (x270).get());
  Box<Integer> x312 = new Box<Integer>((int)0);
  Box<Integer> x313 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x312, x313, (x311).get(), (x284).get(), (x286).get());
  Box<Integer> x314 = new Box<Integer>((int)0);
  Box<Integer> x315 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x314, x315, (x313).get(), ((x285).get() + (x269).get()), (x287).get());
  Box<Integer> x316 = new Box<Integer>((int)0);
  Box<Integer> x317 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x316, x317, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x300).get(), 0xffffffff);
  Box<Integer> x318 = new Box<Integer>((int)0);
  Box<Integer> x319 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x318, x319, (x317).get(), (x302).get(), 0xffffffff);
  Box<Integer> x320 = new Box<Integer>((int)0);
  Box<Integer> x321 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x320, x321, (x319).get(), (x304).get(), 0xffffffff);
  Box<Integer> x322 = new Box<Integer>((int)0);
  Box<Integer> x323 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x322, x323, (x321).get(), (x306).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x324 = new Box<Integer>((int)0);
  Box<Integer> x325 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x324, x325, (x323).get(), (x308).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x326 = new Box<Integer>((int)0);
  Box<Integer> x327 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x326, x327, (x325).get(), (x310).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x328 = new Box<Integer>((int)0);
  Box<Integer> x329 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x328, x329, (x327).get(), (x312).get(), 0x1);
  Box<Integer> x330 = new Box<Integer>((int)0);
  Box<Integer> x331 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x330, x331, (x329).get(), (x314).get(), 0xffffffff);
  Box<Integer> x332 = new Box<Integer>((int)0);
  Box<Integer> x333 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x332, x333, (x331).get(), (x315).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x334 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x334, (x333).get(), (x316).get(), (x300).get());
  Box<Integer> x335 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x335, (x333).get(), (x318).get(), (x302).get());
  Box<Integer> x336 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x336, (x333).get(), (x320).get(), (x304).get());
  Box<Integer> x337 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x337, (x333).get(), (x322).get(), (x306).get());
  Box<Integer> x338 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x338, (x333).get(), (x324).get(), (x308).get());
  Box<Integer> x339 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x339, (x333).get(), (x326).get(), (x310).get());
  Box<Integer> x340 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x340, (x333).get(), (x328).get(), (x312).get());
  Box<Integer> x341 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x341, (x333).get(), (x330).get(), (x314).get());
  out1[0] = (x334).get();
  out1[1] = (x335).get();
  out1[2] = (x336).get();
  out1[3] = (x337).get();
  out1[4] = (x338).get();
  out1[5] = (x339).get();
  out1[6] = (x340).get();
  out1[7] = (x341).get();
}

/**
 * The function fiat_P256_to_montgomery translates a field element into the Montgomery domain. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = eval arg1 mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_to_montgomery(int[] out1, final int[] arg1) {
  int x1 = (arg1[1]);
  int x2 = (arg1[2]);
  int x3 = (arg1[3]);
  int x4 = (arg1[4]);
  int x5 = (arg1[5]);
  int x6 = (arg1[6]);
  int x7 = (arg1[7]);
  int x8 = (arg1[0]);
  Box<Integer> x9 = new Box<Integer>((int)0);
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x9, x10, x8, 0x4);
  Box<Integer> x11 = new Box<Integer>((int)0);
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x11, x12, x8, 0xfffffffd);
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x13, x14, x8, 0xffffffff);
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x15, x16, x8, 0xfffffffe);
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x17, x18, x8, 0xfffffffb);
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x19, x20, x8, 0xffffffff);
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x21, x22, x8, 0x3);
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x23, x24, 0x0, (x20).get(), (x17).get());
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x25, x26, (x24).get(), (x18).get(), (x15).get());
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x27, x28, (x26).get(), (x16).get(), (x13).get());
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x29, x30, (x28).get(), (x14).get(), (x11).get());
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x31, x32, (x30).get(), (x12).get(), (x9).get());
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x33, x34, (x21).get(), 0xffffffff);
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x35, x36, (x21).get(), 0xffffffff);
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x37, x38, (x21).get(), 0xffffffff);
  Box<Integer> x39 = new Box<Integer>((int)0);
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x39, x40, (x21).get(), 0xffffffff);
  Box<Integer> x41 = new Box<Integer>((int)0);
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x41, x42, 0x0, (x40).get(), (x37).get());
  Box<Integer> x43 = new Box<Integer>((int)0);
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x43, x44, (x42).get(), (x38).get(), (x35).get());
  Box<Integer> x45 = new Box<Integer>((int)0);
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x45, x46, 0x0, (x21).get(), (x39).get());
  Box<Integer> x47 = new Box<Integer>((int)0);
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x47, x48, (x46).get(), (x22).get(), (x41).get());
  Box<Integer> x49 = new Box<Integer>((int)0);
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x49, x50, (x48).get(), (x19).get(), (x43).get());
  Box<Integer> x51 = new Box<Integer>((int)0);
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x51, x52, (x50).get(), (x23).get(), ((x44).get() + (x36).get()));
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x53, x54, (x52).get(), (x25).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x55, x56, (x54).get(), (x27).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x57, x58, (x56).get(), (x29).get(), (x21).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x59, x60, (x58).get(), (x31).get(), (x33).get());
  Box<Integer> x61 = new Box<Integer>((int)0);
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x61, x62, (x60).get(), ((x32).get() + (x10).get()), (x34).get());
  Box<Integer> x63 = new Box<Integer>((int)0);
  Box<Integer> x64 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x63, x64, x1, 0x4);
  Box<Integer> x65 = new Box<Integer>((int)0);
  Box<Integer> x66 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x65, x66, x1, 0xfffffffd);
  Box<Integer> x67 = new Box<Integer>((int)0);
  Box<Integer> x68 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x67, x68, x1, 0xffffffff);
  Box<Integer> x69 = new Box<Integer>((int)0);
  Box<Integer> x70 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x69, x70, x1, 0xfffffffe);
  Box<Integer> x71 = new Box<Integer>((int)0);
  Box<Integer> x72 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x71, x72, x1, 0xfffffffb);
  Box<Integer> x73 = new Box<Integer>((int)0);
  Box<Integer> x74 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x73, x74, x1, 0xffffffff);
  Box<Integer> x75 = new Box<Integer>((int)0);
  Box<Integer> x76 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x75, x76, x1, 0x3);
  Box<Integer> x77 = new Box<Integer>((int)0);
  Box<Integer> x78 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x77, x78, 0x0, (x74).get(), (x71).get());
  Box<Integer> x79 = new Box<Integer>((int)0);
  Box<Integer> x80 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x79, x80, (x78).get(), (x72).get(), (x69).get());
  Box<Integer> x81 = new Box<Integer>((int)0);
  Box<Integer> x82 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x81, x82, (x80).get(), (x70).get(), (x67).get());
  Box<Integer> x83 = new Box<Integer>((int)0);
  Box<Integer> x84 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x83, x84, (x82).get(), (x68).get(), (x65).get());
  Box<Integer> x85 = new Box<Integer>((int)0);
  Box<Integer> x86 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x85, x86, (x84).get(), (x66).get(), (x63).get());
  Box<Integer> x87 = new Box<Integer>((int)0);
  Box<Integer> x88 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x87, x88, 0x0, (x47).get(), (x75).get());
  Box<Integer> x89 = new Box<Integer>((int)0);
  Box<Integer> x90 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x89, x90, (x88).get(), (x49).get(), (x76).get());
  Box<Integer> x91 = new Box<Integer>((int)0);
  Box<Integer> x92 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x91, x92, (x90).get(), (x51).get(), (x73).get());
  Box<Integer> x93 = new Box<Integer>((int)0);
  Box<Integer> x94 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x93, x94, (x92).get(), (x53).get(), (x77).get());
  Box<Integer> x95 = new Box<Integer>((int)0);
  Box<Integer> x96 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x95, x96, (x94).get(), (x55).get(), (x79).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x97, x98, (x96).get(), (x57).get(), (x81).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x99, x100, (x98).get(), (x59).get(), (x83).get());
  Box<Integer> x101 = new Box<Integer>((int)0);
  Box<Integer> x102 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x101, x102, (x100).get(), (x61).get(), (x85).get());
  Box<Integer> x103 = new Box<Integer>((int)0);
  Box<Integer> x104 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x103, x104, (x87).get(), 0xffffffff);
  Box<Integer> x105 = new Box<Integer>((int)0);
  Box<Integer> x106 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x105, x106, (x87).get(), 0xffffffff);
  Box<Integer> x107 = new Box<Integer>((int)0);
  Box<Integer> x108 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x107, x108, (x87).get(), 0xffffffff);
  Box<Integer> x109 = new Box<Integer>((int)0);
  Box<Integer> x110 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x109, x110, (x87).get(), 0xffffffff);
  Box<Integer> x111 = new Box<Integer>((int)0);
  Box<Integer> x112 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x111, x112, 0x0, (x110).get(), (x107).get());
  Box<Integer> x113 = new Box<Integer>((int)0);
  Box<Integer> x114 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x113, x114, (x112).get(), (x108).get(), (x105).get());
  Box<Integer> x115 = new Box<Integer>((int)0);
  Box<Integer> x116 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x115, x116, 0x0, (x87).get(), (x109).get());
  Box<Integer> x117 = new Box<Integer>((int)0);
  Box<Integer> x118 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x117, x118, (x116).get(), (x89).get(), (x111).get());
  Box<Integer> x119 = new Box<Integer>((int)0);
  Box<Integer> x120 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x119, x120, (x118).get(), (x91).get(), (x113).get());
  Box<Integer> x121 = new Box<Integer>((int)0);
  Box<Integer> x122 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x121, x122, (x120).get(), (x93).get(), ((x114).get() + (x106).get()));
  Box<Integer> x123 = new Box<Integer>((int)0);
  Box<Integer> x124 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x123, x124, (x122).get(), (x95).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x125 = new Box<Integer>((int)0);
  Box<Integer> x126 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x125, x126, (x124).get(), (x97).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x127 = new Box<Integer>((int)0);
  Box<Integer> x128 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x127, x128, (x126).get(), (x99).get(), (x87).get());
  Box<Integer> x129 = new Box<Integer>((int)0);
  Box<Integer> x130 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x129, x130, (x128).get(), (x101).get(), (x103).get());
  Box<Integer> x131 = new Box<Integer>((int)0);
  Box<Integer> x132 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x131, x132, (x130).get(), (((x102).get() + (x62).get()) + ((x86).get() + (x64).get())), (x104).get());
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x133, x134, x2, 0x4);
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x135, x136, x2, 0xfffffffd);
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x137, x138, x2, 0xffffffff);
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x139, x140, x2, 0xfffffffe);
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x141, x142, x2, 0xfffffffb);
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x143, x144, x2, 0xffffffff);
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x145, x146, x2, 0x3);
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x147, x148, 0x0, (x144).get(), (x141).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x149, x150, (x148).get(), (x142).get(), (x139).get());
  Box<Integer> x151 = new Box<Integer>((int)0);
  Box<Integer> x152 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x151, x152, (x150).get(), (x140).get(), (x137).get());
  Box<Integer> x153 = new Box<Integer>((int)0);
  Box<Integer> x154 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x153, x154, (x152).get(), (x138).get(), (x135).get());
  Box<Integer> x155 = new Box<Integer>((int)0);
  Box<Integer> x156 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x155, x156, (x154).get(), (x136).get(), (x133).get());
  Box<Integer> x157 = new Box<Integer>((int)0);
  Box<Integer> x158 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x157, x158, 0x0, (x117).get(), (x145).get());
  Box<Integer> x159 = new Box<Integer>((int)0);
  Box<Integer> x160 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x159, x160, (x158).get(), (x119).get(), (x146).get());
  Box<Integer> x161 = new Box<Integer>((int)0);
  Box<Integer> x162 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x161, x162, (x160).get(), (x121).get(), (x143).get());
  Box<Integer> x163 = new Box<Integer>((int)0);
  Box<Integer> x164 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x163, x164, (x162).get(), (x123).get(), (x147).get());
  Box<Integer> x165 = new Box<Integer>((int)0);
  Box<Integer> x166 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x165, x166, (x164).get(), (x125).get(), (x149).get());
  Box<Integer> x167 = new Box<Integer>((int)0);
  Box<Integer> x168 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x167, x168, (x166).get(), (x127).get(), (x151).get());
  Box<Integer> x169 = new Box<Integer>((int)0);
  Box<Integer> x170 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x169, x170, (x168).get(), (x129).get(), (x153).get());
  Box<Integer> x171 = new Box<Integer>((int)0);
  Box<Integer> x172 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x171, x172, (x170).get(), (x131).get(), (x155).get());
  Box<Integer> x173 = new Box<Integer>((int)0);
  Box<Integer> x174 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x173, x174, (x157).get(), 0xffffffff);
  Box<Integer> x175 = new Box<Integer>((int)0);
  Box<Integer> x176 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x175, x176, (x157).get(), 0xffffffff);
  Box<Integer> x177 = new Box<Integer>((int)0);
  Box<Integer> x178 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x177, x178, (x157).get(), 0xffffffff);
  Box<Integer> x179 = new Box<Integer>((int)0);
  Box<Integer> x180 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x179, x180, (x157).get(), 0xffffffff);
  Box<Integer> x181 = new Box<Integer>((int)0);
  Box<Integer> x182 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x181, x182, 0x0, (x180).get(), (x177).get());
  Box<Integer> x183 = new Box<Integer>((int)0);
  Box<Integer> x184 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x183, x184, (x182).get(), (x178).get(), (x175).get());
  Box<Integer> x185 = new Box<Integer>((int)0);
  Box<Integer> x186 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x185, x186, 0x0, (x157).get(), (x179).get());
  Box<Integer> x187 = new Box<Integer>((int)0);
  Box<Integer> x188 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x187, x188, (x186).get(), (x159).get(), (x181).get());
  Box<Integer> x189 = new Box<Integer>((int)0);
  Box<Integer> x190 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x189, x190, (x188).get(), (x161).get(), (x183).get());
  Box<Integer> x191 = new Box<Integer>((int)0);
  Box<Integer> x192 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x191, x192, (x190).get(), (x163).get(), ((x184).get() + (x176).get()));
  Box<Integer> x193 = new Box<Integer>((int)0);
  Box<Integer> x194 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x193, x194, (x192).get(), (x165).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x195 = new Box<Integer>((int)0);
  Box<Integer> x196 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x195, x196, (x194).get(), (x167).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x197 = new Box<Integer>((int)0);
  Box<Integer> x198 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x197, x198, (x196).get(), (x169).get(), (x157).get());
  Box<Integer> x199 = new Box<Integer>((int)0);
  Box<Integer> x200 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x199, x200, (x198).get(), (x171).get(), (x173).get());
  Box<Integer> x201 = new Box<Integer>((int)0);
  Box<Integer> x202 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x201, x202, (x200).get(), (((x172).get() + (x132).get()) + ((x156).get() + (x134).get())), (x174).get());
  Box<Integer> x203 = new Box<Integer>((int)0);
  Box<Integer> x204 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x203, x204, x3, 0x4);
  Box<Integer> x205 = new Box<Integer>((int)0);
  Box<Integer> x206 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x205, x206, x3, 0xfffffffd);
  Box<Integer> x207 = new Box<Integer>((int)0);
  Box<Integer> x208 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x207, x208, x3, 0xffffffff);
  Box<Integer> x209 = new Box<Integer>((int)0);
  Box<Integer> x210 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x209, x210, x3, 0xfffffffe);
  Box<Integer> x211 = new Box<Integer>((int)0);
  Box<Integer> x212 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x211, x212, x3, 0xfffffffb);
  Box<Integer> x213 = new Box<Integer>((int)0);
  Box<Integer> x214 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x213, x214, x3, 0xffffffff);
  Box<Integer> x215 = new Box<Integer>((int)0);
  Box<Integer> x216 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x215, x216, x3, 0x3);
  Box<Integer> x217 = new Box<Integer>((int)0);
  Box<Integer> x218 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x217, x218, 0x0, (x214).get(), (x211).get());
  Box<Integer> x219 = new Box<Integer>((int)0);
  Box<Integer> x220 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x219, x220, (x218).get(), (x212).get(), (x209).get());
  Box<Integer> x221 = new Box<Integer>((int)0);
  Box<Integer> x222 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x221, x222, (x220).get(), (x210).get(), (x207).get());
  Box<Integer> x223 = new Box<Integer>((int)0);
  Box<Integer> x224 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x223, x224, (x222).get(), (x208).get(), (x205).get());
  Box<Integer> x225 = new Box<Integer>((int)0);
  Box<Integer> x226 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x225, x226, (x224).get(), (x206).get(), (x203).get());
  Box<Integer> x227 = new Box<Integer>((int)0);
  Box<Integer> x228 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x227, x228, 0x0, (x187).get(), (x215).get());
  Box<Integer> x229 = new Box<Integer>((int)0);
  Box<Integer> x230 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x229, x230, (x228).get(), (x189).get(), (x216).get());
  Box<Integer> x231 = new Box<Integer>((int)0);
  Box<Integer> x232 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x231, x232, (x230).get(), (x191).get(), (x213).get());
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x233, x234, (x232).get(), (x193).get(), (x217).get());
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x235, x236, (x234).get(), (x195).get(), (x219).get());
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x237, x238, (x236).get(), (x197).get(), (x221).get());
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x239, x240, (x238).get(), (x199).get(), (x223).get());
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x241, x242, (x240).get(), (x201).get(), (x225).get());
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x243, x244, (x227).get(), 0xffffffff);
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x245, x246, (x227).get(), 0xffffffff);
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x247, x248, (x227).get(), 0xffffffff);
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x249, x250, (x227).get(), 0xffffffff);
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x251, x252, 0x0, (x250).get(), (x247).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x253, x254, (x252).get(), (x248).get(), (x245).get());
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x255, x256, 0x0, (x227).get(), (x249).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x257, x258, (x256).get(), (x229).get(), (x251).get());
  Box<Integer> x259 = new Box<Integer>((int)0);
  Box<Integer> x260 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x259, x260, (x258).get(), (x231).get(), (x253).get());
  Box<Integer> x261 = new Box<Integer>((int)0);
  Box<Integer> x262 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x261, x262, (x260).get(), (x233).get(), ((x254).get() + (x246).get()));
  Box<Integer> x263 = new Box<Integer>((int)0);
  Box<Integer> x264 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x263, x264, (x262).get(), (x235).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x265 = new Box<Integer>((int)0);
  Box<Integer> x266 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x265, x266, (x264).get(), (x237).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x267 = new Box<Integer>((int)0);
  Box<Integer> x268 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x267, x268, (x266).get(), (x239).get(), (x227).get());
  Box<Integer> x269 = new Box<Integer>((int)0);
  Box<Integer> x270 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x269, x270, (x268).get(), (x241).get(), (x243).get());
  Box<Integer> x271 = new Box<Integer>((int)0);
  Box<Integer> x272 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x271, x272, (x270).get(), (((x242).get() + (x202).get()) + ((x226).get() + (x204).get())), (x244).get());
  Box<Integer> x273 = new Box<Integer>((int)0);
  Box<Integer> x274 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x273, x274, x4, 0x4);
  Box<Integer> x275 = new Box<Integer>((int)0);
  Box<Integer> x276 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x275, x276, x4, 0xfffffffd);
  Box<Integer> x277 = new Box<Integer>((int)0);
  Box<Integer> x278 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x277, x278, x4, 0xffffffff);
  Box<Integer> x279 = new Box<Integer>((int)0);
  Box<Integer> x280 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x279, x280, x4, 0xfffffffe);
  Box<Integer> x281 = new Box<Integer>((int)0);
  Box<Integer> x282 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x281, x282, x4, 0xfffffffb);
  Box<Integer> x283 = new Box<Integer>((int)0);
  Box<Integer> x284 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x283, x284, x4, 0xffffffff);
  Box<Integer> x285 = new Box<Integer>((int)0);
  Box<Integer> x286 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x285, x286, x4, 0x3);
  Box<Integer> x287 = new Box<Integer>((int)0);
  Box<Integer> x288 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x287, x288, 0x0, (x284).get(), (x281).get());
  Box<Integer> x289 = new Box<Integer>((int)0);
  Box<Integer> x290 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x289, x290, (x288).get(), (x282).get(), (x279).get());
  Box<Integer> x291 = new Box<Integer>((int)0);
  Box<Integer> x292 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x291, x292, (x290).get(), (x280).get(), (x277).get());
  Box<Integer> x293 = new Box<Integer>((int)0);
  Box<Integer> x294 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x293, x294, (x292).get(), (x278).get(), (x275).get());
  Box<Integer> x295 = new Box<Integer>((int)0);
  Box<Integer> x296 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x295, x296, (x294).get(), (x276).get(), (x273).get());
  Box<Integer> x297 = new Box<Integer>((int)0);
  Box<Integer> x298 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x297, x298, 0x0, (x257).get(), (x285).get());
  Box<Integer> x299 = new Box<Integer>((int)0);
  Box<Integer> x300 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x299, x300, (x298).get(), (x259).get(), (x286).get());
  Box<Integer> x301 = new Box<Integer>((int)0);
  Box<Integer> x302 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x301, x302, (x300).get(), (x261).get(), (x283).get());
  Box<Integer> x303 = new Box<Integer>((int)0);
  Box<Integer> x304 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x303, x304, (x302).get(), (x263).get(), (x287).get());
  Box<Integer> x305 = new Box<Integer>((int)0);
  Box<Integer> x306 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x305, x306, (x304).get(), (x265).get(), (x289).get());
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x307, x308, (x306).get(), (x267).get(), (x291).get());
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x309, x310, (x308).get(), (x269).get(), (x293).get());
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x311, x312, (x310).get(), (x271).get(), (x295).get());
  Box<Integer> x313 = new Box<Integer>((int)0);
  Box<Integer> x314 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x313, x314, (x297).get(), 0xffffffff);
  Box<Integer> x315 = new Box<Integer>((int)0);
  Box<Integer> x316 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x315, x316, (x297).get(), 0xffffffff);
  Box<Integer> x317 = new Box<Integer>((int)0);
  Box<Integer> x318 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x317, x318, (x297).get(), 0xffffffff);
  Box<Integer> x319 = new Box<Integer>((int)0);
  Box<Integer> x320 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x319, x320, (x297).get(), 0xffffffff);
  Box<Integer> x321 = new Box<Integer>((int)0);
  Box<Integer> x322 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x321, x322, 0x0, (x320).get(), (x317).get());
  Box<Integer> x323 = new Box<Integer>((int)0);
  Box<Integer> x324 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x323, x324, (x322).get(), (x318).get(), (x315).get());
  Box<Integer> x325 = new Box<Integer>((int)0);
  Box<Integer> x326 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x325, x326, 0x0, (x297).get(), (x319).get());
  Box<Integer> x327 = new Box<Integer>((int)0);
  Box<Integer> x328 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x327, x328, (x326).get(), (x299).get(), (x321).get());
  Box<Integer> x329 = new Box<Integer>((int)0);
  Box<Integer> x330 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x329, x330, (x328).get(), (x301).get(), (x323).get());
  Box<Integer> x331 = new Box<Integer>((int)0);
  Box<Integer> x332 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x331, x332, (x330).get(), (x303).get(), ((x324).get() + (x316).get()));
  Box<Integer> x333 = new Box<Integer>((int)0);
  Box<Integer> x334 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x333, x334, (x332).get(), (x305).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x335 = new Box<Integer>((int)0);
  Box<Integer> x336 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x335, x336, (x334).get(), (x307).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x337 = new Box<Integer>((int)0);
  Box<Integer> x338 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x337, x338, (x336).get(), (x309).get(), (x297).get());
  Box<Integer> x339 = new Box<Integer>((int)0);
  Box<Integer> x340 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x339, x340, (x338).get(), (x311).get(), (x313).get());
  Box<Integer> x341 = new Box<Integer>((int)0);
  Box<Integer> x342 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x341, x342, (x340).get(), (((x312).get() + (x272).get()) + ((x296).get() + (x274).get())), (x314).get());
  Box<Integer> x343 = new Box<Integer>((int)0);
  Box<Integer> x344 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x343, x344, x5, 0x4);
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x345, x346, x5, 0xfffffffd);
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x347, x348, x5, 0xffffffff);
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x349, x350, x5, 0xfffffffe);
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x351, x352, x5, 0xfffffffb);
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x353, x354, x5, 0xffffffff);
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x355, x356, x5, 0x3);
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x357, x358, 0x0, (x354).get(), (x351).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x359, x360, (x358).get(), (x352).get(), (x349).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x361, x362, (x360).get(), (x350).get(), (x347).get());
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x363, x364, (x362).get(), (x348).get(), (x345).get());
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x365, x366, (x364).get(), (x346).get(), (x343).get());
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x367, x368, 0x0, (x327).get(), (x355).get());
  Box<Integer> x369 = new Box<Integer>((int)0);
  Box<Integer> x370 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x369, x370, (x368).get(), (x329).get(), (x356).get());
  Box<Integer> x371 = new Box<Integer>((int)0);
  Box<Integer> x372 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x371, x372, (x370).get(), (x331).get(), (x353).get());
  Box<Integer> x373 = new Box<Integer>((int)0);
  Box<Integer> x374 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x373, x374, (x372).get(), (x333).get(), (x357).get());
  Box<Integer> x375 = new Box<Integer>((int)0);
  Box<Integer> x376 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x375, x376, (x374).get(), (x335).get(), (x359).get());
  Box<Integer> x377 = new Box<Integer>((int)0);
  Box<Integer> x378 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x377, x378, (x376).get(), (x337).get(), (x361).get());
  Box<Integer> x379 = new Box<Integer>((int)0);
  Box<Integer> x380 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x379, x380, (x378).get(), (x339).get(), (x363).get());
  Box<Integer> x381 = new Box<Integer>((int)0);
  Box<Integer> x382 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x381, x382, (x380).get(), (x341).get(), (x365).get());
  Box<Integer> x383 = new Box<Integer>((int)0);
  Box<Integer> x384 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x383, x384, (x367).get(), 0xffffffff);
  Box<Integer> x385 = new Box<Integer>((int)0);
  Box<Integer> x386 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x385, x386, (x367).get(), 0xffffffff);
  Box<Integer> x387 = new Box<Integer>((int)0);
  Box<Integer> x388 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x387, x388, (x367).get(), 0xffffffff);
  Box<Integer> x389 = new Box<Integer>((int)0);
  Box<Integer> x390 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x389, x390, (x367).get(), 0xffffffff);
  Box<Integer> x391 = new Box<Integer>((int)0);
  Box<Integer> x392 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x391, x392, 0x0, (x390).get(), (x387).get());
  Box<Integer> x393 = new Box<Integer>((int)0);
  Box<Integer> x394 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x393, x394, (x392).get(), (x388).get(), (x385).get());
  Box<Integer> x395 = new Box<Integer>((int)0);
  Box<Integer> x396 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x395, x396, 0x0, (x367).get(), (x389).get());
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x397, x398, (x396).get(), (x369).get(), (x391).get());
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x399, x400, (x398).get(), (x371).get(), (x393).get());
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x401, x402, (x400).get(), (x373).get(), ((x394).get() + (x386).get()));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x403, x404, (x402).get(), (x375).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x405, x406, (x404).get(), (x377).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x407, x408, (x406).get(), (x379).get(), (x367).get());
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x409, x410, (x408).get(), (x381).get(), (x383).get());
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x411, x412, (x410).get(), (((x382).get() + (x342).get()) + ((x366).get() + (x344).get())), (x384).get());
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x413, x414, x6, 0x4);
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x415, x416, x6, 0xfffffffd);
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x417, x418, x6, 0xffffffff);
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x419, x420, x6, 0xfffffffe);
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x421, x422, x6, 0xfffffffb);
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x423, x424, x6, 0xffffffff);
  Box<Integer> x425 = new Box<Integer>((int)0);
  Box<Integer> x426 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x425, x426, x6, 0x3);
  Box<Integer> x427 = new Box<Integer>((int)0);
  Box<Integer> x428 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x427, x428, 0x0, (x424).get(), (x421).get());
  Box<Integer> x429 = new Box<Integer>((int)0);
  Box<Integer> x430 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x429, x430, (x428).get(), (x422).get(), (x419).get());
  Box<Integer> x431 = new Box<Integer>((int)0);
  Box<Integer> x432 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x431, x432, (x430).get(), (x420).get(), (x417).get());
  Box<Integer> x433 = new Box<Integer>((int)0);
  Box<Integer> x434 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x433, x434, (x432).get(), (x418).get(), (x415).get());
  Box<Integer> x435 = new Box<Integer>((int)0);
  Box<Integer> x436 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x435, x436, (x434).get(), (x416).get(), (x413).get());
  Box<Integer> x437 = new Box<Integer>((int)0);
  Box<Integer> x438 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x437, x438, 0x0, (x397).get(), (x425).get());
  Box<Integer> x439 = new Box<Integer>((int)0);
  Box<Integer> x440 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x439, x440, (x438).get(), (x399).get(), (x426).get());
  Box<Integer> x441 = new Box<Integer>((int)0);
  Box<Integer> x442 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x441, x442, (x440).get(), (x401).get(), (x423).get());
  Box<Integer> x443 = new Box<Integer>((int)0);
  Box<Integer> x444 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x443, x444, (x442).get(), (x403).get(), (x427).get());
  Box<Integer> x445 = new Box<Integer>((int)0);
  Box<Integer> x446 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x445, x446, (x444).get(), (x405).get(), (x429).get());
  Box<Integer> x447 = new Box<Integer>((int)0);
  Box<Integer> x448 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x447, x448, (x446).get(), (x407).get(), (x431).get());
  Box<Integer> x449 = new Box<Integer>((int)0);
  Box<Integer> x450 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x449, x450, (x448).get(), (x409).get(), (x433).get());
  Box<Integer> x451 = new Box<Integer>((int)0);
  Box<Integer> x452 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x451, x452, (x450).get(), (x411).get(), (x435).get());
  Box<Integer> x453 = new Box<Integer>((int)0);
  Box<Integer> x454 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x453, x454, (x437).get(), 0xffffffff);
  Box<Integer> x455 = new Box<Integer>((int)0);
  Box<Integer> x456 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x455, x456, (x437).get(), 0xffffffff);
  Box<Integer> x457 = new Box<Integer>((int)0);
  Box<Integer> x458 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x457, x458, (x437).get(), 0xffffffff);
  Box<Integer> x459 = new Box<Integer>((int)0);
  Box<Integer> x460 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x459, x460, (x437).get(), 0xffffffff);
  Box<Integer> x461 = new Box<Integer>((int)0);
  Box<Integer> x462 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x461, x462, 0x0, (x460).get(), (x457).get());
  Box<Integer> x463 = new Box<Integer>((int)0);
  Box<Integer> x464 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x463, x464, (x462).get(), (x458).get(), (x455).get());
  Box<Integer> x465 = new Box<Integer>((int)0);
  Box<Integer> x466 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x465, x466, 0x0, (x437).get(), (x459).get());
  Box<Integer> x467 = new Box<Integer>((int)0);
  Box<Integer> x468 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x467, x468, (x466).get(), (x439).get(), (x461).get());
  Box<Integer> x469 = new Box<Integer>((int)0);
  Box<Integer> x470 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x469, x470, (x468).get(), (x441).get(), (x463).get());
  Box<Integer> x471 = new Box<Integer>((int)0);
  Box<Integer> x472 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x471, x472, (x470).get(), (x443).get(), ((x464).get() + (x456).get()));
  Box<Integer> x473 = new Box<Integer>((int)0);
  Box<Integer> x474 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x473, x474, (x472).get(), (x445).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x475 = new Box<Integer>((int)0);
  Box<Integer> x476 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x475, x476, (x474).get(), (x447).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x477 = new Box<Integer>((int)0);
  Box<Integer> x478 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x477, x478, (x476).get(), (x449).get(), (x437).get());
  Box<Integer> x479 = new Box<Integer>((int)0);
  Box<Integer> x480 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x479, x480, (x478).get(), (x451).get(), (x453).get());
  Box<Integer> x481 = new Box<Integer>((int)0);
  Box<Integer> x482 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x481, x482, (x480).get(), (((x452).get() + (x412).get()) + ((x436).get() + (x414).get())), (x454).get());
  Box<Integer> x483 = new Box<Integer>((int)0);
  Box<Integer> x484 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x483, x484, x7, 0x4);
  Box<Integer> x485 = new Box<Integer>((int)0);
  Box<Integer> x486 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x485, x486, x7, 0xfffffffd);
  Box<Integer> x487 = new Box<Integer>((int)0);
  Box<Integer> x488 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x487, x488, x7, 0xffffffff);
  Box<Integer> x489 = new Box<Integer>((int)0);
  Box<Integer> x490 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x489, x490, x7, 0xfffffffe);
  Box<Integer> x491 = new Box<Integer>((int)0);
  Box<Integer> x492 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x491, x492, x7, 0xfffffffb);
  Box<Integer> x493 = new Box<Integer>((int)0);
  Box<Integer> x494 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x493, x494, x7, 0xffffffff);
  Box<Integer> x495 = new Box<Integer>((int)0);
  Box<Integer> x496 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x495, x496, x7, 0x3);
  Box<Integer> x497 = new Box<Integer>((int)0);
  Box<Integer> x498 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x497, x498, 0x0, (x494).get(), (x491).get());
  Box<Integer> x499 = new Box<Integer>((int)0);
  Box<Integer> x500 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x499, x500, (x498).get(), (x492).get(), (x489).get());
  Box<Integer> x501 = new Box<Integer>((int)0);
  Box<Integer> x502 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x501, x502, (x500).get(), (x490).get(), (x487).get());
  Box<Integer> x503 = new Box<Integer>((int)0);
  Box<Integer> x504 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x503, x504, (x502).get(), (x488).get(), (x485).get());
  Box<Integer> x505 = new Box<Integer>((int)0);
  Box<Integer> x506 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x505, x506, (x504).get(), (x486).get(), (x483).get());
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x507, x508, 0x0, (x467).get(), (x495).get());
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x509, x510, (x508).get(), (x469).get(), (x496).get());
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x511, x512, (x510).get(), (x471).get(), (x493).get());
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x513, x514, (x512).get(), (x473).get(), (x497).get());
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x515, x516, (x514).get(), (x475).get(), (x499).get());
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x517, x518, (x516).get(), (x477).get(), (x501).get());
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x519, x520, (x518).get(), (x479).get(), (x503).get());
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x521, x522, (x520).get(), (x481).get(), (x505).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x523, x524, (x507).get(), 0xffffffff);
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x525, x526, (x507).get(), 0xffffffff);
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x527, x528, (x507).get(), 0xffffffff);
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P256_mulx_u32(x529, x530, (x507).get(), 0xffffffff);
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x531, x532, 0x0, (x530).get(), (x527).get());
  Box<Integer> x533 = new Box<Integer>((int)0);
  Box<Integer> x534 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x533, x534, (x532).get(), (x528).get(), (x525).get());
  Box<Integer> x535 = new Box<Integer>((int)0);
  Box<Integer> x536 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x535, x536, 0x0, (x507).get(), (x529).get());
  Box<Integer> x537 = new Box<Integer>((int)0);
  Box<Integer> x538 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x537, x538, (x536).get(), (x509).get(), (x531).get());
  Box<Integer> x539 = new Box<Integer>((int)0);
  Box<Integer> x540 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x539, x540, (x538).get(), (x511).get(), (x533).get());
  Box<Integer> x541 = new Box<Integer>((int)0);
  Box<Integer> x542 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x541, x542, (x540).get(), (x513).get(), ((x534).get() + (x526).get()));
  Box<Integer> x543 = new Box<Integer>((int)0);
  Box<Integer> x544 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x543, x544, (x542).get(), (x515).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x545 = new Box<Integer>((int)0);
  Box<Integer> x546 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x545, x546, (x544).get(), (x517).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x547 = new Box<Integer>((int)0);
  Box<Integer> x548 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x547, x548, (x546).get(), (x519).get(), (x507).get());
  Box<Integer> x549 = new Box<Integer>((int)0);
  Box<Integer> x550 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x549, x550, (x548).get(), (x521).get(), (x523).get());
  Box<Integer> x551 = new Box<Integer>((int)0);
  Box<Integer> x552 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x551, x552, (x550).get(), (((x522).get() + (x482).get()) + ((x506).get() + (x484).get())), (x524).get());
  Box<Integer> x553 = new Box<Integer>((int)0);
  Box<Integer> x554 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x553, x554, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x537).get(), 0xffffffff);
  Box<Integer> x555 = new Box<Integer>((int)0);
  Box<Integer> x556 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x555, x556, (x554).get(), (x539).get(), 0xffffffff);
  Box<Integer> x557 = new Box<Integer>((int)0);
  Box<Integer> x558 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x557, x558, (x556).get(), (x541).get(), 0xffffffff);
  Box<Integer> x559 = new Box<Integer>((int)0);
  Box<Integer> x560 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x559, x560, (x558).get(), (x543).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x561 = new Box<Integer>((int)0);
  Box<Integer> x562 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x561, x562, (x560).get(), (x545).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x563 = new Box<Integer>((int)0);
  Box<Integer> x564 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x563, x564, (x562).get(), (x547).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x565 = new Box<Integer>((int)0);
  Box<Integer> x566 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x565, x566, (x564).get(), (x549).get(), 0x1);
  Box<Integer> x567 = new Box<Integer>((int)0);
  Box<Integer> x568 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x567, x568, (x566).get(), (x551).get(), 0xffffffff);
  Box<Integer> x569 = new Box<Integer>((int)0);
  Box<Integer> x570 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x569, x570, (x568).get(), (x552).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x571 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x571, (x570).get(), (x553).get(), (x537).get());
  Box<Integer> x572 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x572, (x570).get(), (x555).get(), (x539).get());
  Box<Integer> x573 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x573, (x570).get(), (x557).get(), (x541).get());
  Box<Integer> x574 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x574, (x570).get(), (x559).get(), (x543).get());
  Box<Integer> x575 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x575, (x570).get(), (x561).get(), (x545).get());
  Box<Integer> x576 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x576, (x570).get(), (x563).get(), (x547).get());
  Box<Integer> x577 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x577, (x570).get(), (x565).get(), (x549).get());
  Box<Integer> x578 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x578, (x570).get(), (x567).get(), (x551).get());
  out1[0] = (x571).get();
  out1[1] = (x572).get();
  out1[2] = (x573).get();
  out1[3] = (x574).get();
  out1[4] = (x575).get();
  out1[5] = (x576).get();
  out1[6] = (x577).get();
  out1[7] = (x578).get();
}

/**
 * The function fiat_P256_nonzero outputs a single non-zero word if the input is non-zero and zero otherwise. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   out1 = 0 ↔ eval (from_montgomery arg1) mod m = 0 <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 */
public static void fiat_P256_nonzero(Box<Integer> out1, final int[] arg1) {
  int x1 = ((arg1[0]) | ((arg1[1]) | ((arg1[2]) | ((arg1[3]) | ((arg1[4]) | ((arg1[5]) | ((arg1[6]) | (arg1[7]))))))));
  out1.set(x1);
}

/**
 * The function fiat_P256_selectznz is a multi-limb conditional select. <p>
 * <p>
 * Postconditions: <p>
 *   out1 = (if arg1 = 0 then arg2 else arg3) <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0x1] <p>
 *   arg2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg3: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_selectznz(int[] out1, int arg1, final int[] arg2, final int[] arg3) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x1, arg1, (arg2[0]), (arg3[0]));
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x2, arg1, (arg2[1]), (arg3[1]));
  Box<Integer> x3 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x3, arg1, (arg2[2]), (arg3[2]));
  Box<Integer> x4 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x4, arg1, (arg2[3]), (arg3[3]));
  Box<Integer> x5 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x5, arg1, (arg2[4]), (arg3[4]));
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x6, arg1, (arg2[5]), (arg3[5]));
  Box<Integer> x7 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x7, arg1, (arg2[6]), (arg3[6]));
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x8, arg1, (arg2[7]), (arg3[7]));
  out1[0] = (x1).get();
  out1[1] = (x2).get();
  out1[2] = (x3).get();
  out1[3] = (x4).get();
  out1[4] = (x5).get();
  out1[5] = (x6).get();
  out1[6] = (x7).get();
  out1[7] = (x8).get();
}

/**
 * The function fiat_P256_to_bytes serializes a field element NOT in the Montgomery domain to bytes in little-endian order. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   out1 = map (λ x, ⌊((eval arg1 mod m) mod 2^(8 * (x + 1))) / 2^(8 * x)⌋) [0..31] <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff]] <p>
 */
public static void fiat_P256_to_bytes(int[] out1, final int[] arg1) {
  int x1 = (arg1[7]);
  int x2 = (arg1[6]);
  int x3 = (arg1[5]);
  int x4 = (arg1[4]);
  int x5 = (arg1[3]);
  int x6 = (arg1[2]);
  int x7 = (arg1[1]);
  int x8 = (arg1[0]);
  int x9 = (x8 & 0xff);
  int x10 = (x8 >>> 8);
  int x11 = (x10 & 0xff);
  int x12 = (x10 >>> 8);
  int x13 = (x12 & 0xff);
  int x14 = (x12 >>> 8);
  int x15 = (x7 & 0xff);
  int x16 = (x7 >>> 8);
  int x17 = (x16 & 0xff);
  int x18 = (x16 >>> 8);
  int x19 = (x18 & 0xff);
  int x20 = (x18 >>> 8);
  int x21 = (x6 & 0xff);
  int x22 = (x6 >>> 8);
  int x23 = (x22 & 0xff);
  int x24 = (x22 >>> 8);
  int x25 = (x24 & 0xff);
  int x26 = (x24 >>> 8);
  int x27 = (x5 & 0xff);
  int x28 = (x5 >>> 8);
  int x29 = (x28 & 0xff);
  int x30 = (x28 >>> 8);
  int x31 = (x30 & 0xff);
  int x32 = (x30 >>> 8);
  int x33 = (x4 & 0xff);
  int x34 = (x4 >>> 8);
  int x35 = (x34 & 0xff);
  int x36 = (x34 >>> 8);
  int x37 = (x36 & 0xff);
  int x38 = (x36 >>> 8);
  int x39 = (x3 & 0xff);
  int x40 = (x3 >>> 8);
  int x41 = (x40 & 0xff);
  int x42 = (x40 >>> 8);
  int x43 = (x42 & 0xff);
  int x44 = (x42 >>> 8);
  int x45 = (x2 & 0xff);
  int x46 = (x2 >>> 8);
  int x47 = (x46 & 0xff);
  int x48 = (x46 >>> 8);
  int x49 = (x48 & 0xff);
  int x50 = (x48 >>> 8);
  int x51 = (x1 & 0xff);
  int x52 = (x1 >>> 8);
  int x53 = (x52 & 0xff);
  int x54 = (x52 >>> 8);
  int x55 = (x54 & 0xff);
  int x56 = (x54 >>> 8);
  out1[0] = x9;
  out1[1] = x11;
  out1[2] = x13;
  out1[3] = x14;
  out1[4] = x15;
  out1[5] = x17;
  out1[6] = x19;
  out1[7] = x20;
  out1[8] = x21;
  out1[9] = x23;
  out1[10] = x25;
  out1[11] = x26;
  out1[12] = x27;
  out1[13] = x29;
  out1[14] = x31;
  out1[15] = x32;
  out1[16] = x33;
  out1[17] = x35;
  out1[18] = x37;
  out1[19] = x38;
  out1[20] = x39;
  out1[21] = x41;
  out1[22] = x43;
  out1[23] = x44;
  out1[24] = x45;
  out1[25] = x47;
  out1[26] = x49;
  out1[27] = x50;
  out1[28] = x51;
  out1[29] = x53;
  out1[30] = x55;
  out1[31] = x56;
}

/**
 * The function fiat_P256_from_bytes deserializes a field element NOT in the Montgomery domain from bytes in little-endian order. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ bytes_eval arg1 &lt; m <p>
 * Postconditions: <p>
 *   eval out1 mod m = bytes_eval arg1 mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [[0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff], [0x0 ~&gt; 0xff]] <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_from_bytes(int[] out1, final int[] arg1) {
  int x1 = ((arg1[31]) << 24);
  int x2 = ((arg1[30]) << 16);
  int x3 = ((arg1[29]) << 8);
  int x4 = (arg1[28]);
  int x5 = ((arg1[27]) << 24);
  int x6 = ((arg1[26]) << 16);
  int x7 = ((arg1[25]) << 8);
  int x8 = (arg1[24]);
  int x9 = ((arg1[23]) << 24);
  int x10 = ((arg1[22]) << 16);
  int x11 = ((arg1[21]) << 8);
  int x12 = (arg1[20]);
  int x13 = ((arg1[19]) << 24);
  int x14 = ((arg1[18]) << 16);
  int x15 = ((arg1[17]) << 8);
  int x16 = (arg1[16]);
  int x17 = ((arg1[15]) << 24);
  int x18 = ((arg1[14]) << 16);
  int x19 = ((arg1[13]) << 8);
  int x20 = (arg1[12]);
  int x21 = ((arg1[11]) << 24);
  int x22 = ((arg1[10]) << 16);
  int x23 = ((arg1[9]) << 8);
  int x24 = (arg1[8]);
  int x25 = ((arg1[7]) << 24);
  int x26 = ((arg1[6]) << 16);
  int x27 = ((arg1[5]) << 8);
  int x28 = (arg1[4]);
  int x29 = ((arg1[3]) << 24);
  int x30 = ((arg1[2]) << 16);
  int x31 = ((arg1[1]) << 8);
  int x32 = (arg1[0]);
  int x33 = (x31 + x32);
  int x34 = (x30 + x33);
  int x35 = (x29 + x34);
  int x36 = (x27 + x28);
  int x37 = (x26 + x36);
  int x38 = (x25 + x37);
  int x39 = (x23 + x24);
  int x40 = (x22 + x39);
  int x41 = (x21 + x40);
  int x42 = (x19 + x20);
  int x43 = (x18 + x42);
  int x44 = (x17 + x43);
  int x45 = (x15 + x16);
  int x46 = (x14 + x45);
  int x47 = (x13 + x46);
  int x48 = (x11 + x12);
  int x49 = (x10 + x48);
  int x50 = (x9 + x49);
  int x51 = (x7 + x8);
  int x52 = (x6 + x51);
  int x53 = (x5 + x52);
  int x54 = (x3 + x4);
  int x55 = (x2 + x54);
  int x56 = (x1 + x55);
  out1[0] = x35;
  out1[1] = x38;
  out1[2] = x41;
  out1[3] = x44;
  out1[4] = x47;
  out1[5] = x50;
  out1[6] = x53;
  out1[7] = x56;
}

/**
 * The function fiat_P256_set_one returns the field element one in the Montgomery domain. <p>
 * <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) mod m = 1 mod m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_set_one(int[] out1) {
  out1[0] = 0x1;
  out1[1] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[2] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[3] = 0xffffffff;
  out1[4] = 0xffffffff;
  out1[5] = 0xffffffff;
  out1[6] = 0xfffffffe;
  out1[7] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
}

/**
 * The function fiat_P256_msat returns the saturated representation of the prime modulus. <p>
 * <p>
 * Postconditions: <p>
 *   twos_complement_eval out1 = m <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_msat(int[] out1) {
  out1[0] = 0xffffffff;
  out1[1] = 0xffffffff;
  out1[2] = 0xffffffff;
  out1[3] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[4] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[5] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[6] = 0x1;
  out1[7] = 0xffffffff;
  out1[8] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
}

/**
 * The function fiat_P256_divstep computes a divstep. <p>
 * <p>
 * Preconditions: <p>
 *   0 ≤ eval arg4 &lt; m <p>
 *   0 ≤ eval arg5 &lt; m <p>
 * Postconditions: <p>
 *   out1 = (if 0 &lt; arg1 ∧ (twos_complement_eval arg3) is odd then 1 - arg1 else 1 + arg1) <p>
 *   twos_complement_eval out2 = (if 0 &lt; arg1 ∧ (twos_complement_eval arg3) is odd then twos_complement_eval arg3 else twos_complement_eval arg2) <p>
 *   twos_complement_eval out3 = (if 0 &lt; 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⌋) <p>
 *   eval (from_montgomery out4) mod m = (if 0 &lt; arg1 ∧ (twos_complement_eval arg3) is odd then (2 * eval (from_montgomery arg5)) mod m else (2 * eval (from_montgomery arg4)) mod m) <p>
 *   eval (from_montgomery out5) mod m = (if 0 &lt; 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) <p>
 *   0 ≤ eval out5 &lt; m <p>
 *   0 ≤ eval out5 &lt; m <p>
 *   0 ≤ eval out2 &lt; m <p>
 *   0 ≤ eval out3 &lt; m <p>
 * <p>
 * Input Bounds: <p>
 *   arg1: [0x0 ~&gt; 0xffffffff] <p>
 *   arg2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg3: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg4: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   arg5: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 * Output Bounds: <p>
 *   out1: [0x0 ~&gt; 0xffffffff] <p>
 *   out2: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   out3: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   out4: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 *   out5: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_divstep(Box<Integer> out1, int[] out2, int[] out3, int[] out4, int[] out5, int arg1, final int[] arg2, final int[] arg3, final int[] arg4, final int[] arg5) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x1, x2, 0x0, (~arg1), 0x1);
  int x3 = (((x1).get() >>> 31) & ((arg3[0]) & 0x1));
  Box<Integer> x4 = new Box<Integer>((int)0);
  Box<Integer> x5 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x4, x5, 0x0, (~arg1), 0x1);
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x6, x3, arg1, (x4).get());
  Box<Integer> x7 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x7, x3, (arg2[0]), (arg3[0]));
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x8, x3, (arg2[1]), (arg3[1]));
  Box<Integer> x9 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x9, x3, (arg2[2]), (arg3[2]));
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x10, x3, (arg2[3]), (arg3[3]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x11, x3, (arg2[4]), (arg3[4]));
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x12, x3, (arg2[5]), (arg3[5]));
  Box<Integer> x13 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x13, x3, (arg2[6]), (arg3[6]));
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x14, x3, (arg2[7]), (arg3[7]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x15, x3, (arg2[8]), (arg3[8]));
  Box<Integer> x16 = new Box<Integer>((int)0);
  Box<Integer> x17 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x16, x17, 0x0, 0x1, (~(arg2[0])));
  Box<Integer> x18 = new Box<Integer>((int)0);
  Box<Integer> x19 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x18, x19, (x17).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[1])));
  Box<Integer> x20 = new Box<Integer>((int)0);
  Box<Integer> x21 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x20, x21, (x19).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[2])));
  Box<Integer> x22 = new Box<Integer>((int)0);
  Box<Integer> x23 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x22, x23, (x21).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[3])));
  Box<Integer> x24 = new Box<Integer>((int)0);
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x24, x25, (x23).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[4])));
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x26, x27, (x25).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[5])));
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x28, x29, (x27).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[6])));
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x30, x31, (x29).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[7])));
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x32, x33, (x31).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (~(arg2[8])));
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x34, x3, (arg3[0]), (x16).get());
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x35, x3, (arg3[1]), (x18).get());
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x36, x3, (arg3[2]), (x20).get());
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x37, x3, (arg3[3]), (x22).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x38, x3, (arg3[4]), (x24).get());
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x39, x3, (arg3[5]), (x26).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x40, x3, (arg3[6]), (x28).get());
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x41, x3, (arg3[7]), (x30).get());
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x42, x3, (arg3[8]), (x32).get());
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x43, x3, (arg4[0]), (arg5[0]));
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x44, x3, (arg4[1]), (arg5[1]));
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x45, x3, (arg4[2]), (arg5[2]));
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x46, x3, (arg4[3]), (arg5[3]));
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x47, x3, (arg4[4]), (arg5[4]));
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x48, x3, (arg4[5]), (arg5[5]));
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x49, x3, (arg4[6]), (arg5[6]));
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x50, x3, (arg4[7]), (arg5[7]));
  Box<Integer> x51 = new Box<Integer>((int)0);
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x51, x52, 0x0, (x43).get(), (x43).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x53, x54, (x52).get(), (x44).get(), (x44).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x55, x56, (x54).get(), (x45).get(), (x45).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x57, x58, (x56).get(), (x46).get(), (x46).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x59, x60, (x58).get(), (x47).get(), (x47).get());
  Box<Integer> x61 = new Box<Integer>((int)0);
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x61, x62, (x60).get(), (x48).get(), (x48).get());
  Box<Integer> x63 = new Box<Integer>((int)0);
  Box<Integer> x64 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x63, x64, (x62).get(), (x49).get(), (x49).get());
  Box<Integer> x65 = new Box<Integer>((int)0);
  Box<Integer> x66 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x65, x66, (x64).get(), (x50).get(), (x50).get());
  Box<Integer> x67 = new Box<Integer>((int)0);
  Box<Integer> x68 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x67, x68, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x51).get(), 0xffffffff);
  Box<Integer> x69 = new Box<Integer>((int)0);
  Box<Integer> x70 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x69, x70, (x68).get(), (x53).get(), 0xffffffff);
  Box<Integer> x71 = new Box<Integer>((int)0);
  Box<Integer> x72 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x71, x72, (x70).get(), (x55).get(), 0xffffffff);
  Box<Integer> x73 = new Box<Integer>((int)0);
  Box<Integer> x74 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x73, x74, (x72).get(), (x57).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x75 = new Box<Integer>((int)0);
  Box<Integer> x76 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x75, x76, (x74).get(), (x59).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x77 = new Box<Integer>((int)0);
  Box<Integer> x78 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x77, x78, (x76).get(), (x61).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x79 = new Box<Integer>((int)0);
  Box<Integer> x80 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x79, x80, (x78).get(), (x63).get(), 0x1);
  Box<Integer> x81 = new Box<Integer>((int)0);
  Box<Integer> x82 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x81, x82, (x80).get(), (x65).get(), 0xffffffff);
  Box<Integer> x83 = new Box<Integer>((int)0);
  Box<Integer> x84 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x83, x84, (x82).get(), (x66).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  int x85 = (arg4[7]);
  int x86 = (arg4[6]);
  int x87 = (arg4[5]);
  int x88 = (arg4[4]);
  int x89 = (arg4[3]);
  int x90 = (arg4[2]);
  int x91 = (arg4[1]);
  int x92 = (arg4[0]);
  Box<Integer> x93 = new Box<Integer>((int)0);
  Box<Integer> x94 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x93, x94, 0x0, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x92);
  Box<Integer> x95 = new Box<Integer>((int)0);
  Box<Integer> x96 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x95, x96, (x94).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x91);
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x97, x98, (x96).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x90);
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x99, x100, (x98).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x89);
  Box<Integer> x101 = new Box<Integer>((int)0);
  Box<Integer> x102 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x101, x102, (x100).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x88);
  Box<Integer> x103 = new Box<Integer>((int)0);
  Box<Integer> x104 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x103, x104, (x102).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x87);
  Box<Integer> x105 = new Box<Integer>((int)0);
  Box<Integer> x106 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x105, x106, (x104).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x86);
  Box<Integer> x107 = new Box<Integer>((int)0);
  Box<Integer> x108 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x107, x108, (x106).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), x85);
  Box<Integer> x109 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x109, (x108).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), 0xffffffff);
  Box<Integer> x110 = new Box<Integer>((int)0);
  Box<Integer> x111 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x110, x111, 0x0, (x93).get(), (x109).get());
  Box<Integer> x112 = new Box<Integer>((int)0);
  Box<Integer> x113 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x112, x113, (x111).get(), (x95).get(), (x109).get());
  Box<Integer> x114 = new Box<Integer>((int)0);
  Box<Integer> x115 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x114, x115, (x113).get(), (x97).get(), (x109).get());
  Box<Integer> x116 = new Box<Integer>((int)0);
  Box<Integer> x117 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x116, x117, (x115).get(), (x99).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x118 = new Box<Integer>((int)0);
  Box<Integer> x119 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x118, x119, (x117).get(), (x101).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x120 = new Box<Integer>((int)0);
  Box<Integer> x121 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x120, x121, (x119).get(), (x103).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x122 = new Box<Integer>((int)0);
  Box<Integer> x123 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x122, x123, (x121).get(), (x105).get(), ((x109).get() & 0x1));
  Box<Integer> x124 = new Box<Integer>((int)0);
  Box<Integer> x125 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x124, x125, (x123).get(), (x107).get(), (x109).get());
  Box<Integer> x126 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x126, x3, (arg5[0]), (x110).get());
  Box<Integer> x127 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x127, x3, (arg5[1]), (x112).get());
  Box<Integer> x128 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x128, x3, (arg5[2]), (x114).get());
  Box<Integer> x129 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x129, x3, (arg5[3]), (x116).get());
  Box<Integer> x130 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x130, x3, (arg5[4]), (x118).get());
  Box<Integer> x131 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x131, x3, (arg5[5]), (x120).get());
  Box<Integer> x132 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x132, x3, (arg5[6]), (x122).get());
  Box<Integer> x133 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x133, x3, (arg5[7]), (x124).get());
  int x134 = ((x34).get() & 0x1);
  Box<Integer> x135 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x135, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x7).get());
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x136, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x8).get());
  Box<Integer> x137 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x137, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x9).get());
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x138, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x10).get());
  Box<Integer> x139 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x139, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x11).get());
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x140, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x12).get());
  Box<Integer> x141 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x141, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x13).get());
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x142, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x14).get());
  Box<Integer> x143 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x143, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x15).get());
  Box<Integer> x144 = new Box<Integer>((int)0);
  Box<Integer> x145 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x144, x145, 0x0, (x34).get(), (x135).get());
  Box<Integer> x146 = new Box<Integer>((int)0);
  Box<Integer> x147 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x146, x147, (x145).get(), (x35).get(), (x136).get());
  Box<Integer> x148 = new Box<Integer>((int)0);
  Box<Integer> x149 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x148, x149, (x147).get(), (x36).get(), (x137).get());
  Box<Integer> x150 = new Box<Integer>((int)0);
  Box<Integer> x151 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x150, x151, (x149).get(), (x37).get(), (x138).get());
  Box<Integer> x152 = new Box<Integer>((int)0);
  Box<Integer> x153 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x152, x153, (x151).get(), (x38).get(), (x139).get());
  Box<Integer> x154 = new Box<Integer>((int)0);
  Box<Integer> x155 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x154, x155, (x153).get(), (x39).get(), (x140).get());
  Box<Integer> x156 = new Box<Integer>((int)0);
  Box<Integer> x157 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x156, x157, (x155).get(), (x40).get(), (x141).get());
  Box<Integer> x158 = new Box<Integer>((int)0);
  Box<Integer> x159 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x158, x159, (x157).get(), (x41).get(), (x142).get());
  Box<Integer> x160 = new Box<Integer>((int)0);
  Box<Integer> x161 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x160, x161, (x159).get(), (x42).get(), (x143).get());
  Box<Integer> x162 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x162, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x43).get());
  Box<Integer> x163 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x163, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x44).get());
  Box<Integer> x164 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x164, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x45).get());
  Box<Integer> x165 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x165, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x46).get());
  Box<Integer> x166 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x166, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x47).get());
  Box<Integer> x167 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x167, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x48).get());
  Box<Integer> x168 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x168, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x49).get());
  Box<Integer> x169 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x169, x134, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x50).get());
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x170, x171, 0x0, (x126).get(), (x162).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x172, x173, (x171).get(), (x127).get(), (x163).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x174, x175, (x173).get(), (x128).get(), (x164).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x176, x177, (x175).get(), (x129).get(), (x165).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x178, x179, (x177).get(), (x130).get(), (x166).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x180, x181, (x179).get(), (x131).get(), (x167).get());
  Box<Integer> x182 = new Box<Integer>((int)0);
  Box<Integer> x183 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x182, x183, (x181).get(), (x132).get(), (x168).get());
  Box<Integer> x184 = new Box<Integer>((int)0);
  Box<Integer> x185 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x184, x185, (x183).get(), (x133).get(), (x169).get());
  Box<Integer> x186 = new Box<Integer>((int)0);
  Box<Integer> x187 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x186, x187, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x170).get(), 0xffffffff);
  Box<Integer> x188 = new Box<Integer>((int)0);
  Box<Integer> x189 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x188, x189, (x187).get(), (x172).get(), 0xffffffff);
  Box<Integer> x190 = new Box<Integer>((int)0);
  Box<Integer> x191 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x190, x191, (x189).get(), (x174).get(), 0xffffffff);
  Box<Integer> x192 = new Box<Integer>((int)0);
  Box<Integer> x193 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x192, x193, (x191).get(), (x176).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x194 = new Box<Integer>((int)0);
  Box<Integer> x195 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x194, x195, (x193).get(), (x178).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x196 = new Box<Integer>((int)0);
  Box<Integer> x197 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x196, x197, (x195).get(), (x180).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x198 = new Box<Integer>((int)0);
  Box<Integer> x199 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x198, x199, (x197).get(), (x182).get(), 0x1);
  Box<Integer> x200 = new Box<Integer>((int)0);
  Box<Integer> x201 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x200, x201, (x199).get(), (x184).get(), 0xffffffff);
  Box<Integer> x202 = new Box<Integer>((int)0);
  Box<Integer> x203 = new Box<Integer>((int)0);
  fiat_P256_subborrowx_u32(x202, x203, (x201).get(), (x185).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x204 = new Box<Integer>((int)0);
  Box<Integer> x205 = new Box<Integer>((int)0);
  fiat_P256_addcarryx_u32(x204, x205, 0x0, (x6).get(), 0x1);
  int x206 = (((x144).get() >>> 1) | (((x146).get() << 31) & 0xffffffff));
  int x207 = (((x146).get() >>> 1) | (((x148).get() << 31) & 0xffffffff));
  int x208 = (((x148).get() >>> 1) | (((x150).get() << 31) & 0xffffffff));
  int x209 = (((x150).get() >>> 1) | (((x152).get() << 31) & 0xffffffff));
  int x210 = (((x152).get() >>> 1) | (((x154).get() << 31) & 0xffffffff));
  int x211 = (((x154).get() >>> 1) | (((x156).get() << 31) & 0xffffffff));
  int x212 = (((x156).get() >>> 1) | (((x158).get() << 31) & 0xffffffff));
  int x213 = (((x158).get() >>> 1) | (((x160).get() << 31) & 0xffffffff));
  int x214 = (((x160).get() & 0x80000000) | ((x160).get() >>> 1));
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x215, (x84).get(), (x67).get(), (x51).get());
  Box<Integer> x216 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x216, (x84).get(), (x69).get(), (x53).get());
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x217, (x84).get(), (x71).get(), (x55).get());
  Box<Integer> x218 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x218, (x84).get(), (x73).get(), (x57).get());
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x219, (x84).get(), (x75).get(), (x59).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x220, (x84).get(), (x77).get(), (x61).get());
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x221, (x84).get(), (x79).get(), (x63).get());
  Box<Integer> x222 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x222, (x84).get(), (x81).get(), (x65).get());
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x223, (x203).get(), (x186).get(), (x170).get());
  Box<Integer> x224 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x224, (x203).get(), (x188).get(), (x172).get());
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x225, (x203).get(), (x190).get(), (x174).get());
  Box<Integer> x226 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x226, (x203).get(), (x192).get(), (x176).get());
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x227, (x203).get(), (x194).get(), (x178).get());
  Box<Integer> x228 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x228, (x203).get(), (x196).get(), (x180).get());
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x229, (x203).get(), (x198).get(), (x182).get());
  Box<Integer> x230 = new Box<Integer>((int)0);
  fiat_P256_cmovznz_u32(x230, (x203).get(), (x200).get(), (x184).get());
  out1.set((x204).get());
  out2[0] = (x7).get();
  out2[1] = (x8).get();
  out2[2] = (x9).get();
  out2[3] = (x10).get();
  out2[4] = (x11).get();
  out2[5] = (x12).get();
  out2[6] = (x13).get();
  out2[7] = (x14).get();
  out2[8] = (x15).get();
  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).get();
  out4[1] = (x216).get();
  out4[2] = (x217).get();
  out4[3] = (x218).get();
  out4[4] = (x219).get();
  out4[5] = (x220).get();
  out4[6] = (x221).get();
  out4[7] = (x222).get();
  out5[0] = (x223).get();
  out5[1] = (x224).get();
  out5[2] = (x225).get();
  out5[3] = (x226).get();
  out5[4] = (x227).get();
  out5[5] = (x228).get();
  out5[6] = (x229).get();
  out5[7] = (x230).get();
}

/**
 * The function fiat_P256_divstep_precomp returns the precomputed value for Bernstein-Yang-inversion (in montgomery form). <p>
 * <p>
 * Postconditions: <p>
 *   eval (from_montgomery out1) = ⌊(m - 1) / 2⌋^(if ⌊log2 m⌋ + 1 &lt; 46 then ⌊(49 * (⌊log2 m⌋ + 1) + 80) / 17⌋ else ⌊(49 * (⌊log2 m⌋ + 1) + 57) / 17⌋) <p>
 *   0 ≤ eval out1 &lt; m <p>
 * <p>
 * Output Bounds: <p>
 *   out1: [[0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P256_divstep_precomp(int[] out1) {
  out1[0] = 0xb8000000;
  out1[1] = 0x67ffffff;
  out1[2] = 0x38000000;
  out1[3] = 0xc0000000;
  out1[4] = 0x7fffffff;
  out1[5] = 0xd8000000;
  out1[6] = 0xffffffff;
  out1[7] = 0x2fffffff;
}

}
